운영체제란 무엇일까?
컴퓨터 시스템의 자원을 효율적으로 관리하는 시스템 소프트웨어
프로세서, 기억장치, 입출력 장치 등을 효율적으로 관리하며, 한정된 CPU와 메모리를 가지고 적절히 분배해준다.
(무조건 1/n이 능사가 아니며, 마치 한 국가의 정부가 각 부처에 예산을 공평하고 효율적으로 분배하는 것과 같다.)
좁은 의미의 운영체제 : 커널 (운영체제의 핵심 부분으로 메모리에 항상 상주)
넓은 의미의 운영체제 : 커널뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념
운영체제의 분류에는 크게 3가지가 있다.
- 동시 작업 가능 여부
- 단일 작업 : 한 번에 하나의 작업만 처리
- 다중 작업 : 동시에 두 개 이상의 작업 처리
- 사용자의 수
- 단일 사용자
- 다중 사용자
- 처리 방식
- 일괄 처리 (batch processing)
- 작업 요청의 일정량 모아서 한꺼번에 처리됨
- 작업이 정말 종료될 때까지 기다려야 함 (초기 Punch Card 처리 시스템)
- 시분할 (time sharing)
- 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용됨
- 일괄 처리 시스템에 비해 짧은 응답 시간을 가짐
- interactive 한 방식
- 실시간 (Realtime OS)
- 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간 시스템을 위한 OS
- 원자로/공장 제어, 미사일 제어, 반도체 장비, 로봇 제어에서 사용됨
- 엄격함의 정도에 따라 Hard realtime system, Soft realtime system으로 구분됨
- 일괄 처리 (batch processing)
현재 운영체제는 다중 작업, 다중 사용자, 시분할 방식의 운영체제이다.
운영체제의 종류는 여러 가지가 있지만 대표적으로 아래와 같은 운영체제가 있다.
유닉스(UNIX)
- 코드의 대부분을 C언어로 작성됨
- 높은 이식성
- 최소한의 커널 구조를 가짐
- 복잡한 시스템에 맞게 확장 용이함
- 소스 코드가 공개됨
- 프로그램 개발에 용이함
- 다양한 버전이 존재함 (System V, FreeBSD, SunOS, Solaris, Linux 등)
DOS(Disk Operating System)
- MS사에서 1981년 IBM-PC를 위해 개발됨
- 단일 사용자용 운영체제, 메모리 관리 능력의 한계가 뚜렷함 (주기억장치 : 640KB)
Microsoft Windows
- MS사의 다중 작업용 GUI 기반 운영 체제
- Plug and Play, 네트워크 환경 강화됨
- DOS용 응용 프로그램과 호환성 제공됨
- 불안정성
- 풍부한 지원 소프트웨어
'Computer Science > Operating Systems' 카테고리의 다른 글
[Operating Systems] 프로세스와 쓰레드 (0) | 2023.01.10 |
---|---|
[Operating Systems] 인터럽트(Interrupt) (0) | 2023.01.06 |
[Operating Systems] 컴퓨터 시스템 구조 (0) | 2022.12.26 |