반응형
컴퓨터 구조론에서 다루었듯이 CPU의 속도는 주기억장치나 보조기억장치에 비해 빠릅니다. 따라서, CPU에서 작업하다 RAM에 접근하기만 해도 CPU 입장에서 시간 손해가 굉장히 큰 일이 발생합니다.
예를들어, 1개의 프로세스가 실행 중이었는데, I/O Request를 받게 되어 RAM에 접근하게되면 그 시간동안 CPU는 놀게됩니다. 이러한 상황을 IDLE 이라고 합니다. 이렇게되면 CPU 속도에 비해 I/O 속도가 느리므로 IDLE 시간이 길어 CPU 활용률이 떨어집니다.
그러므로, 운영체제는 이를 해결하기 위해서 프로그램 실행 중, I/O 요구가 들어오게 되면, 기다리지않고 다른 프로그램을 실행합니다.
ex) CPU Busy Waiting(IDLE) 동안 다른 프로그램 실행 → I/O가 완료되면 I/O Device는 CPU에게 전기적 신호를 보냄. → CPU는 하던일을 멈추고(I/O Interrupt) 신호를 처리
이때 아무 프로그램이나 CPU를 할당받는 것이 아닌, 추후 작성할 스케줄링 알고리즘에 의해 선택됩니다.
따라서, 프로그램이 CPU를 마치 혼자 쓰는 것처럼 느끼게하여 대화식 처리 시스템처럼 처리하게됩니다.
이를 시분할 시스템이라고 부릅니다.
반응형
'Computer Science > 운영체제' 카테고리의 다른 글
Critical Section (임계구역) (0) | 2024.01.19 |
---|---|
스레드 (0) | 2024.01.19 |
CPU Scheduling Algorithm (0) | 2024.01.18 |
Context Switch (문맥교환) (0) | 2024.01.18 |
Protection (보호) (0) | 2024.01.17 |