운영체제의 분류
2024. 1. 11. 12:01ㆍCS/운영체제
- 동시 작업을 지원하는지의 여부에 따른 분류
- 동시 작업을 지원하지 않는 단일 작업(single tasking) 운영체제
- 한번에 프로그램 한 개만 실행 가능, ex) DOS
- 동시 작업을 지원하는 다중 작업(multi tasking) 운영체제
- 동시 작업 = 하나의 프로그램이 끝나기 전에 다른 프로그램을 실행시키는 것이 가능
- 즉, 한번에 여러 프로그램 실행 가능한 것을 의미한다.
- 최근의 운영체제는 대부분 다중 작업(multi tasking)을 지원한다.
- cpu작업시간을 조금씩 나누어 쓰는 것을 시분할 시스템(time sharing system)이라고 한다.
- 여러 프로그램이 조금씩 메모리 공간을 보유하며 동시에 메모리에 올라가 있는 것을 다중 프로그래밍 시스템(multi-programming system)이라고도 한다.
- 다중 작업 시스템(multi-programming)은 프로그램에 대한 입력의 결과를 화면에 바로 보여주므로 대화형시스템(interactive-system)이라고도 한다.
- 시분할 시스템, 다중 프로그래밍, 대화형 시스템 모두 하나의 컴퓨터에서 여러 프로그램이 실행되어 생긴 것이다.
- 번외) multi-processor(다중 처리기 시스템) : cpu가 여러개 존재하는 것으로, 여러 cpu를 사용하므로, 더 빠른 처리가 가능하지만 운영체제에서 여러 cpu를 관리해야하므로 복잡한 메커니즘을 필요로 한다.
- 동시 작업 = 하나의 프로그램이 끝나기 전에 다른 프로그램을 실행시키는 것이 가능
- 동시 작업을 지원하지 않는 단일 작업(single tasking) 운영체제
- 작업 처리 방식
- 시분할 시스템(time sharing) : cpu를 일정한 시간 단위로 프로그램에게 할당하여 처리해준다. (=Round Robin)
- 시분할 시스템의 특징은 대화형 시스템(interactive system)으로, 사용자 개인의 요청에 대해 곧장 응답해주는 시스템을 의미한다.
- CPU스케줄링 + 다중프로그래밍이 합쳐진 것
- CPU스케줄링 = CPU가 더 효율적으로 사용될 수 있도록 여러개의 작업을 번갈아가변서 실행하는 방식으로, 여러 작업 중에서 우선순위를 정해 실행할 작업을 결정하는 과정
- 다중 프로그래밍 = CPU작업과 입출력 작업을 병행하는 방식
- CPU스케줄링과 다중프로그래밍을 이용해 사용자들에게 컴퓨터 자원을 시간적으로 분할해주는 시스템(=시분할 시스템)
- 일괄 처리 방식(batch processing) : 처리할 작업이 일정량 혹은 일정시간에 도달할때까지 모아두다가 한번에 처리하는 방식
- 실시간 방식(real time) : 실시간 방식은 정해진 시간 안에 어떠한 일이 반드시 처리됨을 보장해야하는 시스템에서 사용한다.
- 시분할 시스템(time sharing) : cpu를 일정한 시간 단위로 프로그램에게 할당하여 처리해준다. (=Round Robin)
- 참조블로그
- https://makecodework.tistory.com/entry/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C-102%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EA%B0%9C%EB%85%90-%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EC%9D%98-%EB%B6%84%EB%A5%98
- https://nstgic3.tistory.com/entry/%ED%94%84%EB%A1%9C%EC%84%B8%EC%8A%A4
- https://sy-note-0.tistory.com/27 (반효경 교수님 책으로 정리된 블로그이기에 가장 신뢰했음.)
'CS > 운영체제' 카테고리의 다른 글
PCB와 Context-Switch (0) | 2024.01.11 |
---|---|
시스템 콜, 인터럽트? 커널모드, 유저모드? (0) | 2024.01.11 |
커널 (1) | 2024.01.11 |
운영체제란 무엇이고, 어떤 역할을 수행하는가? (0) | 2024.01.11 |
시스템 콜, dual mode (0) | 2024.01.04 |