[OS] 운영체제 역사 (1950년대 ~ 최근)

2021. 9. 16. 22:48프로그래밍/운영체제

반응형

💻 1950년대

  • ENIAC : 최초의 현대적 컴퓨터 (진공관 기반의 컴퓨터. 제 1세대 컴퓨터) 
  • 운영체제 없었음
  • 하나의 응용 프로그램 실행
  • 운영체제가 아직 없었기 때문에 응용 프로그램이 시스템 자원을 제어했음

 

💻 1960년대 초기

  • 프로그램 종류도 좀 많아지고 사용자도 많아지기 시작
  • 배치 처리 시스템 출현 (Batch processing system)
  • 배치처리시스템을 기반으로 운영체제 출현
💡 배치처리 시스템
▪ 여러 응용 프로그램을 등록해놓으면 순차적으로 실행하는 시스템.
▪ 응용프로그램들의 순서를 어떻게 정하냐에 따라서 실행속도가 달라지게 된다.

👎 단점
▪ 컴퓨터 응답시간이 오래 걸릴 수 있다. (앞단의 실행시간이 많이 필요하는 응용프로그램이 실행될 경우)
▪ 실행 시간도 오래 걸릴 수 있다. (CPU가 필요없음에도 응용 프로그램이 CPU를 점유할 수 있기 때문)

 

💻 1960년대 후반

  • 시분할 시스템, 멀티 태스킹 개념 등장
  • 아직 운영체제로는 구현되지 않았음
    ∘ C언어가 개발된 이후 시분할 시스템, 멀티태스킹이 도입된 UNIX 운영체제 개발됨
💡 시분할 시스템과 멀티 태스킹
▪ 응용 프로그램이 CPU를 사용하는 시간을 잘개 쪼개서, 여러 개의 응용 프로그램을 동시에 실행시키는 방법.
▪ 보통 시분할 시스템 == 멀티 태스킹

💡 시분할 시스템(Time sharing system)
 다중 사용자 지원, 컴퓨터 응답 시간을 최소화 하는 시스템.
** 다중 사용자를 지원하기 위해 응답시간을 줄여야 했기 때문에!

💡 멀티 태스킹(Multi Tasking)
▪ 단일 CPU에서 여러 응용 프로그램의 병렬 실행을 가능하게 하는 시스템.
▪ 아주 짧은 시간 단위로 여러 개의 프로그램을 돌아가면서 실행시키면 사용자가 보기에는 동시에 실행하는 것처럼 보임.

💡 멀티 프로그래밍(Multi Programming)
▪ 최대한 CPU를 많이 활용하도록 하는 시스템.
▪ 전체 응용 프로그램의 실행 시간을 줄일 수 있음.
💁‍♀️ App1이 파일을 읽는 처리를 하면, 그 동안 다른 App2를 실행하면서 주기적으로 App1 파일 읽기 처리가 끝났는지 확인하여 CPU가 쉬지 않게 최대한 많이 활용하도록 함.
(시간을 잘게 쪼갤수록 CPU를 빈 공간 없이 활용할 수 있다)


 

💻 1970년대

  • UNIX OS 등장~~~
    ∘ AT&T 사의 벨 연구소 (켄톰슨, 데니스 리치)
    ∘ 멀티 태스킹, 시분할 시스템, 멀티 프로그래밍 구현
  • 현대 운영체제 기술 확립

 

💻 1980년대

  • 1980년대 초반 : 터미널 환경
  • 1980년대 중후반: GUI 환경
  • 개인용 컴퓨터 시대

 

💻 1990년대

  • 응용 프로그램 시대 (GUI 환경과 개인용 컴퓨터로 인해 사용자 증대)
    ∘ 엑셀, 워드 등 Killer Application
    ∘ Windows OS 대중화
    ∘ 자바 언어 등장
Killer Application 이란?
응용 프로그램을 사용하기 위해 하드웨어를 구매할 때, 그 응용 프로그램을 Killer Application이라 함.
  • 네트워크 기술 발전 - 월드 와이드 웹(WWW) 인터넷 대중화
  • 오픈 소스 운동 활성화 시작
    ∘ 리눅스 운영체제의 소스 오픈

 

💻 2000년대 이후

  • 오픈 소스 활성화
    ∘ 리눅스, 아파치, MySql, 안드로이드, 딥러닝 등등등
  • 가상 머신, 대용량 병렬 처리 등 활성화 
반응형