클럭
컴퓨터는 클럭 신호에 맞추어 작동한다. 클럭 속도가 높아지면 CPU는 명령어 사이클을 더 빠르게 반복하게 될 것이다.
즉 1초에 몇번의 클럭이 발생하는지가 중요한 것이다.
클럭 속도 단위는 헤르츠이다. 1초에 100번의 클럭이 있다면 100헤르츠 인 셈이다.
이렇다 한들 무작정 클럭을 높히게 되면 과열이 일어나 처리하기 어려워진다.
코어 & 멀티 코어
현대적인 CPU의 개념은 조금 바뀌었다. 가령 CPU에는 여러개의 코어가 들어가기 시작했다. 코어란 일을 처리하는 부품이다. 즉 한 CPU에는 일을 처리할 여러 코어들이 들어가게 생기게 되었다.
코어도 클럭과 마찬가지로 무작정 많은 것이 좋은 상황이 아니다. 적절한 코어 개수가 적절한 일의 분배를 하였을 때 최상의 효율을 나타낸다.
스레드 & 멀티 스레드
하드웨어적 스레드
하나의 코어가 동시에 처리하는 명령어 단위를 뜻한다.
이를 멀티스레드 프로세서 또는 멀티스레드 CPU라고 한다.
소프트웨어적 스레드
하나의 프로그램에서 독립적으로 실행되는 단위를 의미한다.
앞서 말한 두 스레드 관점으로 보면 1코어 1스레드 CPU도 스레드를 수십 개 실행 할 수 있다라는 말이 와 닿을 것이다.
비록 하드웨어적 스레드가 1개이더라도 여러 프로그램을 동시에 사용할 수 있다.
하드웨어 스레드가 가능한것은 하나의 코어에 하나의 명령어를 실행시킬 수 있는 레지스터 세트를 여러개 두는 것이다.
ALU와 제어장치가 예로 두개의 레지스터 세트에서의 명령어 처리를 담당할 수 있다면 동시에 두개의 명령어를 실행 할 수 있는 것이다.
'CS > 컴퓨터 구조&운영체제' 카테고리의 다른 글
[컴퓨터 구조 &운영체제] 8. CISC & RISC (0) | 2024.05.07 |
---|---|
[컴퓨터 구조 &운영체제] 7.명령어 병렬 처리 기법 (0) | 2024.05.07 |
[컴퓨터 구조 &운영체제] 5.인터럽트 (0) | 2024.04.29 |
[컴퓨터 구조 &운영체제] 4.CPU (1) | 2024.04.25 |
[컴퓨터 구조 & 운영체제] 3.명령어 (0) | 2024.04.24 |