반응형
1. CPU의 구성에 대해 설명하시오
- CPU는 명령어를 해석하여 실행하는 장치이며 핵심 요소라 볼 수 있다. 산술논리 연산장치, 제어장치, 레지스터로 구성되며 이것들이 협업하여 작업을 처리한다.
1) 산술논리 연산장치
데이터를 연산하는 장치로 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 산술연산, AND, OR과 같은 연산 수행
2) 제어장치
작업을 지시하는 부분
3) 레지스터
데이터를 임시로 보관하는 곳
-> 왜? 임시로 보관해야 할까?
-> 연산을 하기 위해 필요한 데이터를 CPU로 가져와 임시로 보관해야 함 (저장되어 있는 값을 CPU로 가져와서 계산해야 하는데 계산할 때 둘 곳이라고 생각!)
2. 폰노이만 구조의 가장 중요한 특징을 설명하시오
CPU, 메모리, 입출력장치, 저장장치가 버스로 연결되어 있는 구조 -> 핵심은 CPU, 메모리, 입출력장치, 저장장치와 같은 구조를 가진다는 것"모든 프로그램은 메모리에 올라와야 실행할 수 있다"
https://m.hanbit.co.kr/channel/series/series_view.html?cms_code=CMS4316945379&hcs_idx=23
3. 버스의 종류를 나열하시오
버스(시스템 버스)는 CPU와 메모리, 주변장치 간에 데이터를 주고받을 때 사용
1) 제어버스 (양방향)
다음에 어떤 작업을 할지 지시하는 제어신호가 오고감 => 데이터, 주소 버스를 제어하기 위해 제어신호들을 전송하는 통로
2) 주소버스 (단방향)
메모리의 데이터를 읽거나 쓸 때 어느 위치에서 작업할 것인지 알려주는 위치 정보가 오고감
3) 데이터 버스 (양방향)
제어버스가 신호를 보내고 주소 버스가 위치 정보를 전달하면 데이터가 데이터 버스에 실려 목적지로 이동
4. 단방향 버스에 대해 설명하시오
한 방향으로만 신호를 전송할 수 있는 버스
주소버스가 단방향인 이유는 주소를 표현하는 신호가 CPU에서 다른 장치로 향하지만 반대로 다른장치에서 CPU로는 주소 정보를 전송할 필요가 없기 때문
데이터버스는 데이터를 주고 받아야 하기 때문에 양방향 버스, 제어버스는 읽기/쓰기 동작을 모두 수행하기 때문에 양방향 버스이다.
5. 다음에 실행할 명령어의 주소를 가지고 있는 레지스터는 무엇인가?
프로그램 카운터(PC)
01행을 처리 후 02행을 처리해야하기 때문에 PC가 필요함
다음에 실행할 명령어의 주소를 기억하고 있다가 제어장치에 알려줌
6. 다음에 실행할 명령어를 보관하는 레지스터는 무엇인가?
명령어 레지스터(IR)
7. 메모리 주소를 보관하는 레지스터는 무엇인가?
주소 레지스터(AR)
데이터 또는 명령어가 저장된 메모리의 주소는 주소 레지스터에 저장된다.
8. 메모리에 저장할 데이터나 메모리에서 가져온 데이터를 임시로 보관하는 레지스터는 무엇인가?
데이터 레지스터(DR)
메모리에서 가져온 데이터를 임시로 보관할 때 사용
CPU에 있는 대부분의 레지스터는 데이터 레지스터 => 일반 레지스터 or 범용 레지스터라 부름
9. 주소 버스와 연결되어 있는 레지스터는 무엇인가?
메모리 주소 레지스터(MAR)
10. 데이터 버스와 연결되어 있는 레지스터는 무엇인가?
메모리 버퍼 레지스터(MBR)
11. 프로그램을 보호하기 위해 사용하는 두 가지 레지스터는 무엇인가?
경계 레지스터, 한계 레지스터
12. 속도 차이가 나는 두 장치 사이에서 속도를 완화하는 장치를 무엇이라고 통칭하는가?
경계 레지스터, 한계 레지스터
13. 응용 프로그램과 프린터 사이에서 속도 차이를 완화하는 소프트웨어를 무엇이라고 하는가?
스풀
CPU와 입출력장치가 독립적으로 동작하도록 고안된 소프트웨어 버퍼
버퍼와 다른점? -> 버퍼는 프로그램들이 버퍼를 공유함, 스풀러는 프로그램 간에 배타적
14. 부팅 시 운영체제를 메모리로 가져오기 위해 사용하는 작은 프로그램은 무엇인가?
부트스트랩
시스템의 부팅을 도와주는 제일 먼저 실행되는 코드
15. 속도가 빠르고 값이 비싼 저장장치를 CPU 가까운 쪽에 두고, 값이 싸고 용량이 큰 저장장치를 반대쪽에 배열하는 방식을 무엇이라고 하는가?
저장장치 계층 구조
16. 작업의 효율성을 높이기 위해 CPU가 입출력 관리자에게 입출력 작업을 요청하면 작업을 마친 입출력 관리자는 CPU에 무엇을 보내는가?
인터럽트
프로세스 실행 도중 예기치 않은 상황(키보드입력, 클릭 등등..)이 발생할 때 발생한 상황을 처리한 후 실행 중인 작업으로 복귀하는 것 -> 정상적인 CPU 프로그램 실행을 방해함
17. CPU 도움 없이도 메모리를 사용할 수 있도록 입출력 관리자에게 주는 권한을 무엇이라고 하는가?
직접 메모리 접근
특정 하드웨어 하위 시스템이 CPU와 독립적으로 메인 시스템 메모리에 접근할 수 있게 해주는 컴퓨터 시스템의 기능
18. CPU와 입출력 관리자가 서로 다른 메모리 영역을 사용하는 기법을 무엇이라고 하는가?
메모리 매핑 입출력
마이크로프로세서(CPU)가 입출력 장치를 액세스할 때, 입출력과 메모리의 주소 공간을 분리하지 않고 하나의 메모리 공간에 취급하여 배치하는 방식
19. CPU가 병렬 처리를 지원하지 않을 때 소프트웨어적으로 병렬 처리를 하는 기법을 무엇이라고 하는가?
VLIW 기법
CPU가 병렬처리를 지원하지 않을 경우 소프트웨어적으로 병렬 처리를 하는 방법
동시에 수행할 수 있는 명령어들을 컴파일러가 추출하고 하나의 명령어로 압축하여 실행함
심화문제 --
01. 컴퓨터에서 클록이 하는 역할을 설명하시오.
CPU의 속도와 관련된 단위 => 클록이 CPU가 작업할 때 일정한 박자를 만들어냄
클록이 일정간격을 틱을 만들면 거기에 맞춰 CPU 안의 모든 구성 부품이 작업을 함
02. 프로그램 카운터 레지스터의 역할을 설명하시오.
다음에 어떤 명령어를 처리해야할 지 -> 다음에 실행할 명령어의 주소를 기억하고 있다가 제어장치에 알려줌
03. 제어 버스, 주소 버스, 데이터 버스에 대해 설명하시오.
제어버스: 다음에 어떤 작업을 할지 지시하는 신호가 오고감
주소버스: 메모리의 데이터를 읽거나 쓸 때 어느 위치에서 작업할 것인지 알려주는 위치 정보가 오고감
데이터 버스: 데이터 버스에 데이터가 실려 목적지까지 이동
04. 휘발성 메모리와 비휘발성 메모리를 비교하여 설명하시오.
휘발성 메모리: DRAM(동적 램), SRAM(정적 램) -> 전력이 끊기면 데이터가 사라짐
비휘발성 메모리: 플래시 메모리, FRAM, PRAM -> 전력이 끊겨도 데이터가 유지됨
05. DDR SDRAM에 대해 설명하시오.
CPU와 램의 속도차이 완화, SDRAM의 대역폭을 늘려 데이터 입출력 속도를 빠르게 한 것
클록틱 한번에 2개의 워드 저장
반응형
'Computer Science > Operating System' 카테고리의 다른 글
[OS] CPU 스케줄링 (0) | 2023.12.13 |
---|---|
[OS] Code, Data, Heap, Stack (코드, 데이터, 힙, 스택) (0) | 2023.02.15 |
Chapter 1. UNIX System Overview (0) | 2022.03.05 |