Systemcall


title: 2025-08-19 author: 강병호 (이름) date: 2025-08-19 (날짜) category: TIL/강병호/2025/08 (파일 경로 : TIL/{이름}/{연}/{월}) layout: post (자유) —

우리가 사용하는 시스템 콜의 예시를 들어주세요.

  • System.out.println 해당 명령어를 통해 응용 프로그램에서 write를 할수 있도록 처리합니다.
  • mkdir
  • cd

시스템 콜이, 운영체제에서 어떤 과정으로 실행되는지 설명해 주세요.

  1. 평소 사용자 모드에 있는 응용 프로그램이 커널의

시스템 콜의 유형에 대해 설명해 주세요.

시스템 콜을 통해 커널에게 OS단의 처리를 할 수 있는 처리들을 하게 되는데 다음의 범주로 나눌 수 있다.

  • 프로세스 제어 : end, abort, create process
  • 파일 조작 : create file , open , close , read
  • 장치 관리 : 마우스, 키보드 등의 디바이스 입출력
  • 정보 유지 : 시스템 내부 데이터, 파일의 처리
  • 통신 : 메시지 송수신 및 상태연결, 공유메모리 처리
  • 정보 보호 : 파일 권한 처리

운영체제의 Dual Mode 에 대해 설명해 주세요

운영체제는 운영체제를 사용자로부터 보호하기 위해 존재하는 기법으로 사용자와 운영체제 사이에서의 시스템 자원 공유 과정에서 사용자가 메모리 내의 주요한 운영체제의 지원을 망가뜨리지 않도록 보호하는 것이다.

Dual Mode는 다음 두 가지 모드로 나뉠 수 있다.

  • 사용자 모드 : 사용자가 접근 가능
  • 커널 모드 : 사용자가 접근 불가능

왜 유저모드와 커널모드를 구분해야 하나요?

일부 명령은 운영체제 내부에 나쁜 영향을 끼칠 수 있다. 이러한 명령들을 priviledge instruction 으로 지정하여 운영체제 자신과 유저에게 시스템 상의 보호를 제공할 수 있다.

위 방식을 통해 priviledge instruction 이 커널 모드에서만 실행되도록 하여 사용자가 운영체제 내부에 문제를 발생시키지 않도록 처리한다.

실제로 사용자 모드에서 priviledge instruction을 사용하면 불법적인 명령으로 간주하여 trap 이라는 인터럽트를 걸게 된다.

results matching ""

    No results matching ""