2. 운영체제 역사
역사
- 컴퓨터 역사 : 1940' 말 (2차세계 대전 이후)
1) 처음에는 컴퓨터에 운영체제가 없었음

Operator라는 직업군이 따로 있었음
카드 리더(소스, 컴파일러) -> 메모리 -> 프린터에 결과 찍힘

2) Batch Processing (일괄처리) ; 최초의 OS
오퍼레이터가 하던 일련을 일을 하는 과정의 프로그램을 만들고, 그걸 메모리에 넣자!
-> resident monitor
참고) resident ; 상주하는
3) Multiprogramming system (다중 프로그래밍)
- CPU scheduling, memory 관리, 보호
하드웨어 기술의 변화. 1960' 당시
기존의 문제점 : 빠른 CPU, 느린 I/O

참고) 프로그램이 cpu와 더불어 I/O 모두 사용하게 됨. 이때 cpu 동작과 I/O 동작이 교대로 일어남
이때 I/O 작업 마칠 때까지 cpu는 아무것도 안하고 놀게 된다 (CPU idle 현상) -> 컴퓨터는 비싼 자원인데 놀게 두면 안된다! -> cpu가 놀지 않고 미리 다음 프로그램 실행하게 하도록 함
-> 메모리에 여러프로그램 올라감 -> Multiprogramming system (다중 프로그래밍)
- CPU scheduling : 어떤 식으로 스캐쥴링해야 속도/성능이 더 좋아질 것인가
- 메모리 관리, 보호 : 메모리 관리를 어떻게 해야 다른 영역에 침범하지 않고 또 새로운 프로그램을 넣을 수 있는가? 메모리의 어느 위치에 넣어야할 것인가?
4) TSS (Time-sharing system ; 시공유 시스템)
- 강제 절환, interactive system (대화형)
- 가상메모리, 프로세스간 통신, 동기화


모니터, 키보드의 출현 -> 컴퓨터와 나의 대화가 가능해짐 (interactive 해짐)
옛날 컴퓨터는 너무 비싸서 여러명이 함께 썻음 -> 하나의 컴퓨터에 여러가지 단말기 연결 (모니터,키보드 등 i/o장치 = Terminal) -> 이러려면 기존의 멀티프로그래밍 방식으로는 불가능함
- 강제절환 : 타임라인 만들어서 짧은 시간을 나누어, 사용자들의 작업을 스위칭해주며 실행 -> 여러사람의 컴퓨터 동시사용이 가능해짐

- 동기화 : 여러명의 프로그램이 동시에 있다보니까, 그 실행 순서를 정해야함
- 가상메모리 : 하드디스크의 일부를 메인메모리인 양 사용할 수 있도록.
참고) Unix, Linux 는 TSS 기반. 현재 대부분 OS의 기본 원리.
OS 기술 천이
- 컴퓨터 규모별 분류
- 옛날 : Supercomputer > Mainframe (한 컴퓨터에 단말기 여러개) > Mini (단말기 수십개) > Micro (한명만 씀)
- 현재 : 네트워크 환경
Supercompueter > Server > Workstation > PC > Handheld (핸드폰 태블릿 등...) > Embedded (세탁기, 전기밥솥 등...)
- 고성능 컴퓨터의 OS 기술이 Handheld/ Embedded 까지
대형 기종을 위해 만들어진 시스템들이, 점차 시간이 지나면서 작은 기종에도 순서대로 적용되기 시작.
- Batch processing
- Multiprogramming
- Timesharing
- 고등 컴퓨터 구조 (Advanced Computer Architectures)
참고 링크
'IT > CS 공부' 카테고리의 다른 글
[KOCW] 운영체제 3차시 - 운영체제 서비스 (0) | 2021.11.08 |
---|---|
[KOCW] 운영체제 3차시 - 이중모드, 하드웨어 보호 (0) | 2021.11.08 |
[KOCW] 운영체제 2차시 - 고등운영체제, 인터럽트 기반 운영체제 (0) | 2021.10.27 |
[KOCW] 운영체제 2차시 - 운영체제 서론 (0) | 2021.10.26 |
[KOCW] 운영체제 1차시 - 강의소개 (0) | 2021.10.26 |