CS/운영체제_[교재]그림으로 배우는 구조와 원리 운영체제

Chapter01 컴퓨터 시스템의 소개

Jedy_Kim 2021. 8. 23. 19:35
728x90

요약

1. 컴퓨터 시스템의 구성 

 컴퓨터 시스템은 프로세서, 메모리(기억장치), 주변장치의 하드웨어와 명령어로 작성한 프로그램인 소프트웨어로 구성된다. 이런 구성요소는 컴퓨터의 주 기능인 프로그램을 실행하려고 버스로 상호 연결되어 있다.

 

2. 프로세서의 개념

 프로세서(CPU, 중앙처리장치)는 컴퓨터 하드웨어 구성 요소 중 운영체제와 가장 밀접한 부분으로, 컴퓨터의 모든 장치의 동작을 제어하고 연산을 수행한다.

 

3. 프로세서의 구성

 프로세서는 연산장치와 제어장치, 레지스터로 구성되며, 내부 버스로 연결되어 있다. 보통은 제어와 데이터 처리를 담당하며, 레지스터로 구성된다.

 

4. 레지스터

 레지스터는 용도에 따라 전용과 범용 레지스터로 구분하고, 저장하는 정보의 종류에 따라 데이터 레지스터, 주소 레지스터, 상태 레지스터로 세분화 한다. 또 저장된 정보의 변경 여부에 따라 사용자 가시 레지스터와 사용자 불가시 레지스터로 구분한다.

 

5. 메모리 종류

 속도는 느리나 용량이 큰 자기디스크, 광디스크, 자기테이프 등 보조기억장치, 프로세서 외부에 있으면서 프로세서에서 수행할 프로그램과 데이터를 저장하거나 프로세서에서 처리한 결과를 저장하는 메인 메모리, 프로세서 내부나 외부에 있으면서 처리 속도가 빠른 프로세서와 상대적으로 속도가 느린 메인 메모리의 속도 차이를 보완하는 고속 버퍼의 캐시, 속도는 가장 빠르나 용량이 매우 작은 레지스터 등이 있다.

 

6. 메모리 계층 구조

 메모리는 컴퓨터 성능과 밀접하여 사용자는 당연히 크고 빠르며 비용이 저렴한 메모리를 요구한다. 여러 계층의 메모리를 연결하여 비용, 속도, 용량, 접근시간 등을 상호 보완한 계층적 메모리 구조를 메모리 계층 구조라고 한다.

 

7. 시스템 버스

 시스템 버스는 하드웨어를 물리적으로 연결하여 서로 데이터를 주고받을 수 있게 하는 통로이다. 컴퓨터 내부의 다양한 신호(데이터 입출력 신호, 프로세서 상태 신호, 인터럽트 요구와 허가 신호, 클록신호 등)를 시스템 버스로 전달한다. 시스템 버스는 기능에 따라 데이터 버스, 주소 버스 제어 버스로 구분한다.

 

8. 주변장치

 주변장치는 프로세서와 메인 메모리를 제외한 나머지 하드웨어 구성 요소이다. 크게 입력장치, 출력장치, 저장장치로 구분한다.

 

9. 명령어 구조

 명령어는 사용자가 원하는 연산과 오퍼랜드, 처리 순서를 프로세서에 지시하는 것이다. 연산부호와 명령어가 처리할 데이터, 데이터가 저장된 레지스터나 메모리 주소인 피연산자로 구성된다.

 

10. 명령어 실행

 컴퓨터 시스템의 메모리에 보관한다. 한 번에 한 개씩 프로세서로 전송하면서 해석/실행한다. 명령어는 명령어 인출과 명령어 실행 주기의 반복 처리로 실행한다. 명령어 실행 사이클은 인출 사이클, 간접 사이클, 실행 사이클, 인터럽트 사이클로 구성된다.

 

11. 인터럽트

 인터럽트는 현재 실행 중인 프로그램의 수행을 연기하고 다른 프로그램의 수행을 요구하는 명령이다. 시스템의 처리 효율성을 향상시키며, 프로그램이 실행 순서를 바꿔 가면서 처리하여 다중 프로그래밍에 사용한다.

 

연습문제

1. 컴퓨터 내부에서 프로게서 메모리 사이의 정보 전송에 사용하는 통로는?

1. 버스
2.레지스터
3.블록
4.보조기억 장치

 

2. 프로세서에서 사용하는 버스 형태가 아닌 것은?

1. 주소 버스
2. 제어 버스
3. 데이터 버스
4. 시스템 버스

 

3. 목적이 특수한 값 하나를 저장하거나 연산을 처리하다가 중간 값을 저장하는 프로세서에 위치하는 고속 메모리는?

1. 버스
2. 레지스터
3. 메인 메모리
4. 캐시

 

4. 프로그램 수행을 제어하는 명령어 실행 순서, 즉 다음에 실행할 명령어의 주소를 저장하는 것은?

1. 프로그램 카운터
2. 주소 레지스터
3. 누산기
4. 명령어 레지스터

 

5. 캐시는 메인 메모리의 접근시간과 프로세서의 어떤 것 사이의 차이를 줄이는 데 사용하는가?

