운영체제(2) - 역사

less than 1 minute read

역사

  1. 1940’s~50’s: No Operating System
  2. Batch processing system: 오퍼레이터가 하는 반복작업을 대신 메모리에 넣어 일괄 처리해준다. - resident monitor => 최초의 운영체제!
  3. Multiprogramming system: 하드웨어의 발전
    메모리에 OS와 User Program(링커, 컴파일러… 하나만 올라감)
    하나의 프로그램에는 여러 동작이 이루어진다. 예를 들어 아래의 프로그램에서는 계산을 담당하는 CPU와 입출력을 담당하는 I/O가 번갈아가며 수행된다. 이때 I/O가 동작하고 있을 때는 CPU가 아무것도 하지 않는데 이를 CPU IDLE이라 한다.
    하지만 컴퓨터가 비싸던 시절 CPU가 아무것도 안하고 있는 것은 굉장히 낭비였다. 그래서 메모리에 프로그램을 여러 개를 올린다. 그러면 I/O가 일하는 동안에도 CPU가 일할 수 있게 한다.
    CPU scheduling, 메모리 관리 및 보호가 중요해짐.

       i = 10 # CPU
       for i in range(10): # CPU
           i *= 2
       print(i) # I/O
       i += 1 # CPU
    
  4. Time-sharing system: 모니터와 키보드의 등장으로 컴퓨터와 대화가 가능

여러 유저가 사용하지만 CPU가 굉장히 빨리 스위칭하기 때문에 마치 혼자 사용하고 있는 듯한 느낌이 들게 한다.
프로세서간 통신 가능, 동기화(프로그램의 순서 관리), 가상 메모리(많아진 사용자에 따른 메모리 부족 해결, 하드 디스크의 한 부분을 메인 메모리처럼 사용)
현재의 OS는 대부분 TSS를 사용한다.

OS 기술 천이

컴퓨터의 규모별 분류

Supercomputer > Server > Workstation > PC > Handheld(노트북, 스마트폰) > Embedded(자동차, 냉장고)

Leave a comment