4.현대 시스템
현대 운영체제는 아래와 같은 다양한 특징을 가지고 있음
1. Interactive System - 대화형 시스템
일괄 처리 방식인 Batch Processing 은 한 번 카드를 넣으면 입력 받은 대로 정지하지 않고 수행하기 때문에 중간에 수정이 불가능했기 때문에 실행 도중에 에러가 발생해도 멈출 수 없었음
이후 대화형 시스템은 프로그램이 동작하는 과정 중간에 현재까지의 처리 결과 값을 확인할 수 있게됨
Interative System, 대화형 시스템
컴퓨터와 사용자가 마치 대화하는 것처럼 보이는 컴퓨터 조작 방식
사용자가 입력 값을 보내면 컴퓨터는 바로 피드백을 출력함
따라서 이 시기에 키보드(Keyboard)와 모니터(Monitor)와 같은 보다 직관적인 입출력 장치도 등장
2. 다중 프로그래밍 시스템(Multi-Programming System)
컴퓨터 하나에 운영 체제인 Resident monitor와 하나의 애플리케이션만 사용할 수 있었던 방식에서 2개 이상의 애플리케이션을 동작시킬 수 있는 방식으로 변화됨
메모리에 여러 개의 프로그램을 올릴 수 있는 시스템 운영 체제는 CPU의 상태가 동작 상태인지 유휴 상태(Idle) 상태인지에 따라 서로 다른 프로그램들을 번갈아 가면서 CPU의 쉼 없이 최대한 효율적으로 가동시키는 방식
3. 시분할 시스템(Time-sharing system)
당시에는 컴퓨터가 가격이 비쌌기 때문에 개인용 컴퓨터(Personal Computer)는 많지 않았음 따라서 프로세서는 중앙에 하나로 두고, 여러 명의 사용자가 하나의 프로세서를 공유하여 사용하는 방식으로 이용하였음
하나의 User는 하나의 컴퓨터 터미널이며, 명령어를 통해 프로그램을 실행하면 중앙의 프로세서가 실행해주는 방식
단점으로는 만약 한 명의 사용자가 컴퓨터(CPU)를 사용 중일 경우, 다른 사용자들은 사용이 불가능하고, 먼저 사용 중인 사용자가 사용을 마칠 때까지 기다려야 했음
이후 Time-Sharing 방식이 도입되면서 먼저 CPU를 선점한 사용자에게 CPU 사용 권한을 전부 넘겨주는 것이 아닌, 마이크로 초 단위로 모든 User들에게 CPU를 매우 빠른 속도로 짧게 할당해주면서 모든 사용자가 동시에 사용할 수 있게됨
따라서 개별 사용자들은 마치 CPU를 자신이 혼자서 사용하고 있는 듯한 느낌을 받으며 모든 사용자가 사실상 동시에 CPU를 사용할 수 있음
과거 대부분의 운영체제(Window, Linux, Unix 등)는 시분할 방식으로 동작하고 있음
