운영체제란
시스템의 각종 하드웨어 자원과 소프트웨어적 자원을 효과적으로 관리 운영하기 위한 것이다. 운영체제는 성능평가 요소가 4가지 존재하는데 아래와 같다.
- 처리능력(Throughput)
- 응답시간(Turn Around Time)
- 신뢰도(Reliability)
- 사용가능도(Availability)
처리능력이 향상될수록, 응답시간이 짧을 수록, 신뢰도가 높을 수록, 사용가능도가 높을수록 성능이 좋은 운영체제이다. 이러한 운영체제는 목표에 따른 역할이 존재한다.
- 효율성 목표 달성을 위해 자원 관리 역할을 갖는다.
- 안정성 목표 달성을 위해 자원 보호 역할을 갖는다.
- 확장성 목표 달성을 위해 하드웨어 인터페이스 제공 역할을 갖는다.
- 편리성 목표 달성을 위해 사용자 인터페이스 제공 역할을 갖는다.
운영체제 운영방식
- 일괄처리(Batch Processing)
해당 운영 방식은 작업이 일정량 이상 모이면 그때 한번에 처리하는 방식이다. 컴퓨터 발명 초기에 이러한 운영 방식을 사용하였다.
- 실시간(Real Time)
시간 처리 방식은 응답 시간에 제약이 있는 경우 사용한다. 작업이 발생하는 즉시 처리한다. 이 방식은 무기 방어 체계, 관제 시스템 같은 곳에서 사용한다.
- 다중 프로그래밍(Multi Programming)
주 기억 장치에 프로그램을 여러개 탑재하고 CPU가 이를 번갈아가며 수행하는 방식이다. 스케줄링 정책에 따른 순서로 처리된다. 단, 다른 프로그램으로 작업이 이동되려면 하나의 프로그램에서 입출력이 발생해야 한다.
- 시분할(Time Sharing System)
다중 프로그래밍은 한 프로그램이 입출력 되어야만 다른 프로그램을 수행할 수 있으나, 시분할 시스템은 입출력이 일어나지 않아도 특정 시간이 지나면 잠시 멈추고 다른 프로그램을 수행하는 타임슬라이스가 발생한다.
- 다중 프로세싱(Multi Processing)
여러 CPU가 한 프로그램을 동시에 수행하여 실행 시간을 최소화 하는 시스템이다.
- 분산 처리(Distributed Processing)
통신으로 연결된 여러 대의 컴퓨터가 한 작업을 동시에 같이 수행하는 시스템이다.
운영체제의 계층 구조
- 계층 5 - 파일과 데이터 관리
파일 생성 / 유지 관리 / 제거 / 열기 / 닫기 등을 담당한다.
- 계층 4 - 주변 장치 관리
입출력 장치와 같은 주변 장치의 전반적 상태 파악 및 입출력 장치의 스케줄링 담당
- 계층 3 - 프로세스 관리
프로세스 생성 / 제거 / 시작 / 정지, 프로세스 간 통신 등을 담당
- 계층 2 - 기억 장치 관리
메모리 공간 할당과 메모리 회수를 담당
- 계층 1 - 프로세서 관리
프로세서 동기화 및 스케줄링 담당