컴퓨터 구조 (1) > CPU 기본 개념

구조

image

CPU

산술 논리 연산 장치, 제어장치, 레지스터로 구성
인터럽트에 의해 메모리에 존재하는 명령어를 실행

커널이 프로그램을 메모리에 올려 프로세스로 만들면, CPU가 처리

제어장치

프로세스를 조작을 지시
입출력장치 간 통신을 제어하고 명력어들을 읽고 해석하며 데이터 처리를 위한 순서를 결정

레지스터

매우 빠른 임시기억장치
CPU와 직접 연결되어 있어 연산 속도가 메모리보다 수십 배에서 수백 배 까지 빠름
CPU 자체적으로 데이터를 저장하는 방법이 없어 레지시터를 사용

산술논리연살장치

덧셈, 뺼셈 같은 두 숫자의 산술 연살과 배타적 논리합, 논리곱 같은 논리 연산을 계산하는 디지털 회로

연산 처리 방식

  1. 제어장치가 메모리에 계산할 값을 로드 (추가로 레지스터에도 로드)
  2. 제어장치가 레지스터에 있는 값을 계산하라고 산술논리연산장치에 명령
  3. 제어장치가 계산된 값을 다시 레지스터에서 메모리로 계산한 값을 저장

Interrupt

어떤 신호가 들어왔을 때 CPU를 잠깐 정지시키는 것
자세한 내용

DMA(Direct Memory Access) Controller

컴퓨터의 메모리와 디스크 드라이브, 네트워크 어댑터, 사운드 카드와 같은 주변 장치 간의 데이터 전송을 관리하는 하드웨어 장치.
DMA 컨트롤러는 컴퓨터의 CPU의 개입 없이 주변 장치와 컴퓨터의 메모리 사이에서 직접 데이터를 전송할 수 있게 해준다.

DMA 컨트롤러가 데이터 전송을 처리하는 동안 CPU가 다른 작업을 수행하기 위해 자유로워지기 때문에 컴퓨터 시스템의 성능을 크게 향상시킬 수 있다.
소량의 데이터 전송과 관련된 오버헤드를 줄여 성능을 더욱 향상시킬 수 있습니다.

OS에 의하여 구현되어있거나 device dirver가 어디에서 어디로 데이터를 보낼것인지 구현되어있다. (데이터 길이 포함)
구현되어 있다면, CPU와 독립적으로 데이터 전송을 시작하고 완료할 수 있다.

Memory

전자회로에서의 개념은 데이터의 상태, 명령어 등을 기록하는 장치
CPU는 계산을 담당하고 (일꾼), Memory는 기억을 담당 (작업장)
작업장이 크면 클수록 물건을 많이 가져다 놓고 많은 일을 할 수 있듯이, Memory가 크면 많은 일을 동시에 할 수 있다

Timer

어떠한 작업에 대해 Deadline을 정하는 역할

Device Controller

IO Device의 작은 CPU를 뜻함