01. 정보시스템의 범위 및 이해

2024. 1. 13. 17:36
728x90

 [ CPU 구조 ] 

 

CPU (Central Processing Unit, 중앙처리장치)

: 입력 장치로부터 자료를 받아 연산하고 그 결과를 출력장치로 내보내는 과장을 제어/조정하는 핵심 장치

  • CPU 구성요소
구성요소 설명
ALU (연산 장치) 산술연산 (+, -, *, /) , 논리연산(AND, OR, NOT, XOR) 수행
Register (레지스터) - CPU 내부의 소량의 데이터, 임시 데이터 등 중간 결과를 일시적으로 기억해두는 영역
- 컴퓨터 기억장치 중 접근 속도 가장 빠름
Control Unit (제어 장치) 명령어 해석 및 실행시키는 제어 신호들을 발생시킴
내부 CPU 버스 ALU와 register 간의 데이터 이동을 위한 경로

 

  • 내부 레지스터 (register) 종류
종류 주요 기능
PC (Program Counter) 다음에 수행할 명령어가 저장된 주기억장치의 번지를 지정
MAR (Memory Address Register) 주기억장치에 접근하기 위한 주기억장치의 번지를 기억
MBR (Memory Buffer Register) 주기억장치에 입/출력할 자료를 기억
IR (Instruction Register) 주기억장치에서 인출한 명령코드를 기억

 

  • 버스 시스템 (Bus System)
    • Bus : 시스템에 여러 장치를 공유하여 데이터, 주소, 제어정보를 전달하는 전송 라인
종류 설명
데이터 버스 (Data Bus) 시스템 컴포넌트 간 처리 데이터를 전송하기 위한 용도
주소 버스 (Adress Bus) - 기억장소의 위치나 장치 식별자를 지정하는 라인
- 라인 bit 수에 따라 접속 가능한 장치 용량이 결정됨
제어 버스 (Control Bus) CPU <->  기억장치 또는 I/O 장치 사이의 제어 신호를 전송하는 라인

 

  • CPU 명령 실행 주기 (Instruction Cycle)
    • 하나의 명령어 실행이 끝난 후, 다음 명령어의 수행이 시작되어 끝날때까지 걸리는 시간(주기)
    • 구성 요소
단계 설명
인출 (Instruction Fetch) 메모리에서 데이터를 load 하여 CPU의 register에 적재하는 과정
간접 (Indirect) 메모리를 참조할 때 간접주소 방식을 사용하는 경우에 실행
(*간접주소 : CPU가 메모리를 참조했을떄, 메모리에 data가 아닌 주소가 존재하여 메모리 내에서 한 번 더 조회하여 데이터 얻는 방식)
실행 (Execution) 명령어와 데이터를 통해 CPU가 산술/논리 연산 수행
인터럽트 (Interrupt) - 컴퓨터 작동 중 문제가 발생한 경우, 업무처리가 계속될 수 있도록 하는 컴퓨터 운영체제의 기능
1. SVC H/W interrupt : 기계착오 / 외부 인터럽트, 입출력 인터럽트 등
2. S/W interrupt : CPU의 명령 실행과 관련된 모듈이 변화하는 경우 발생

 

 

 [ Memory System ] 

 

기억장치 계층구조

  보조기억장치 주기억장치 (memory) 캐시 (cache) 레지스터 (register)
기억장치 용량 증가     감소
비트당 기억장치 비용 감소     증가
기억장치 속도 감소     증가

 

 

캐시 메모리

: 중앙처리장치(memory)가 읽어 들인 데이터 (명령,프로그램)들로 채워지는 버퍼 형태의 고속 기억장치

  • CPU 와 memory 의 속도 차이를 극복하기 위해 둘 사이에 존재하는 고속 버퍼 메모리
  • 캐시 메모리 매핑 방식 (검색필요)

1. 직접 사상 (Direct Mapping)

  • main memory 를 여러 구역으로 분할하여 매핑
  • 장점 : 매핑 절차가 단순하고 빠름
  • 단점 : 이미 매핑된 블록에 매핑되면 새로운 데이터로 교체됨

2. 연관 사상  (Associate Mapping)

  • main memory 의 각 블록이 캐시의 아무 슬롯에 적재 가능
  • 장점 : 지역성 높은 접근 --> 캐시 적중률 높음
  • 단점 : 구현 하드웨어가 복잡하여 구현 비용 상승

3. 집합 연관 사상 (Set Associate Mapping)

  • 직접사상/연관사상 절충 방식 (캐시 : 메모리 = M : 1)
  • 장점 : 두 사상의 장점 모두 수용
  • 단점 : 캐시 Fin/Fout 발생 증가 & 구현 비용 증가

 

캐시 메모리 관리 방식

: CPU가 원하는 데이터가 캐시 메모리에 있도록 하는것 (캐시에 없으면 주메모리에서 가져옴)

  • 캐시 메모리 호출 방식
    1. Demand Fetch : 필요 시 캐시를 그때 인출
    2. Pre-Fetch : 예상되는 블록을 미리 패치해둠
  • 가상 메모리 시스템 : 주기억장치의 용량이 너무 적어서 보조기억장치 (디스크 등)를 주기억장치처럼 사용하여 공간 확대하는 관리 방법 (= 물리적 메모리 크기의 한계를 극복)
    • 가상 메모리 관리 단위
      • Page : 가상 기억장치 상에서 동일한 크기의 최소 논리 분할 단위로 나눈 것
      • segment : 사용자 주소 공간을 용도별로 논리적 단위로 나눈 것
  Paging 기법 Segment 기법
할당 고정 (static) 분할 가변 (dynamic) 분할
적재 요구한 page만 일부 적재 프로그램 전체 적재
관점 메모리 관리 측면 파일 관리 측면
장점 - 요구 page 만 로드됨
- 외부 단편화 해결
- 교체시간 최소
- 사용자 관점
- 내부 단편화 해결
- 개발에 용이함 (코드, 데이터 공유)
단점 - 내부 단편화 (fragmentation) 발생
- thrashing, 잦은 디스크 I/O 유발
- 외부 단편화 발생
- 메인 메모리가 커야함

 

  • 가상 메모리 관리 정책
  • 할당 정책 (Allocation Policy)

 [ I/O 인터페이스 ] 

  • DMA (Direct Memory Access) : CPU 개입 없이 I/O 장치와 기억장치 사이의 데이터를 전송하는 접근방식
    • CPU 의 간섭이 없고, 속도가 빠름
728x90