전진하는 개발러

컴퓨터 구성요소 개념 정리 본문

CS/운영체제

컴퓨터 구성요소 개념 정리

어멘션 2023. 7. 13. 20:52
도서 '면접을 위한 CS 전공지식 노트' 의 참고하여 정리한 글입니다. 

❇️CPU(a.k.a 중심 관리자)

- 산술논리연산장치, 제어장치, 레지스터로 구성되어있음

- 커널이 프로그램(program)을 메모리에 올려서 프로세스(process)로 바꾸면 그 Process를 cpu가 실행한다.

- 인터럽트에 의해 커널모드로 바뀌면 메모리에 존재하는 명령어를 해석해서 실행함 

저장장치는 주기억장치(RAM), 보조기억장치(SDD, HDD, 플로피디스크 등)으로 구분된다.
'프로그램Program'은 '보조기억장치'에 저장될 때의 형식이고, 프로세스'Process'는 주기억장치(RAM)에 있을 때의 형식이다.

+) 참고✳️CPU의 구조 

더보기
  1. 제어 유닛 (Control Unit): 제어 유닛은 CPU 내에서 명령어의 해석과 실행을 조정하는 역할 담당. 주요 기능으로는 명령어를 인출하여 해석, 실행 순서를 제어하고, 다른 하드웨어 구성 요소와의 상호 작용을 조정한다.
  2. 산술 논리 장치 (Arithmetic Logic Unit, ALU): ALU는 CPU 내에서 산술 연산 (덧셈, 뺄셈 등)과 논리 연산 (AND, OR, NOT 등)을 수행합니다. ALU는 데이터를 처리하고 계산하는 중앙 부분이다. 
  3. 레지스터 (Registers): 레지스터는 CPU 내부에 위치한 작고 빠른 메모리 유닛으로, 데이터나 주소 등을 임시로 저장한다. 레지스터는 고속으로 액세스되며, 산술 연산, 논리 연산, 주소 계산 등에 사용된다.
  4. 캐시 메모리 (Cache Memory): 캐시 메모리는 CPU와 주기억장치 사이에 위치한 고속 메모리이다. 주기억장치로부터 데이터를 미리 가져와 저장해두고, CPU가 필요할 때 빠르게 액세스할 수 있도록 한다. 캐시 메모리는 CPU 성능 향상을 위해 사용된다.
  5. 버스 인터페이스 (Bus Interface): 버스 인터페이스는 CPU와 다른 하드웨어 간의 데이터 및 신호 전송을 관리한다. 데이터 버스, 주소 버스, 제어 버스 등이 포함되어 있으며, CPU와 주변장치 간의 통신을 가능하게 한다.

CPU는 이러한 구성 요소들이 조합되어 하나의 칩 또는 다중 칩으로 구현된다. 현대의 CPU는 고성능 및 병렬 처리를 위해 다중 코어 (Multi-core) 구조를 가지고 있으며, 이는 여러 개의 독립적인 프로세서 코어를 하나의 칩 안에 통합한 것을 의미한다. 이렇게 함으로써 CPU는 동시에 여러 작업을 처리하고 성능을 향상시킬 수 있다.

 

❇️DMA 컨트롤러(Direct Memory Access) (A.K.A CPU의 보조일꾼)

입출력 디바이스가 메모리에 직접 접근할 수 있도록 하는 하드웨어 장치로서,CPU의 부하를 막아준다! 

 

❇️디바이스 컨트롤러

컴퓨터와 연결되어 있는 입출력 디바이스에 연결되어있는 작은 CPU로서 동작한다.

디바이스 컨트롤러는 디바이스 개별로 하나씩 존재한다! 

 

 

 

+) DMA컨트롤러 VS 디바이스 컨트롤러

 

요약하자면, DMA 컨트롤러는 데이터 전송의 효율성을 높이기 위해 CPU의 개입 없이 데이터를 이동시키는 데 사용되는 컨트롤러이다. 반면에 디바이스 컨트롤러는 컴퓨터와 연결되어 있는 IO디바이스들의 작은 CP디바이스와  컴퓨터 시스템 간의 인터페이스 역할을 한다