컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
협의의 운영체제(커널)
광의의 운영체제
1.컴퓨터 시스템의 자원을 효율적으로 관리
2.프로세서, 기억장치, 입출력 장치 등의 효율적 관리
3.사용자 및 운영체제 자신의 보호
4.프로세스, 파일, 메시지 등을 관리
단일 작업(single tasking)
한번에 하나의 작업만 처리
ex) MS-DOS
다중 작업(multi tasking)
동시에 두 개 이상의 작업 처리
ex)UNIX , MS Window
단일 사용자(single user)
ex)MS-DOS, MS Window
다중 사용자(multi user)
ex)UNIX, NT server
일괄 처리 (batch processing)
-작업 요청의 일정량 모아서 한꺼번에 처리
-작업이 완전 종료될 때까지 기다려야 함
ex) 초기 Punch Card 처리 시스템
시분할(time sharing)
-여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용
-일괄 처리 시스템에 비해 짧은 응답 시간을 가짐
ex)UNIX
-interactive한 방식
실시간(Realtime OS)
-정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야 하는 실시간시스템을 위한 OS
-Hard realtime system(경성 실시간 시스템)
-Soft realtime system(연성 실시간 시스템)
ex)원자로/공장 제어,미사일제어,반도체장비
Multitasking
Multiprogramming
Time Sharing
Multiprocess
위의 용어들은 컴퓨터에서 여러작업을 동시에 수행하는 것을 뜻합니다.
Multiprogramming - 여러 프로그램이 메모리에 올라가 있음을 강조
Time Sharing - CPU의 시간을 분할하여 나누어 쓴다는 의미를 강조
Multiprocess - 하나의 컴퓨터에 CPU(processor)가 여러 개 붙어 있음을 의미
CPU - CPU 스케줄링
memory - 메모리 관리
한정된 메모리를 어떻게 쪼개어 쓰느지
Disk - 파일관리
디스크에 파일을 어떻게 보관하는지
I/O device - 입출력 관리
각기 다른 입출력장치와 컴퓨터 간에 어떻게 정보를 주고 받는지