시스템 프로그램 (System Programs)
Jan 25, 2026
핵심 개념
섹션 제목: “핵심 개념”프로그램 개발과 실행을 위한 편리한 환경을 제공하는 시스템 서비스로, 시스템 유틸리티(system utilities)라고도 한다.
일부 시스템 프로그램은 단순히 시스템 콜에 대한 사용자 인터페이스이고, 다른 것들은 상당히 복잡한 기능을 제공한다.
시스템 프로그램 범주
섹션 제목: “시스템 프로그램 범주”| 범주 | 설명 |
|---|---|
| 파일 관리 | 파일과 디렉토리 생성, 삭제, 복사, 이름 변경, 출력, 목록, 접근 및 조작 |
| 상태 정보 | 날짜, 시간, 가용 메모리, 디스크 공간, 사용자 수 등 조회. 일부는 성능, 로깅, 디버깅 정보 제공 |
| 파일 수정 | 텍스트 편집기, 파일 내용 검색, 텍스트 변환 명령 제공 |
| 프로그래밍 언어 지원 | C, C++, Java, Python 등의 컴파일러, 어셈블러, 디버거, 인터프리터 제공 |
| 프로그램 적재 및 실행 | 절대 로더, 재배치 로더, 링키지 에디터, 오버레이 로더 등 제공 |
| 통신 | 프로세스, 사용자, 컴퓨터 시스템 간의 가상 연결 생성 |
| 백그라운드 서비스 | 부팅 시 특정 시스템 프로그램 프로세스를 시작하는 방법 제공 |
백그라운드 서비스 (Daemons)
섹션 제목: “백그라운드 서비스 (Daemons)”지속적으로 실행되는 시스템 프로그램 프로세스를 서비스(services), 서브시스템(subsystems), 또는 데몬(daemons)이라 한다.
데몬 예시
섹션 제목: “데몬 예시”| 데몬 | 역할 |
|---|---|
| 네트워크 데몬 | 네트워크 연결을 수신하여 올바른 프로세스에 연결 |
| 프로세스 스케줄러 | 지정된 일정에 따라 프로세스를 시작 |
| 시스템 오류 모니터 | 시스템 오류 모니터링 |
| 프린트 서버 | 프린트 작업 관리 |
일반 시스템에는 수십 개의 데몬이 있다.
사용자 관점에서의 운영체제
섹션 제목: “사용자 관점에서의 운영체제”- 대부분의 사용자가 보는 운영체제의 모습은 실제 시스템 콜이 아닌 응용 프로그램과 시스템 프로그램에 의해 정의됨
- 같은 시스템 콜 집합을 사용하면서도 GUI와 명령줄 셸은 다르게 보이고 다른 방식으로 동작
트레이드오프
섹션 제목: “트레이드오프”- 장점:
- 프로그램 개발과 실행을 위한 편리한 환경 제공
- 시스템 콜의 복잡성을 숨김
- 사용자에게 친숙한 인터페이스 제공
- 단점: 시스템 리소스 소비, 보안 취약점 가능성
관련 개념
섹션 제목: “관련 개념”- 커널 (Kernel) - 시스템 프로그램과 구분되는 운영체제의 핵심 프로그램
- 운영체제 서비스 (Operating-System Services) - 시스템 프로그램이 사용자에게 제공하는 운영체제의 서비스
- 명령 인터프리터 (Command Interpreter) - 시스템 프로그램을 실행하는 셸 인터페이스
- 링커와 로더 (Linkers and Loaders) - 프로그램 적재 및 실행 범주에 해당하는 시스템 소프트웨어
- 부트스트랩 프로그램 (Bootstrap Program) - 부팅 시 데몬 프로세스를 시작하는 과정과 관련된 프로그램
- Operating System Concepts, 10th Edition, Chapter 2, p.74-75