티스토리 뷰

운영체제의 발전 과정

구분 시대 특징
0세대 1940년대 운영체제 없음, 기계어 사용
1세대 1950년대 IBM701, 버퍼링, 스풀링, 일괄처리시스템, 상주모니터
2세대 1960년대 초 고급언어 사용, 다중프로그래밍, 다중처리, 시분할시스템
3세대 1960년대 중반 ~ 1970년대 중반 유닉스, 범용시스템, 다중모드시스템
4세대 1970년대 중반 ~ 현재 네트워크시스템, 가상머신, 분산데이터처리, 개인 컴퓨터

 

일괄 처리 시스템

  • 초기 운영체제의 형태로 여러 개의 작업을 단일 작업으로 묶어서 일괄 처리하는 시스템
  • 프로세스가 다른 작업 수행 시 입출력 작업이 불가능하여 프로세서와 메인 메모리의 활용도가 떨어짐
  • 대량의 데이터를 처리할 때 효율

다중 프로그래밍 시스템 (Multi Programming System)

  • 여러 개의 프로그램을 메모리에 동시에 적재하고, CPU가 하나씩 번갈아가며 실행 하는 방식
  • CPU가 I/O 대기 중일 때, 다른 작업으로 전환해서 CPU 자원을 최대한 활용
  • 동시 실행처럼 보이지만 실제로는 하나씩 실행됨 (싱글 CPU 기준)
  • 프로세서가 항상 수행할 작업을 가지도록 하여 프로세서 이용률을 증진시키는 방법
  • 일괄 처리 시스템의 비효율성을 해결

시분할 시스템 (Time Sharing System)

  • CPU 시간을 나눠 여러 사용자에게 돌아가며 제공하는 방식
  • 빠른 전환으로 동시에 여러 사용자 작업을 처리하는 것처럼 보임
  • 각 트랜잭션이 짧아 각 사용자는 짧은 시간 동안만 프로세서를 사용함

분산 처리 시스템 (Distributed Processing System)

  • 물리적으로 떨어진 여러 컴퓨터들이 네트워크를 통해 하나의 시스템처럼 동작하는 구조
  • 시스템마다 운영체제와 메모리를 가지고 독립적으로 운영되며 필요 할 때 통신하는 시스템

다중 처리 시스템 (Multiprocessing System)

  • 단일 컴퓨터 시스템 내에서 둘 이상의 프로세서를 사용
  • 프로세서를 많이 사용해 신뢰성, 가용성, 컴퓨터 능력 등을 향상
  • 시스템 버스, 클록, 메모리와 주변 장치등을 공유
  • 프로세서 하나가 고장나도 다른 프로세서를 사용하여 작업을 계속 할 수 있음