1. 지연시간
2. 설정 시간
3. 구조
4. 속도

 

6. 다음 중 OPcode의 기능이 아닌 것은?

1. 주소 지정
2. 함수 연산
3. 전달
4. 제어

 

7. 인터럽트가 발생할 때 운영체제가 가장 먼저 하는 일은?

1. 인터럽트 처리
2. 인터럽트 발생 지점으로 복귀
3. 인터럽트 서비스 루틴으로 제어 이동
4. 현재까지 모든 프로그램 상태 저장

 

8. 인터럽트를 처리하는 순서를 올바르게 나열한 것은?

a. 운영체제가 제어권을 받는다.
b. 인터럽트 처리 루틴이 인터럽트를 처리한다.
c. 인터럽트를 받은 프로세스의 상태를 저장한다.
d. 인터럽트에 걸린 프로세스의 상태를 복구한다.

1. a -> c -> b -> d
2. b -> c -> a -> d
3. c -> b -> d -> a
4. c -> b -> a -> d

 

9. 인터럽트를 잘못 설명한 것은?

1. 프로세서가 명령어를 수행하고 있을 때 다른 작업을 처리하려고 수행을 강제로 중단시키는 사건이다.
2. 인터럽트가 발생하면 복귀 주소는 시스템 큐에 저장한다.
3. 인터럽트가 발생하면 해당 인터럽트 처리 루틴으로 가서 해당 루틴을 처리한 후 중단됐던 프로그램의 원래 지점으로 되돌아온다.
4. 입출력 하드웨어가 입출력 인터럽트를 발생시킨다.

 

10. 프로세서가 명령어를 수행하는 순서는?

ㄱ. 인터럽트 조사
ㄴ. 명령어 해석
ㄷ. 명령어 인출
ㄹ. 피연산자 인출
ㅁ. 명령어 실행

1. ㄷ -> ㄱ -> ㄴ -> ㄹ -> ㅁ
2. ㄷ -> ㄴ -> ㄹ -> ㅁ -> ㄱ
3. ㄴ -> ㄷ -> ㄹ -> ㅁ -> ㄱ
4. ㄹ -> ㄷ -> ㄴ -> ㅁ -> ㄱ 

 

11. 명령어 실행 주기(사이클)에 해당하지 않는 것은?

1. 인출 사이클
2. 간접 사이클
3. 해석 사이클
4. 실행 사이클

 

12. 하드웨어로 실현되는 서브루틴의 호출이라고 볼 수 있는 것은?

1. 인출 사이클
2. 간접 사이클 
3. 실행 사이클
4. 인터럽트 사이클

https://www.netinbag.com/ko/internet/in-computers-what-is-a-subroutine.html

 

컴퓨터에서 서브 루틴이란 무엇입니까?

컴퓨터에서 서브 루틴이란 무엇입니까? 컴퓨터 프로그래밍의 서브 루틴은 더 큰 코드 모듈의 작은 부분으로 전체 프로그램을 처리하도록 설계된 자체 내부 작업이 있습니다. 서브 루틴은 프로

www.netinbag.com

13. 인출 사이클의 첫 레지스터 동작은?

1. MAR <- PC
2. AC <- AC + MBR
3. MAR <- MBR
4. IR <- MBR

 

14. 메모리에서 명령어를 읽어 프로세서로 가져오는 상태는?

1. 인터럽트 발생
2. 간접 상태
3. 실행 상태
4. 인출 상태

 

15. 프로그램의 명령어 수행 중에 산술 및 논리 연산의 결과를 일시적으로 기억하는 레지스터는?

1. 프로그램 카운터
2. 주소 레지스터
3. 누산기
4. 명령어 레지스터

 

16. 인터럽트 우선순위를 결정하는 polling 방법에 대한 설명으로 옳은 것은?

1. 많은 인터럽트가 발생할 때 처리 시간 및 반응시간이 매우 빠르다.
2. s/w적으로 CPU가 각 장치를 하나씩 차례로 조사하는 방법이다.
3. 조사 순위가 우선순위가 된다.
4. 모든 인터럽트의 공통 서비스 루틴이 있다. 

<폴링>

CPU가 일정한 시간 간격을 두고 각 자원들의 상태를 주기적으로 확인하는 방식

자원들은 폴링 신호를 받은 후 자신의 상태를 CPU에게 알려 주게 될 텐데, 이 때 폴링의 간격을 적절히 정해야 한다. 동시에 각 자원들은 직전 폴링 이후 변화된 자신의 상태를 다음번 폴링 때까지는 알릴 수 없다는 점이 문제다.

아무 일이 없었는데도 CPU는 폴링에 일정량의 시간을 들여야 하는 부담도 발생한다.

<인터럽트>

각 자원들이 능동적으로 자신의 상태변화를 CPU에게 알리는 방식

채널과 중앙처리장치 간의 통신은 일반적으로 인터럽트(interrupt)에 의해 이루어짐
출처: https://itdexter.tistory.com/388 [IT_Dexter]

 

 

 

필기내용

https://notability.com/n/1C4l0esDW~2sahnlDrrvSD

 

노트 2021. 7. 26.

 

notability.com

 

반응형