시스템 콜(System Call)
- 정의: 사용자 프로그램이 운영체제의 커널 기능(파일 관리, 프로세스 관리, 장치 제어 등)에 접근하기 위한 인터페이스
- 역할:
- 프로세스 관리 (생성, 종료 등)
- 파일 관리 (생성, 읽기, 쓰기, 삭제)
- 디바이스 관리
- 시간·날짜 관리
- 프로세스 간 통신
- 예시: kill() → 프로세스를 종료하는 시스템 콜
시스템 콜 동작 과정
- 유저 프로그램이 I/O 요청을 위해 트랩(Trap) 발생
- 커널이 요청이 유효한지 확인
- 유저 모드 → 커널 모드로 전환 (Mode Bit 변경)
- 해당 커널 함수 실행
- 작업 완료 후 다시 유저 모드로 복귀
커널(Kernel)
- 운영체제의 핵심 부분
- 주요 기능: 보안, 메모리 관리, 프로세스 관리, 파일 시스템 관리, I/O 처리
- 모든 하드웨어 자원에 직접 접근 가능
유저 모드와 커널 모드
| 구분 | 접근 권한 | 특징 |
| 유저 모드 | 제한적 | 자원 접근 제한, 보안성 높음 |
| 커널 모드 | 무제한 | 모든 하드웨어·시스템 자원 접근 가능 |
Mode Bit
- 역할: 현재 CPU가 유저 모드인지 커널 모드인지 구분
- 값:
- 1 → 유저 모드
- 0 → 커널 모드
- 시스템 콜 호출 시 1 → 0으로 전환, 작업 완료 후 다시 0 → 1
시스템 콜의 장점
- 복잡성 은닉: 유저 프로그램은 커널 내부 동작을 몰라도 됨
- 안정성: 커널이 자원 사용을 통제 → 시스템 안정성 확보
- 보안성: 잘못된 접근이나 악의적인 조작 방지
시스템 콜은 유저 모드에서 커널 모드로 안전하게 전환해 운영체제 기능을 제공하는 다리이며, Mode Bit은 이 모드 전환을 구분하는 플래그이다.
'ZeroBase > CS' 카테고리의 다른 글
| 프로그램 컴파일 과정 (0) | 2025.08.12 |
|---|---|
| 메모리 계층 (0) | 2025.08.11 |
| 운영체제와 컴퓨터 시스텀의 구조 (2) | 2025.08.10 |
| CSRF(Cross-Site Request Forgery) (3) | 2025.08.08 |
| XXS(Cross-Site Scripting) (0) | 2025.08.07 |