코어
CPU 내 명령어를 실행하는 부품
- 멀티 코어 프로세서
- 코어가 여러 개 있는 CPU
스레드
- 하드웨어 스레드
- 하나의 코어가 동시에 처리하는 명령어 단위
- 논리 프로세서로도 불린다
- 멀티 스레드 프로세서
- 하나의 코어로 여러 개의 명령어를 동시에 처리하는 CPU
- 소프트웨어 스레드
- 하나의 프로그램에서 독립적으로 실행되는 단위
- 일반적으로 스레드라고 불린다
명령어 병렬 처리 기법
- ILP, Instruction - Level Parallelism
- 종류
- 명령어 파이프라이닝
- 동시에 여러 개의 명령어를 겹쳐 실행하는 기법
- 수퍼 스칼라
- 파이프라인을 여러 개 두어 명령어를 처리하는 기법
- 비순차적 명령어 처리
- OoOE, Out-of-Order Execution
- 비순차적으로 명령어를 처리하는 기법
- 명령어 파이프라이닝
- 파이프라인 위험
- 데이터 위험
- 명령어 간 데이터 의존성에 의해 발생하는 위험
- 제어 위험
- 분기 등으로 인한 프로그램 카운터의 갑작스러운 변화에 의해 발생하는 위험
- 분기 예측으로 위험 관리 가능
- 구조적 위험
- 서로 다른 명령어가 같은 CPU 부품을 사용하려할 때 발생하는 위험
- 자원 위험으로도 불린다
- 데이터 위험
명령어 집합 구조
- ISA, Instruction Set Architecture
- 명령어 집합(Instruction Set)으로도 불린다
- CPU의 언어
- 하드웨어가 소프트웨어를 어떻게 이해할지에 대한 약속
- CISC
- Complex Instruction Set Computer
- 가변 길이 명령어 사용
- 프로그램 내 명령어 수 적음
- 여러 클럭에 걸쳐 명령어 수행
- 파이프라이닝 어려움
- RISC
- Reduced Instruction Set Computer
- 고정 길이 명령어 사용
- 프로그램 내 명령어 수 많음
- 한 클럭 내외로 명령어 수행
- 파이프라이닝 쉬움
반응형
'Computer Science > Operating System' 카테고리의 다른 글
혼자 공부하는 운영체제 - 7. 보조기억장치 (0) | 2024.07.30 |
---|---|
혼자 공부하는 운영체제 - 6. 메모리 (0) | 2024.07.29 |
혼자 공부하는 운영체제 - 4. CPU (1) | 2024.07.27 |
혼자 공부하는 운영체제 - 3. 명령어 (0) | 2024.07.26 |
혼자 공부하는 운영체제 - 2. 데이터 (0) | 2024.07.25 |