처리기 (Processor) 처리기는 컴퓨터 시스템에서 주요한 계산 및 제어 기능을 담당하는 하드웨어 구성 요소이다. 주로 중앙처리장치(Central Processing Unit, CPU)라고 불린다. GPU(Graphics Processing Unit)나 DSP(Digital Signal Processor)와 같은 처리 장치들도 프로세서라고 명칭할 수 있다. 처리기들은 때로는 운영체제에 의해 관리되기도 한다. 운영체제는 이 처리기들이 실행할 다음 작업에 대한 정보를 보내고 상태를 감시한다. 프로세서 역할 명칭 설명 명령어 실행 메모리에서 읽어온 명령어를 해독하고 실행하여 프로그램의 동작 제어 데이터 처리 연산 수행 및 데이터 처리 제어 프로그램 실행 흐름 제어, 분기와 반복 등 제어 흐름 수행 인터럽트..
입출력 구조 (I/O Structure) 컴퓨터는 여러 형태의 입출력장치를 가진다. 예를들면 키보드, 마우스, 하드디스크, SSD 등이 있고 다양한 장치들을 관리하기 위해 운영체제는 많은 부분들을 입출력장치를 관리하는데 할애하고 시스템에 신뢰성과 성능을 높인다. 컴퓨터 시스템은 공통 버스에 의해 연결된 여러 개의 장치 제어기와 CPU들로 구성된다. 그리고 각 장치 제어기는 특정 타입의 장치만 담당한다. 장치 제어기는 약간의 로컬 버퍼 저장장치와 특수 목적용 레지스터 집합으로 이루어진다. 이는 장치 제어기가 자신이 제어하는 주변장치와 로컬 버퍼 저장장치 사이의 데이터 전송을 하는데 사용된다. 통상적으로 운영체제는 각 장치 제어기마다 디바이스 드라이버를 가지고 있다. 디바이스 드라이버란, 장치 제어기의 동작..
레지스터 플로우 이전 글에서 CPU의 내부 구조에 대해서 알아보았고, 이번에는 레지스터가 동작하는 방식을 알아보려한다. 레지스터에 데이터가 인출되는 사이클과 실행되는 사이클을 간략하게 하면 다음과 같다. 프로그램 실행 버튼 클릭 운영체제 혹은 실행 환경에서 해당 프로그램의 실행 정보를 메모리에 적재 프로그램 명령어들의 메모리 위치를 포함하고 초기화 및 실행에 필요한 데이터 포함 운영체제 혹은 실행 환경에서 프로그램의 시작 지점에 해당하는 주소를 PC에 생성 및 설정 PC에서 명령어를 인출하여 MBR로 경유 MBR에서 IR에 명령어 저장 실행 사이클에서 제어 유니트로 보내져 해독 MAR은 CPU 내부 주소 버스와 시스템 주소 버스 사이에서 버퍼 역할 MBR은 데이터에 대하여 내부 데이터 버스와 시스템 데이..
CPU의 기능 CPU는 '프로그램 수행'이라는 컴퓨터의 중추적 기능을 수행한다. 이를 위해 CPU는 메모리에 저장되어 있는 프로그램 코드인 명령어들을 실행하고 이러한 명령어들을 수행하기 위하여 여러 세부적인 동작들을 순서대로 나열하여 진행한다. 명칭 설명 명령어 인출(Instruction fetch) 메모리로부터 명령어 읽기 명령어 해독(Instruction decode) 수행할 동작을 결정하기 위해 명령어 해독 데이터 인출(Data fetch) 명령어 실행을 위해 데이터가 필요한 경우, 메모리 혹은 I/O 장치에서 데이터를 읽기 데이터 처리(Data process) 데이터에 각 연산을 수행 데이터 저장(Data store) 결과 저장 ※ 1, 2번 동작은 모든 명령어의 공통 수행 과정이다. 하지만 3~..
- Total
- Today
- Yesterday
- 인터럽트
- 명령어
- 포인터
- 프로세스
- CPU
- New
- thread
- static_cast
- 수학
- 알고리즘
- 멀티스레드
- 초기화
- c++
- 스레드
- malloc
- dynamic_cast
- 게임수학
- 입출력
- 클래스
- 구조
- 크기
- 함수
- 레지스터
- 메모리
- 운영체제
- 할당
- 백준
- 상속
- 컴파일
- const
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |