- 스케쥴링 방법: 배치 처리 시스템, 시분할 시스템, 멀티 태스킹
- 프로세스를 운영 프로그램이라 생각하고 이해하면 좋음
1. 배치 처리 시스템
- 자료구조의 큐(Queue) 방식과 유사함 [ 선입선출: FIFO, First In First Out ]
2. 배치 처리 시스템과 시분할 시스템/멀티 프로그래밍
- 왜 배치 처리 시스템이 안 쓰이고, 새로운 기술이 나왔을까?
특정 프로그램의 실행 시간이 너무 오래 걸려, 다른 프로그램을 실행하는데 대기 시간이 길다는 단점이 있었음
이로 '여러 프로그램을 순차적으로 실행시킬 수 있게 해주세요!' 라는 요구사항이 발생하며 새로운 기술이 등장한 것임 - 예시를 들자면
MP3를 들으며 문서 작성을 하고 싶어요! --> 동시에 여러 프로그램 실행
여러 사용자가 동시에 하나의 컴퓨터를 쓰고 싶어요! --> 다중 사용 지원
이로 시분할 시스템과 멀티 프로그래밍이 등장한 것임
3. 시분할 시스템
- 다중 사용자 지원을 위해 컴퓨터 응답 시간을 최소화하는 시스템
4. 멀티 태스킹
- 단일 CPU에서 여러 응용 프로그램이 동시에 실행되는 것처럼 보이도록 하는 시스템
- 즉, task를 OS의 스케쥴링에 의해 task를 번갈아가며 수행하는 것을 의미함
5. 멀티 프로그래밍
- 프로세서가 입출력 작업의 종료를 대기할 동안 하나의 프로세서에서 다른 프로그램을 수행할 수 있도록 하는 것
- 조금 더 쉽게 이야기하자면, 시간대비 CPU 활용도를 높이는 것임
6. 멀티 프로세싱
- 다수의 프로세서가 서로 협력적으로 일을 처리하는 것으로, 컴퓨터는 1대인데 프로세서는 2개 이상인 멀티 코어 시스템을 포함함
- 좀 더 쉽게 이야기하자면, 여러 CPU에 하나의 프로그램을 병렬로 실행해 실행 속도를 극대화하는 시스템
'Study > Computer Science' 카테고리의 다른 글
[HTTP] URI, 웹 브라우저 요청 흐름 (0) | 2021.05.12 |
---|---|
[HTTP] 인터넷 통신 (0) | 2021.05.10 |
[OS] 프로세스간 커뮤니케이션 - IPC(InterProcess Communication) (0) | 2021.05.10 |
[스케쥴러] 선점형과 비선점형 스케쥴러 (0) | 2021.03.25 |