개발자가 내팔자

[양희재 교수님] 운영체제 역사 필기 본문

Computer Science/OS

[양희재 교수님] 운영체제 역사 필기

야생의 개발자 2022. 7. 28. 17:40

No OS

1940년대 말~ 1950년대 천공카드로 거슬러 올라간다..
일반인들은 사용하기 어렵기 때문에 Operator가 따로 있었음
종이에 프로그래밍된 것을 적어주면 그걸 받아 카드에 구멍을 뚫음
그래서 이걸 메모리에 적재시킴
컴파일러도 메모리에 올려서 카드를 번역하여 기계어가 나옴
그 기계어가 프린터에 찍힘 (아주 시끄러움)

Batch Processing System (일괄 처리)

redisnet monitor
Operator가 하는 일을 줄이기 위해 최초의 OS를 만듦
컴파일 -> 링킹 -> 로드
일련의 일을 하는 프로그램을 애초에 메모리에 올려두고 자동화를 한 것

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

반도체가 아니라 진공관이었는데 트랜지스터 같은 게 나오면서 메모리가 커지고 HDD도 생기고 프로세서도 빨라짐.
(1940년대 말 한국에는 컴퓨터가 한 대도 없었다고 함)CPU는 빠른데, IO는 너무 느려서 비싼 자원이 Idle 상태가 되는 것에 대한 불만이 있었음
이를 해결하기 위한 방법 : 메모리에 여러 개의 프로그램을 올림
멀티 프로그래밍을 함으로써 생기는 문제들 : CPU scheduling, memory 관리, 보호

Time-sharing System (시공유 시스템)

  • 단말기 : terminal
  • 하나의 컴퓨터로 여러 사람이 동시에 쓰고 싶었음. 빠른 전환으로 동시에 쓰는 것처럼 느낄 수 있음
  • interactive system (대화형)
  • 프로세스간 통신(IPC)가 가능해졌음
  • Synchronization (동기화)
  • HDD의 보편화. HDD의 일부를 메인메모리인 것처럼 사용할 수 있는 기술의 탄생 : Virtual Memory (가상 메모리)
  • 대표적인 TSS OS : UNIX
    • MS-Dos 시절에는 프로세서랑 메모리만 있었다고 함.

OS 기술 천이

  • 컴퓨터 규모별 분류

    • 옛날 분류 : Supercomputer > MainFrame(수백대) > Mini(수십대) > Mirco
    • 요즘 분류 : Supercomputer > Server > WorkStation(PC보다 조금 더 강한놈(?)) > Handheld > Embedded
  • 고성능 컴퓨터의 OS 기술이 Handheld/Embedded 까지

    • Batch Programming
    • Multiprogramming
    • TimeSharing
  • 고등 컴퓨터 구조 (Advanced Computer Architectures)

    • 고등 운영체제의 등장
Comments