본문 바로가기

Computer Science/OS(Operating System)

[OS] 운영 체제 개요 - 운영 체제의 분류

  • 운영 체제의 분류

1. 단일 작업(single tasking) vs 다중 작업 (multi tasking)

(1) 단일 작업 운영 체제

  • 한 번에 하나의 프로그램만 수행시킬 수 있는 운영 체제로 초기 컴퓨터용 운영 체제는 대개 단일 작업용 운영 체제에 해당되었다. MS 윈도즈가 나오기전 DOS 환경에서는 하나의 프로그램이 실행되는 동안 명령어를 입력할 수가 없어 한 번에 하나의 작업만 가능했다. 최근에는 대부분의 운영 체제가 동시에 두 개 이상의 프로그램을 처리할 수 있는 다중 작업을 지원한다.

(2) 다중 작업 운영 체제

  • MS 윈도즈나 유닉스 환경에서는 하나의 프로그램의 수행이 끝나기 전에 다른 프로그램을 수행시키는 것이 가능하다. PC환경에서 다양한 프로그램들을 띄워놓을 수 있다는 점이 MS 윈도즈가 다중 작업용 운영 체제임을 말해준다.

시분할 시스템(Time sharing system)

  • 다중 작업용 운영 체제의 개념을 이해할 때 주의할 점이 있다. 프로그램이 여러 개 수행될 때 프로그램들은 CPU와 메모리를 공유하게 되는데, 일반적으로 CPU는 컴퓨터에 하나밖에 없다. 다중 작업용 운영 체제여도 CPU에서는 매순간 하나의 프로그램만이 수행되는 것이다. CPU 처리속도가 빨라 여러 프로그램들이 짧은 시간에 번갈아 수행되기 때문에 사용자 입장에서는 여러 프로그램이 동시에 수행되는 것처럼 보이게 된다.

CPU의 작업 시간을 여러 프로그램들이 조금씩 나누어 쓰는 시스템을 시분할 시스템이라고 한다.

다중 프로그래밍 시스템(Multi-programming system)

  • CPU 와 달리 메모리의 경우 여러 프로그램들이 조금씩 메모리 공간을 보유하며 여러 프로그램들을 동시에 메모리에 올려 놓을 수 있다. 이처럼 메모리 공간을 분할해 여러 프로그램들을 동시에 메모리에 올려놓고 처리하는 시스템을 다중 프로그래밍 시스템이라고 부른다.

대화형 시스템(Interactive system)

  • 다중 작업용 운영 체제의 경우 여러 프로그램들을 같이 수행시켜도 사용자 입장에서는 각 프로그램에 대한 키보드 입력의 결과를 곧바로 화면에 보여 주기 때문에 이러한 시스템을 대화형 시스템이라고도 부른다.

다중작업, 시분할, 다중 프로그래밍, 대화형 시스템은 모두 여러 프로그램이 하나의 컴퓨터에서 동시에 수행된다. 우리가 널리 사용하는 PC가 바로 이런 조건을 만족하는 시스템이다.

여러 사용자가 동시에 접속해서 쓰는 서버인 경우도 대화형 시스템에 해당한다.

다중 처리기 시스템(Multi-processor system)은 하나의 컴퓨터에 CPU가 여러 개 설치된 경우이며 위 용어들과는 의미가 다르다. CPU가 여러 개라 처리 속도는 빨라지지만, 운영 체제 입장에서는 여러 개의 CPU를 컨트롤 해야하므로 더 복잡한 메커니즘을 필요로 한다.

 

 


 

 

2. 단일 사용자용 vs 다중 사용자용


(1) 단일 사용자용 운영 체제

  • 한 번에 한 명의 사용자만이 사용하도록 허용하는 운영 체제

(2) 다중 사용자용 운영 체제

  • 여러 사용자가 동시에 접속해 사용할 수 있게 하는 운영 체제

ex) 이메일 서버, 웹 서버

 

 


 

 

3. 일괄 처리(batch processing) vs 시분할 (time sharing) vs 실시간 (Real time)


(1) 일괄 처리 방식

  • 작업 요청의 일정량을 모아서 한꺼번에 처리하는 방식이다.

  • 처리해야하는 작업을 일정량 모아 처리하고, 모든 작업이 종료된 후에 결과를 얻을 수 있다.

  • 응답 시간이 긴 단점이 있다.

ex) 펀치 카드 시스템

(2) 시분할 방식

  • 여러 작업을 수행할 때 컴퓨터의 처리 능력을 일정한 시간 단위로 분할해 사용하는 방식이다.

  • 컴퓨터가 사용자들의 작업을 짧은 시간 단위씩 번갈아가며 처리하게 된다. 그러므로 사용자들은 일괄 처리 방식에 비해 짧은 응답시간을 갖게 된다.

-평균적으로 사람이 길다고 느끼는 시간 전에 입력에 대한 응답을 얻을 수 있기 때문에 사용자 측에서는 컴퓨터를 자기 혼자 독점적으로 사용하는 것처럼 생각할 수 있다.

  • 사용자의 요청에 대한 결과를 곧바로 얻을 수 있는 시스템을 대화형 시스템이라고 표현하며, 이는 시분할 방식의 대표적인 특징이라고 할 수 있다.

(3) 실시간 운영체제

  • 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 시스템에서 사용된다.

  • 원자로, 공장 제어 시스템, 미사일 제어 시스템

  • 경성 실시간 시스템(hard realtime system) 과 연성 실시간 시스템(soft realtime system)으로 세분화 할 수 있다.

  • 경성 실시간 시스템은 주어진 시간을 지키지 못할 경우 매우 위험한 결과를 초래할 기능이 있는 로켓, 원자로 제어 시스템등을 말한다.

  • 연성 실시간 시스템은 멀티미디어 스트리밍 시스템과 같이 시간을 맞추어 전달되어야 올바른 기능을 수행할 수 있는 시스템을 말한다. 위험한 결과를 초래하진 않는다.


반응형