-
[운영 체제] 운영 체제의 분류Operating System. 2020. 6. 5. 00:06반응형
운영 체제의 분류
1. 동시 작업을 지원하는지의 여부에 따라 단일 작업, 다중작업으로 나눌 수 있음
1-1 단일 작업용 운영 체제
단일 작업용 운영 체제는 한 번에 하나의 프로그램만 수행시킬 수 있는 운영 체제.
예로는 WINDOWS, UNIX가 등장하기 전, DOS에서는 하나의 프로그램을 실행시키면 다른 프로그램을 실행시킬 수 있는
명령어 입력 라인이 뜨지 않아 한 번에 하나의 작업만 수행.
1-2 다중 작업용 운영 체제
지금 현재 보편화되어 있는 WINDOWS 또는 UNIX 환경에서는 하나의 프로그램이 끝나기 전에도 다른 프로그램을 수행시킬 수 있다. 게임을 하면서, 음악을 듣고, 음악을 들으며 메신저도 사용하고, 메신저를 쓰면서 웹 서핑도 할 수 있는 지금의 환경의 WINODOWS는 다중 작업용 운영 체제임을 말해 주는 것이다.
* 다중 작업용 운영 체제의 개념을 이해할 때 주의할 점
운영 체제가 다중 작업을 처리할 때에는 여러 프로그램이 CPU 및 메모리를 공유함.
일반적인 컴퓨터는 CPU가 하나밖에 없으므로, 다중 작업용 운영 체제라 하여도 매 순간 하나의 프로그램만이 수행되는 것.
- 시분할 시스템(time sharing system)
CPU의 처리 속도가 밀리세컨드(ms) 이내의 짧은 시간 규모로 여러 프로그램들이 번갈아 실행되기 때문에 사용하는 사람 입장에서는 여러 가지 프로그램이 동시에 수행되는 것처럼 보이는 것.
위의 내용처럼 CPU의 작업 시간을 나누어 쓰는 시스템을 시분할 시스템이라고 한다.
- 다중 프로그래밍 시스템(multi-programing system)
CPU와 달리 메모리의 경우 여러 프로그램들이 조금씩 메모리 공간을 보유하며 동시에 메모리에 올라갈 수 있다.
메모리 공간을 분할하여 여러 프로그램들을 동시에 메모리에 올려두고 처리하는 시스템을 다중 프로그래밍 시스템이라고 부른다.
다중 작업용 운영 체제에서는 여러 프로그램들을 같이 수행시키지만 사용자 입장에서는 각 프로그램에 대한 결과를 화면에 바로 보여주기 때문에 이러한 시스템을 대화형 시스템(interactive system)이라고 부른다.
다중 작업, 시분할, 다중 프로그래밍, 대화형 시스템 모두 여러 프로그램이 하나의 컴퓨터에서 동시 수행됨.
2. 다중 사용자의 동시 지원 여부
한 번에 한 명의 사용자만 사용하도록 허용하는 운영 체제를 단일 사용자용 운영 체제.
그 반대로 여러 사용자가 사용할 수 있게 하는 운영 체제를 다중 사용자용 운영 체제라고 함
2-1. 다중 사용자용 운영 체제
우리가 알고 있는 이메일 서버 및 웹 서버 흔히 서버라고 불리는 컴퓨터는 여러 사용자가 동시에 접속해 사용이 가능 함으로 다중 사용자용 운영 체제라고 할 수 있다.
2-2. 단일 사용자용 운영 체제
단일 사용자용 운영체제는 DOS처럼 한 번에 하나의 작업만 수행할 수 있는 경우, 또는 WINDOWS처럼 사용자 혼자 쓰지만, 다중 작업이 가능한 경우
3. 작업을 처리하는 방식
3-1. 일괄 처리(batch processing)
일괄처리 방식은 작업 요청의 일정량을 모아두었다가 한 번에 처리하는 방식.
처리해야 할 여러 작업들을 모아두었다가, 일정량이 되었을 때 일괄 적으러 처리
모든 작업이 마친 후에야 결과를 알 수 있음.
단점으로는 사용자 입장에선 응답 시간이 길다.
ex) 초창기 컴퓨터 펀치 카드(punch card) 처리 시스템이 있음
3-2. 시분할(time sharing)
컴퓨터의 처리 능력을 일정한 시간 단위로 분할하여 쓰는 방식.
ex) 유닉스 운영 체제 하의 서버 컴퓨터는 사용자들의 작업을 짧은 시간 단위씩 번갈아가며 처리해줌.
그러므로 사용자 입장에서는 일괄 처리 방식에 비해 짧은 응답 시간을 갖게 됨.
평균적으로 사람이 길다고 느끼는 시간 전에 입력에 대한 응답을 얻게 될 수 있음
사용자 입장에서는 혼자 독점적으로 사용하고 있음을 느낄 수 있다.
이것을 대화형 시스템이라고도 부르며, 시분할 방식의 대표적인 특징이라 할 수 있다.
3-3. 실시간(real time)
실시간 운영 체제는 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 시스템에서 사용된다.
일정 시간 안에 작업이 완료되지 못할 경우네는 시스템 자체가 동작하지 않거나, 큰 위험을 부를 수 있는 시스템에서 사용된다고 함.
ex) 원자로, 공장 제어 시스템, 미사일 제어 시스템 등이 그 예이다.
실시간 시스템은 시간 제약의 중요성에 따라 두 가지로 또 세분화시킬 수 있음
3-3-1. 경성 실시간 시스템(hard realtime system)
- 주어진 시간을 지키지 못할 경우 매우 위험한 결과를 초래할 가능성이 있는 로켓, 원자로 제어 시스템 등을 말한다.
3-3-2. 연성 실시간 시스템(soft realtime system)
- 멀티미디어 스트리밍 시스템과 같이 데이터가 시간을 맞추어 전달되어야 올바른 기능을 수행할 수 있는 시스템을 이야기한다. 시간이 지켜지지 않을 경우 동영상의 버퍼링 현상이 나타나 끊기거나 전달이 되지 않을 우려가 있지만 경성 실시간 시스템처럼 위험한 결과를 초래하지는 않음.
반응형'Operating System.' 카테고리의 다른 글
[운영 체제] 운영 체제의 자원 관리 기능 (2) 2020.06.15 [운영 체제] 운영 체제의 정의와 기능 (0) 2020.06.02