본문 바로가기
CS

운영체제 기본 3 - CPU는 어떻게 컴퓨터를 제어하는가

by seongjko 2023. 7. 8.
728x90

지난번 시리즈에서 컴퓨터의 하드웨어는 크게 CPU, RAM, 보조 메모리, 입출력 장치 

이렇게 4가지로 분류할 수 있다고 설명했다.

그 중 컴퓨터의 핵심이라고 볼 수 있는 부품은 CPU인데 

이 장치가 사실상 컴퓨터를 제어한다고 볼 수 있다.

그렇다면 CPU는 어떻게 컴퓨터를 제어하는 것일까?

바로 인터럽트라는 시스템을 통해 제어하는데  

오늘은 이 인터럽트에 대해서 알아보자.

 

1. 인터럽트란?

하드웨어나 소프트웨어가 아래의 2가지 이유로 인해 CPU에 알림을 보내는 행위

1) CPU가 이전에 시킨 작업이 끝났음 -> 그러니까 뭘 해야 될지 나에게 지금 당장 알려줘

2) 지금 당장 처리해야 할 중요한 연산 작업이 있음 -> 그러니까 이걸 지금 당장 처리해줘

참고로, 하드웨어가 일으키는 인터럽트는 그냥 인터럽트라고 부르고 

소프트웨어가 일으키는 인터럽트는 system call이라고 부른다.

 

2. 인터럽트의 필요성

사실 말이 거창하지 우리 생활 속에 이미 적용되어 있는 시스템이다.

CPU를 마케팅부 부장 A라고 치고, I/O 장치를 B, C, D.. 부하직원들이라고 생각해보자.

A는 부하직원 B에게 이번 마케팅 기획안 PT를 준비해오라고 지시했다.

기획안 준비이니만큼 최소한 며칠 정도의 시간이 소요될 텐데

그러면 A 부장은 그 며칠 동안 회사에 출근해서 오매불망 B의 보고만 기다리고 있을까?

일단 B에게 지시를 내려놓은 후 그 결과가 보고될 때까지 C, D.. 직원들에게 추가 지시를 내리거나 

본인 할 일을 하고 있을 것이다.

그렇다면 시간이 지나 B의 업무가 끝났다고 치자. 이제 B는 무엇을 해야 할까?

그렇다. 보고를 해야 하는데 이 과정에서 제아무리 한가한 시간대에 부장을 찾는다고 해도 

필연적으로 부장이 현재 하고 있던 일을 "방해"하게 된다. 

이제 부장은 어지간히 급한 일을 처리하고 있지 않은 이상 B의 결과물을 검토하고 추가 지시를 내릴 것이다.

위의 사례에서 미루어 알 수 있듯, 인터럽트는 CPU의 효율성 증대를 위한 일종의 알림 시스템이라고 할 수 있다. 

 

3. 

 

 

 

 

 

 

 

 

 

반응형

'CS' 카테고리의 다른 글

가상화에 대하여  (0) 2023.06.29
포트와 소켓 - 네트워크  (0) 2023.06.29
운영체제 기본 2 - 컴퓨터 하드웨어 구조  (0) 2023.06.28
운영체제 기본 1 - 운영체제란?  (0) 2023.06.27
TCP/IP 프로토콜 간단 요약정리  (0) 2023.06.25