
Memory
CPU의 작업공간
CPU
Memory에서 clock cycle마다 instruction을 읽어서 실행합니다.
registers : Memory보다 더 빠르면서 정보를 저장할 수 있는 CPU 안에 있는 공간
mode bit : 현재 실행되는 것이 OS인지 User Program인 구분
interrupt line : instruction 을 실행하고 interrupt line 체크. interrupt가 들어오면 제어를 OS에게 넘겨줍니다.
I/O Device
device controller : 각각의 I/O Device를 전담하는 작은 CPU
local buffer : I/O Device들의 작업공간
Timer
특정 프로그램이 CPU를 독점하는 것 (e.g. CPU가 무한루프 같은 프로그램을 작업하는 경우) 을 방지하기 위해 존재
Timer가 interrupt를 걸면 하던 작업을 멈추고 CPU의 제어를 User Program에서 OS로 넘어갑니다. 그럼 OS 는 Timer를 설정하여 다음 프로그램을 CPU에게 넘겨줍니다.
DMA (Direct Memory Access) controller
직접 Memory에 접근할 수 있는 controller. Memory에 CPU뿐만 아니라 DMA도 접근할 수 있도록 합니다. I/O 가 interrupt를 너무 많이 하게되면 오버헤드가 크기 때문에 DMA를 통해 접근
Memory controller
Memory 접근 제어를 담당. CPU 와 DMA가 동시에 접근하려 할때 정리해준다.
프로그램이 I/O Device와 관련된 작업이 필요한 경우 직접 I/O Device에 접근할 수 없기 때문에 OS에게 CPU를 넘겨줍니다.