2024. 10. 14. 18:12ㆍ[Node.js_6기] 스탠다드반
컴퓨터 부품은 보통 크게 5가지로 나뉜다. CPU, 주기억장치(RAM), 보조기억장치(HDD/SSD), I/O디바이스(모니터, 마우스 등), 메인보드. 코어 역할 어쩌고
1. CPU란?
컴퓨터의 부품은 보통 CPU, 주기억장치(RAM), 보조기억장치(HDD/SSD), I/O디바이스(모니터, 마우스 등), 메인보드 5가지로 크게 나뉜다. 이때 CPU(Central Processing Unit)는 중앙 처리 장치를 의미한다. 프로그램의 명령어를 해석하고 실행하는 역할을 하는 컴퓨터 시스템의 중심이 되는 핵심 요소이다.
CPU는 제어장치, 누산기, ALU, 레지스터로 구성되어 있다. ALU는 연산을 해주는 장치, 제어장치는 명령을 해석해주는 장치, 레지스터는 데이터를 저장하는 장치, 누산기는 중간에서 데이터를 전달해주는 장치라고 할 수 있다.
- 제어장치(Control Unit): CPU에서 프로그램의 명령어를 해석하고, 실행하는 부분이다. 제어 장치는 명령어 레지스터에서 현재 실행 중인 명령어를 가져와서, 해당 명령어를 해석하고, 이에 맞게 다른 구성 요소들을 제어한다.
- ALU(Arithmetic/Logic Unit): 산술 논리 장치는 CPU 내부에서 수치 연산과 논리 연산을 처리하는 부분이다. 산술 논리 장치는 두 개의 입력 신호를 받아서, 덧셈, 뺄셈, 곱셈, 나눗셈 등의 산술 연산을 처리하고, AND, OR, NOT 등의 논리 연산을 처리한다.
- 레지스터(Register): 레지스터는 CPU 내부에 저장되어 있는 소규모 메모리로, 데이터를 저장하거나 처리하는 데 사용된다. 레지스터는 CPU에서 가장 빠른 속도로 데이터를 처리할 수 있으므로, CPU의 속도와 성능에 큰 영향을 미친다.
- Cache Memory: 캐시는 CPU 내부에 존재하는 빠른 메모리로, CPU가 자주 사용하는 데이터나 명령어를 저장해 두는 역할을 한다. 캐시는 주 메모리보다 빠르지만, 저장 용량이 작으므로, 자주 사용되는 데이터나 명령어만 저장된다.
- 속도 : Register > Cache > RAM
- 저장용량 : RAM > Cache > Register
2. CPU 성능 향상을 위한 작업 방법
CPU에서 명령어가 실행되는 프로세스는 인출, 해석, 실행, 저장 순이다. 이때 CPU의 속도를 올리기 위해서 쓰레드 단위로 쪼개서 처리한다. 그 원리는 하기와 같다.
2 - 1. 파이프 라이닝
파이프라이닝은 한 가지 작업을 수행할 때 여러 단계의 작업이 필요한 경우, 이 단계들을 연속적으로 실행하여 단축시키는 기술을 말한다. 인출, 해석, 실행, 저장 등의 단계를 한 번에 하나씩 처리하는 것이 아니라, 아래와 같이 한 번에 여러 단계를 처리하여 실행시간을 단축시킨다. 한개의 코어에서 작업하는 방법이기 때문에 시간에 동기화(Sync) 되어있다는 특징이 있다.
2 - 2. 독립적인 병렬처리(Parallellism)
Parallellism은 한 번에 여러 작업을 수행하는 것을 말한다. 여러 개의 CPU 코어를 사용하여 병렬적으로 작업을 처리하는 것이 그 예이다. 이러한 기술은 동시에 여러 작업을 수행하므로, 실행 시간을 단축시키는 것이 가능하다. 병렬 방식으로 작업을 처리하기 때문에 시간에 동기화가 되어있지 않아도 된다는 특징(Async)이 있다.
'[Node.js_6기] 스탠다드반' 카테고리의 다른 글
프로세스와 스레드, 컨텍스트 스위칭 (0) | 2024.11.04 |
---|---|
메모리와 주소공간이란? (1) | 2024.10.17 |
OSI 7계층 자세히 알아보기 - 애플리케이션(응용 프로그램) 계층 (0) | 2024.09.27 |
OSI 7계층 자세히 알아보기 - 전송 계층 (2) | 2024.09.23 |
OSI 7계층 자세히 알아보기 - 네트워크 계층 (1) | 2024.09.09 |