본문 바로가기
Computer Science/운영체제

[OS] 시스템 콜이란? (시스템콜 종류, 시스템콜 동작 방식)

by 그적 2024. 1. 5.

목차

  • 시스템 콜이란?
  • 시스템 콜 동작 방식
  • 시스템 콜 동작 방식

 


1. 시스템 콜이란?

운영체제는 공유된 자원에서 충돌이 발생하거나, 사용자나 응용 프로그램이 직접 하드웨어에 접근하는 것을 막을 필요가 있다. 이를 위해 유저 모드와 커널 모드라는 권한을 부여함으로써 자원을 보호하고 안정성을 유지한다. 사용자나 응용 프로그램은 하드웨어를 사용하기 위해 유저 모드에서 커널 모드로 변환이 필요한데, 이때 시스템 콜을 통해 유저 모드에서 커널 모드로 변환되어 작업한다.

 

즉, 시스템 콜은 커널(운영체제가 제공하는 서비스, 예로 하드웨어 사용)을 사용하기 위한 인터페이스이다.

 


2. 시스템 콜 동작 방식

 

 1) 응용 프로그램에서 내부적으로 시스템 콜을 호출한다. (일반적으로는 API 형태로 감싸져 있음)

 2) 시스템 콜 인터페이스를 통해 커널 모드로 진입한다.

 3) 시스템 콜 매개변수로 받은 서비스 루틴을 수행한다.

 4) 사용자 모드로 리턴된다. (mode-bit = 1이 됨)

 


3. 시스템 콜 종류

 1) 프로세스 제어

  • 끝내기, 중지
  • 적재, 실행
  • 프로세스 생성
  • 프로세스 속성 획득과 속성 설정
  • 시간 대기
  • 사건 대기
  • 사건을 알림
  • 메모리 할당 및 해제

 

 2) 파일 조작

  • 파일 생성, 파일 삭제
  • 열기, 닫기, 읽기, 쓰기
  • 위치 변경
  • 파일 속성 획득
  • 파일 속성 설정

 

 3) 장치 조작

  • 장치를 요구, 장치를 방출
  • 읽기, 쓰기
  • 위치 변경
  • 장치 속성 획득 및 설정
  • 장치의 논리적 부착 및 분리

 

 4) 정보 유지 보수

  • 시간과 날짜의 설정과 획득
  • 시스템 데이터의 설정과 획득
  • 프로세스 파일, 장치 속성의 획득 및 설정

 

 5) 통신

  • 통신 연결의 생성 및 제거
  • 메시지의 송신 및 수신
  • 상태 정보 전달
  • 원경 장치의 부착 및 분리

 

 6) 보호

  • 권한 획득
  • 권한 설정

 

댓글