운영체제는 H/W와 응용프로그램 및 사용자 사이의 인터페이스 역할
운영체제는 H/W와 S/w 자원을 관리
운영체제는 모든 프로그램이 공통적으로 사용하는 기본 서비스를 제공한다.
운영체제는 응용프로그램이 하드웨어와 직접 상호작용하지 않고, 시스템 호출 (System Call)을 통해 간접적으로 접근할 수 있게 한다.
운영 체제 기능 1) 프로세스 관리 2) 주 기억장치 관리 3) 보조기억 장치관리 4) 파일 관리 5) 입출력 시스템 관리 6) 네트워킹 관리 7) 명령 해석기 시스템
| 구분 | 주요 역할 | 대표 시스템 호출 | 핵심 개념 |
|---|---|---|---|
| Program Execution (프로그램 실행) | 프로세스 생성, 실행, 대기, 종료 관리 | fork(), execve(), wait(), exit() | CPU 스케줄링, 프로세스 상태 전이 |
| Memory Management (메모리 관리) | 가상 메모리 공간 관리 및 보호 | mmap(), mprotect(), madvise() | Segmentation, Paging |
| I/O Operations (입출력 관리) | 장치 제어 및 데이터 입출력 | ioctl(), mknod() | 디바이스 드라이버, 인터럽트 기반 I/O |
| File System Manipulation (파일 시스템 조작) | 파일 생성, 읽기, 쓰기, 삭제 | creat(), open(), read(), write(), unlink() | 파일 및 디렉터리 관리 |
| IPC (Inter-Process Communication) (프로세스 간 통신) | 프로세스 간 데이터 교환 및 동기화 | pipe(), flock(), futex() | Shared Memory, Message Passing |
| Error Detection & Handling (오류 검출 및 처리) | 시스템 및 프로세스 오류 감지, 복구 | errno, 시그널(signal) | 예외 처리, 접근 위반 감지 |
1) 가상 메모리 관리
2) 디스크 관리
3) 입출력 관리

1) 물리적 분리 - 별도의 장치를 이용한 분리
2) 시간적 분리 - 다른 시간에 실행
3) 논리적 분리 - 각 사용자가 시스템 내 혼자 있는 것처럼 인식
4) 암호화 분리 - 데이터를 숨겨 다른 사용자가 이해하지 못하도록 함

1) 자체 보호 : 활성 주체의 오용/남용으로부터 OS 보호
2) 사용자 보호 : 한 사용자가 다른 사용자를 방해하거나 침해하지 못하게 보호
3) 프로세스 보호 : 한 프로세스가 다른 프로세스에 영향을 주지 않도록 보호