운영체제 유형
다중 프로그래밍 시스템
- 프로세스가 다른 작업 수행 시 입출력 작업이 불가능하여 메인 메모리의 활용도 떨어지는 일관 처리 시스템의 큰 문제를 다중 프로그래밍을 도입해 해결
- 프로세서가 유휴 상태일 때 실행 중인 둘 이상의 작업이 프로세서를 전환하여 사용할 수 있도록 동작
- 다중 프로그래밍의 특징
- 높고 효율적인 프로세서 사용률(효율적인 운영) 증가
- 많은 사용자의 프로그램이 거의 동시에 프로세서를 할당받는 듯한 느낌
- 다중 프로그래밍 운영체제는 아주 복잡
- 여러 작업을 준비 상태로 두려면 이를 메모리에 보관, 일정 형태의 메모리를 관리해야 함
- 여러 작업이 수행할 준비를 갖추고 있으면, 이 중 하나를 선택하는 결정 방법 필요
시분할 시스템(Time Sharing System)
- 다중 프로그래밍을 논리적으로 확장한 개념, 프로세서가 다중 작업을 교대로 수행
- 다수의 사용자가 동시에 컴퓨터의 자원을 공유할 수 있는 기술
- 각 프로그램에 일정한 프로세서 사용 시간 또는 규정 시간량 할당, 컴퓨터와 대화하는 형식으로 실행
- 여러 사용자에게 짧은 간격으로 프로세서를 번갈아 할당
- 시분할 시스템의 장단점
- 장점
- 빠른 응답 제공
- 소프트웨어의 중복 회피 가능
- 프로세서 유휴시간 감소
- 단점
- 신뢰성 문제
- 보안 의문 및 사용자 프로그램과 데이터의 무결성
- 데이터 통신의 문제
다중 처리 시스템(Multiprocessing System)
- 단일 컴퓨터 시스템 내에서 둘 이상의 프로세서 사용, 동시에 둘 이상의 프로세스 지원
- 여러 프로세서와 시스템 버스, 클록, 메모리와 주변장치 등 공유
- 빠르고, 프로세서 하나가 고장 나도 다른 프로세서를 사용해 작업을 계속함
- 신뢰성 높음
- 프로세서 간의 연결, 상호작용, 역할 분담 등을 고려해야 함
- 다중 처리 시스템을 구성하는 방법에는 비대칭(주종)적 구성과 대칭적 구성이 있음
실시간 처리 시스템(Real Time Processing System)
- 데이터 처리 시스템으로의 정의
- 입력에 응답하는 데 필요한 시간 간격이 너무 짧아 환경 제어
- 온라인 시스템은 실시간으로 할 필요가 없지만, 실시간 처리 시스템은 항상 온라인 상태
- 입력 및 업데이트된 정보 요구 처리 후 디스플레이에 응답하는 시스템에 소요 시간을 반응시간으로 함
- 반응시간은 프로세서에 이미 고정
- 더 높은 적시 응답을 요구하는 장소에서 사용하거나 데이터 흐름 또는 프로세서 연산에 엄격한 시간 요구가 있을 때 사용 가능, 전용 응용 프로그램의 제어장치로도 사용
- 고정 시간 제약을 잘 정의하지 않으면 시스템 실패
- 실시간 처리 시스템의 두 가지 유형
- 경성(Hard) 실시간 처리 시스템
- 작업의 실행 시작이나 완료에 대한 시간 제약 조건을 지키지 못할 때 시스템에 치명적인 영향을 주는 시스템
- 무기 제어, 발전소 제어, 철도 자동 제어, 미사일 자동 조준 등이 이에 해당
- 보장되는 컴퓨팅, 시간의 정확성과 컴퓨팅 예측성을 갖게 해야 함
- 연성(Soft) 실시간 처리 시스템
- 작업 실행에서 시간 제약 조건은 있으나, 이를 지키지 못해도 전체 시스템에 치명적인 영향을 미치지 않는 시스템
- 동영상은 초당 일정 프레임 이상의 영사을 재생해야 한다는 제약이 있으나, 일부 프레임을 건너뛰어도 동영상 재생 시스템에는 큰 영향을 미치지 않음
분산 처리 시스템(Distributed Processing System)
- 시스템마다 독립적인 운영체제와 메모리로 운영, 필요 시 통신하는 시스템
- 사용자에게는 중압집중식 시스템처럼 보이는데, 다수의 독립된 프로세서에서 실행
- 데이터를 여러 위치에서 처리, 저장하고 여러 사용자가 공유