기본 미션
1. P.125 확인 문제 2번
문제
설명에 맞는 레지스터를 보기에서 찾아 빈칸을 채워보세요
[프로그램 카운터, 명령어 레지스터, 플래그 레지스터, 범용 레지스터]
- (1): 연산 결과 혹은 CPU 상태에 대한 부가 정보를 저장하는 레지스터
- (2): 메모리에서 가져올 명령어의 주소를 저장하는 레지스터
- (3): 데이터와 주소를 모두 저장할 수 있는 레지스터
- (4): 해석할 명령어를 저장하는 레지스터
정답
(1) 플래그 레지스터
(2) 프로그램 카운터
(3) 범용 레지스터
(4) 명령어 레지스터
해설
반드시 알아야 할 레지스터
- 프로그램 카운터 (PC)
메모리에서 가져올 명령어의 주소 저장
(== 명령어 포인터) - 명령어 레지스터
메모리에서 읽어 들인 명령어를 저장하는 레지스터
제어장치는 명령어 레지스터 속 명령어를 받아들이고, 해석한 뒤 제어 신호를 내보냄 - 메모리 주소 레지스터
메모리의 주소를 저장하는 레지스터
CPU가 읽어 들이고자 하는 주소 값을 주소 버스로 보낼 때 사용 - 메모리 버퍼 레지스터
메모리와 주고 받을 값(데이터, 명령어)을 저장하는 레지스터
메모리에 쓰고 싶은 값, 전달받은 값 저장
데이터 버스로 값을 주고 받을 때 사용 - 범용 레지스터
다양하고 일반적인 상황에서 자유롭게 사용하는 레지스터 - 플래스 레지스터
연산 결과, CPU 상태에 대한 부가 정보 등을 저장하는 레지스터 - 스택 포인터
스택 주소 지정 방식에 사용되는 레지스터 - 베이스 레지스터
변위 주소 지정 방식에 사용되는 레지스터
2. P.155 확인 문제 4번
문제
다음 그림은 멀티코어 CPU를 간략하게 도식화한 그림입니다. 빈칸에 알맞은 용어를 써 넣으세요.
정답
코어
해설
코어: CPU 내부에서 명령어를 실행하는 부품
오늘날의 CPU는 명령어를 실행하는 여러 개 포함하는 부품으로 범위가 확대되었다.
이전 CPU 정의인 명령어를 실행하는 부품을 오늘날 '코어'라고 부른다.
선택 미션
Ch.05 (05-1) 코어와 스레드, 멀티 코어와 멀티 스레드의 개념을 정리하기
[혼공 컴운] chapter 05. CPU 성능 향상 기법 (tistory.com)
코어와 멀티코어
클럭 속도를 높이는 방식 외에 CPU의 성능을 높이는 방법
-> CPU의 코어, 스레드 수 늘리기
> 코어
CPU 내부에서 명령어를 실행하는 부품
> 멀티코어 CPU
(== 멀티코어 프로세서)
CPU 내에 명령어를 처리하는 일꾼이 여러 명 있는 것
CPU 안에 코어가 몇 개 포함되어 있는지에 따라 싱글코어, 듀얼 코어 등으로 나뉨
그러나 CPU 코어수와 연산 속도는 비례하지 않음
처리할 연산이 적절하게 분배되어야만 한다.
=> 코어마다 처리할 명령어들을 얼마나 적절하게 분배하느냐가 연산 속도에 큰 영향을 미친다
스레드와 멀티스레드
- 스레드: 실행 흐름의 단위
- 하드웨어적 스레드
- 소프트웨어적 스레드
> 하드웨어적 스레드
하나의 코어가 동시에 처리하는 명령어 단위
- 멀티스레드 프로세서 (== 멀티스레드 CPU)
하나의 코어로 여러 명령어를 동시에 처리하는 CPU - 하이퍼스레딩
인텔의 멀티스레드 기술하나의 프로그램에서 독립적으로 실행되는 단위 - > 소프트웨어적 스레드
1코어 1 스레드 CPU는 여러 스레드로 만들어진 프로그램을 실행할 수 있다.
-> 1코어 1 스레드 : 하드웨어적 스레드
-> 여러 스레드로 만들어진 프로그램: 소프트웨어적 스레드
> 멀티스레드 프로세서
하나의 코어로 여러 명령어를 동시에 처리하는 CPU
하나의 명령어를 처리하기 위해 꼭 필요한 레지스터를 여러 개 가지고 있으면 된다
(프로그램 카운터, 스택 포인터, 데이터 버퍼 레지스터, 데어터 주소 레지스터)
- 논리프로세서
(== 하드웨어 스레드)
프로그램 입장에서 하드웨어 스레드는 '한 번에 하나의 명령어를 처리하는 CPU'와 다름없음
2 코어 4 스레드는 한 번에 4개의 명령어를 처리할 수 있지만, 프로그램 입장에서는 한 번에 하나의 명령어를 처리하는 CPU가 4개인 것처럼 보임
- 코어: 명령어를 실행할 수 있는 하드웨어 부품
- 스레드: 명령어를 실행하는 단위
- 멀티코어 프로세서: 명령어를 실행할 수 있는 하드웨어 부품이 CPU 안에 2개 이상 있는 CPU
- 멀티스레드 프로세서: 하나의 코어로 여러 개의 명령어를 동시에 실행할 수 있는 CPU
'cs > [OS] 혼자 공부하는 컴퓨터 구조 + 운영체제' 카테고리의 다른 글
[혼공컴운] chatper 07. 보조기억장치 (2) | 2024.01.21 |
---|---|
[혼공컴운] chatper 06. 메모리와 캐시 메모리 (0) | 2024.01.21 |
[혼공 컴운] chapter 05. CPU 성능 향상 기법 (0) | 2024.01.12 |
[혼공컴운] chapter 04. CPU의 작동 원리 (2) | 2024.01.10 |
[혼공학습단 11기] 혼공컴운 1주차 미션 (2) | 2024.01.05 |