시스템 콜 (System Call)
Jan 22, 2026 · Updated Jan 25, 2026
핵심 개념
섹션 제목: “핵심 개념”시스템 콜은 프로세스가 운영체제에게 어떤 동작을 요청하는 방법이다.
사용자 프로그램은 user mode에서 실행되므로 직접 하드웨어나 특권 작업에 접근할 수 없다. 시스템 콜을 통해 안전하게 OS 서비스에 접근한다.
동작 원리
섹션 제목: “동작 원리”- 사용자 프로그램이 시스템 콜 실행
- 인터럽트 벡터의 특정 위치로 trap 발생
- mode bit이 kernel mode로 설정됨
- 커널이 어떤 시스템 콜인지 판단
- 파라미터의 정확성과 적법성 검증
- 요청 실행 후 제어 반환
파라미터 전달 방식
섹션 제목: “파라미터 전달 방식”| 방식 | 설명 |
|---|---|
| 레지스터 | 파라미터를 레지스터에 직접 전달 |
| 스택 | 파라미터를 스택에 push |
| 메모리 | 메모리에 저장하고 포인터를 레지스터에 전달 |
- 파일 읽기/쓰기
- 네트워크 통신
- 새 프로세스 생성
트레이드오프
섹션 제목: “트레이드오프”| 장점 | 단점 |
|---|---|
| 사용자 프로그램이 안전하게 OS 서비스 접근 | mode 전환으로 인한 오버헤드 발생 |
관련 개념
섹션 제목: “관련 개념”- 시스템 콜 유형 (System Call Types) - 시스템 콜의 6가지 주요 범주별 분류
- 트랩 (Trap) - 시스템 콜 실행 시 발생하는 소프트웨어 생성 인터럽트
- 이중 모드 연산 (Dual-Mode Operation) - 시스템 콜을 통한 사용자 모드-커널 모드 전환 메커니즘
- 시스템 콜 인터페이스 (System-call Interface) - 시스템 콜에 대한 연결 역할을 하는 인터페이스
- API (Application Programming Interface) - 시스템 콜을 추상화하여 프로그래머에게 제공하는 함수 집합
- Operating System Concepts, 10th Edition, Chapter 1, p.26