운영체제(OS-Operating System)
운영체제는 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램들의 모임이다. 운영체제에 따라 GUI를 제공하여 효과적인 업무 처리를 기대할 수 있으며 유닉스의 경우 서버관리를 효과적으로 할 수 있다.
운영체제의 목적은 다음과 같다.
- 처리 능력의 향상 : 시간당 작업 처리량, 평균 처리 시간을 개선한다.
- 신뢰성 향상 : 실패 없이 주어진 기능을 수행할 수 있어야 한다.
- 응답 시간의 단축 : 사용자가 시스템에 요청한 작업의 반응 시간을 단축한다.
- 자원 활용률 향상 : 한정된 자원을 효과적으로 사용할 수 있도록 해준다.
- 가용성 향상 : 고장, 오류가 발생해도 운영상 영향을 최소한다.
운영체제의 주요 자원 관리 기능
- 프로세스 관리 : 프로세스 스케줄링을 통해 효과적으로 관리하며 동기화 관리를 해준다. 프로세스의 생성과 제거, 시작과 정지, 메시지 전달 등의 기능이 있다.
- 기억장치 관리 : 프로세스에 메모리를 할당하고 회수한다.
- 주변장치 관리 : 입/출력 장치 스케줄링 및 점유를 관리한다.
- 파일 관리 : 파일의 생성, 수정, 유지, 삭제 등을 관리한다.
운영체제의 분류
분류 | 상세 설명 |
Batch Processing System(일괄 처리 시스템) | 유사한 작업들을 모아서 일괄적으로 처리한다. 긴 실행 시간이 필요하다. 하드웨어를 효율적으로 사용할 수 있게 해주만 실시간 처리능력이 떨어진다. |
Multi Programming System(다중 프로그래밍 시스템) | CPU 가동률을 극대화한 방식이다. CPU가 가동을 멈추거나 낭비되는 유휴 시간을 최소화한다. 작업들은 스케줄에 의해 수행되며 정교한 메모리 관리 및 스케줄링이 필요하다. |
Time Sharing / Multi-tasking System(시분할 / 멀티테스킹) | Multi Programming의 논리적 확장이다. 사용자와 시스템 간의 Interactive한 서비스를 제공한다. |
Multi-Processing System(다중 처리 시스템) | 가용성 증대를 위해 여러 개의 CPU로 다중작업을 구현한 시스템이다. |
Real-time System(실시간 시스템) | 시스템에 요청이 발생할 때 제한시간을 두어 빠르게 처리하고 실시간으로 결과를 보여주는 시스템이다. |
Multi-Mode Processing(다중 모드 처리) | 앞의 여러 시스템의 장점들인 실시간, 다중처리, 시분할, 일괄처리를 모두 제공하는 방식이다. |
Distributed System(분산 컴퓨팅) | 독립적인 운영체제가 네트워크 등을 이용해서 협업을 한다. 운영체제가 다른 시스템과 자원을 공유하며 대용량의 데이터를 실시간, 일괄로 빠르게 처리한다. |
운영체제 종류
운영체제는 사용되는 서비스, 시스템의 목적에 따라 다양한 종류가 있다. 스마트폰에 적용되는 IOS, 안드로이드와 PC에는 큰 분류로 윈도우, 리눅스, 유닉스, Mac OS X가 있다. 리눅스의 경우 레드햇, 데비안 등 여러 계열에서 파생된 다양한 종류의 OS가 있다.
반응형
'System' 카테고리의 다른 글
CPU 스케줄링 기법 (0) | 2021.01.03 |
---|---|
프로세스 관리(Process Management) (0) | 2021.01.03 |
DMA(Direct Memory Access) (0) | 2021.01.02 |
메모리 시스템(Memory System) (0) | 2021.01.02 |
CPU, GPU, RAM - CPU Instruction Cycle, Bus System (0) | 2021.01.02 |