[CS STUDY] 컴퓨터의 요소

SeHoony·2022년 5월 4일
1

CS

목록 보기
1/1

1. CPU(Central Processing Unit)

: 산술논리연산장치, 제어장치, 레지스터로 구성
: 메모리에 존재하는 명령어를 해석하여 실행하는 일꾼
: OS -> kernal* -> program -> memory -> process -> CPU가 처리

* Kernal

: 운영체제의 핵심이 되는 컴퓨터 프로그램
: 시스템의 모든 것을 통제
: 애플리케이션 -> kernal -> CPU, Memory, Devices

1-1. 제어장치(Control Unit)

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

1-2. 레지스터(Register)

: CPU 내 매우 빠른 임시기억장치
: 레지스터를 거쳐 데이터 전달 (CPU는 자체적으로 데이터를 저장할 방법이 없음)

1-3. 산술논리연산장치

: 산술 연산, 논리 연산을 계산하는 디지털 회로

1-4. CPU 연산 처리

1) 제어장치메모리레지스터에 계산할 값을 로드
2) 제어장치가 레지스터에 있는 값을 산술논리연산장치에 계산하라고 명령
3) 제어장치가 계산 값을 레지스터에서 메모리로 이동시켜 저장

1-5. 인터럽트

: 특정 신호가 들어오면 CPU를 잠시 정지시키는 것
: IO 디바이스에 의한 인터럽트, 산술연산에서의 인터럽트(0으로 나누기), 프로세스 오류 등
: 인터럽트 발생 시, 인터럽트 핸들러 함수 발동

1-5-1. 하드웨어 인터럽트

: OS의 처리를 요하는 상황을 알리기 위한 전기적 신호를 사용하여 구현
[예시]
1) 기계검사 인터럽트 : 프로그램 실행 중 정전 또는 컴퓨터 내 기계적 문제 발생 시
2) 외부 인터럽트 : 오퍼레이터나 타이머에 의해 의도적으로 프로그램 중단
3) 입출력 인터럽트 : 입출력의 종료나 오류의 의해 CPU의 기능이 요청되는 경우
4) 프로그램검사 인터럽트 : 프로그램 실행 중 보호된 기억공간에 접근하거나 불법적인 명령 수행과 같은 프로그램 문제 발생

1-5-2. 소프트웨어 인터럽트(트랩)

: 외부가 아닌 CPU 내부에서 자신이 실행한 명령 또는 CPU 명령 실행에 관련된 모듈이 변화하는 경우

2. DMA(Direct Memory Access) 컨트롤러

: 하드웨어 하위 시스템(I/O 디바이스, 그래픽 카드, 네트워크 카드, 사운드 카드 등)이 메모리에 직접 접근할 수 있도록 하는 하드웨어 장치
: 전송할 데이터가 많으면 CPU의 부담이 커진다. 이러한 문제를 해결하는데 DMA가 사용된다.
: 장치 컨트롤러가 데이터의 한 블록을 이동시키는데 이 과정에서 CPU의 개입이 필요없게 된다.
: CPU에서는 데이터 이동이 완료되었다는 한 번의 인터럽트만 발생.
: 데이터가 전송되는 동안 CPU는 다른 작업 가능
: 하나의 작업을 CPU, DMA가 동시에 하는 것을 방지

3. 메모리

: 데이터나 상태, 명령어 등 기록하는 장치(RAM(Random Access Memory))
: CPU는 계산, Memory는 기억 담당

4. 타이머

: 특정 프로그램에 작업이 끝나야 하는 시간 제한을 설정하는 역할
: (시간이 많이 걸리는 프로그램 작동 시 제한을 걸기 위해)

5. 디바이스 컨트롤러

: 컴퓨터와 연결되어 있는 I/O 디바이스들의 작은 CPU 의미

profile
두 발로 매일 정진하는 두발자, 강세훈입니다. 저는 '두 발'이라는 이 단어를 참 좋아합니다. 이 말이 주는 건강, 정직 그리고 성실의 느낌이 제가 주는 분위기가 되었으면 좋겠습니다.

0개의 댓글