콘텐츠로 이동

시스템 프로그램 (System Programs)

Jan 25, 2026

프로그램 개발과 실행을 위한 편리한 환경을 제공하는 시스템 서비스로, 시스템 유틸리티(system utilities)라고도 한다.

일부 시스템 프로그램은 단순히 시스템 콜에 대한 사용자 인터페이스이고, 다른 것들은 상당히 복잡한 기능을 제공한다.

범주설명
파일 관리파일과 디렉토리 생성, 삭제, 복사, 이름 변경, 출력, 목록, 접근 및 조작
상태 정보날짜, 시간, 가용 메모리, 디스크 공간, 사용자 수 등 조회. 일부는 성능, 로깅, 디버깅 정보 제공
파일 수정텍스트 편집기, 파일 내용 검색, 텍스트 변환 명령 제공
프로그래밍 언어 지원C, C++, Java, Python 등의 컴파일러, 어셈블러, 디버거, 인터프리터 제공
프로그램 적재 및 실행절대 로더, 재배치 로더, 링키지 에디터, 오버레이 로더 등 제공
통신프로세스, 사용자, 컴퓨터 시스템 간의 가상 연결 생성
백그라운드 서비스부팅 시 특정 시스템 프로그램 프로세스를 시작하는 방법 제공

지속적으로 실행되는 시스템 프로그램 프로세스를 서비스(services), 서브시스템(subsystems), 또는 데몬(daemons)이라 한다.

데몬역할
네트워크 데몬네트워크 연결을 수신하여 올바른 프로세스에 연결
프로세스 스케줄러지정된 일정에 따라 프로세스를 시작
시스템 오류 모니터시스템 오류 모니터링
프린트 서버프린트 작업 관리

일반 시스템에는 수십 개의 데몬이 있다.

  • 대부분의 사용자가 보는 운영체제의 모습은 실제 시스템 콜이 아닌 응용 프로그램과 시스템 프로그램에 의해 정의됨
  • 같은 시스템 콜 집합을 사용하면서도 GUI와 명령줄 셸은 다르게 보이고 다른 방식으로 동작
  • 장점:
    • 프로그램 개발과 실행을 위한 편리한 환경 제공
    • 시스템 콜의 복잡성을 숨김
    • 사용자에게 친숙한 인터페이스 제공
  • 단점: 시스템 리소스 소비, 보안 취약점 가능성
  • Operating System Concepts, 10th Edition, Chapter 2, p.74-75