1. 운영체제의 발전 과정
연도 | 운영체제 | 특징 |
1940년대 | 운영체제 없음 | - 기계어를 직접 사용 - 단순 순차 처리 |
1950년대 | 일괄 처리 시스템 | - 운영체제의 효시인 IBM 701 개발 - 작업별로 일괄 처리 |
1960년대 | - 다중 프로그래밍 시스템 - 시분할 시스템 - 다중 처리 시스템 - 실시간 처리 시스템 |
- 가상 기억장치 등장 - 다중 프로그램, 다중 처리, 시분할 처리 - 운영체제를 고급 언어로 작성 - 데이터 통신 지원용 운영체제 사용 |
1970년대 초반 | - 다중 모드 시스템 - 범용 시스템 |
- 일괄 처리, 시분할 처리, 실시간 처리 - 장치의 독립성 제공 - TCP/IP 통신 표준 활성화 |
1970년대 중반 | 분산 처리 시스템 | - 응용 프로그램 개발 및 DB 활용 확대 - 네트워크 기술 발전 - 펌웨어 개념 등장 |
1990년대 | 병렬 계산과 분산 계산 | - www 등장으로 분산 컴퓨팅 증가 - GUI 강화 - 개인용과 서버용 운영체제 보편화 |
2000년대 이후 | - 모바일 및 임베디드 - 가상화 및 클라우드 컴퓨팅 |
- 네트워크 기반의 분산 및 병렬 운영체제의 보편화 - 여러 운영체제가 한 시스템의 자원을 공유하는 서버 가상화 기술 확산 - 사용자에게 서비스 형태로 제공하는 클라우드 컴퓨팅의 등장 |
2. 운영체제의 유형
2-1. 다중 프로그래밍 시스템
- 일괄 처리 시스템의 문제점을 해결
- 프로세서 사용을 최대화하는 것이 목표
- 프로세서가 유휴 상태일 때 실행 중인 둘 이상의 작업이 프로세서를 전환하여 사용할 수 있도록 동작
- 하지만 아주 복잡하기 때문에, 여러 작업을 준비 상태로 두려면 이를 메모리에 보관해야 하고, 일정 형태의 메모리를 관리해야 함
2-2. 시분할 시스템
- 프로세서가 다중 작업을 교대로 수행하기 때문에 다수의 사용자가 컴퓨터의 자원을 공유할 수 있는 기술
- 각 프로그램에 일정한 프로세서 사용 시간을 할당하여 사용자가 주어진 시간 동안 실행
- 응답 시간을 최소화하는 것이 목표
- 하지만 보안 및 데이터 무결성을 제공하는 기능을 제공해야 함
2-3. 다중 처리 시스템
- 단일 컴퓨터 시스템 내에 두 개 이상의 프로세서를 사용하여 두 개 이상의 프로그램을 지원
- 여러 프로세서와 시스템 버스, 클록, 메모리와 주변장치 등을 공유
2-4. 실시간 처리 시스템 (데이터 처리 시스템)
- 입력에 응답하는데 필요한 시간 간격이 너무 짧아서 환경을 제어
- 경성 실시간 처리 시스템 : 작업의 실행 시작이나 완료에 대한 시간 제약 조건을 지키지 못할 때 시스템에 치명적인 영향
- 연성 실시간 처리 시스템 : 시간 제약 조건을 지키지 못해도 전체 시스템에 치명적인 영향을 미치지 않음
2-5. 분산 처리 시스템
- 시스템마다 독립적인 운영체제와 메모리로 운영 및 통신
- 하나의 프로그램을 여러 프로세서에서 동시 실행 가능
해당 글은 <운영체제: 그림으로 배우는 구조와 원리>를 읽고 정리한 내용입니다.
'CS > 운영체제' 카테고리의 다른 글
[OS] 스레드의 상태 변화와 구현 (0) | 2023.11.20 |
---|---|
[OS] 프로세스의 상태 변화와 관리 (0) | 2023.11.20 |
[OS] 운영체제의 서비스와 구조 (0) | 2023.11.05 |
[OS] 운영체제의 개념과 기능 (0) | 2023.11.05 |
[OS] 컴퓨터 시스템의 동작 (0) | 2023.11.05 |