OS

시스템 콜이 무엇인지 설명해 주세요.

승무_ 2023. 6. 21. 10:40

시스템 콜은 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다. 대표적으로 사용자 프로그램이 디스크 파일을 접근하거나 화면에 결과를 출력하는 등의 작업이 필요한 경우 사용된다.

커널은 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분으로써 cpu,ram,disk,i/o device와 같은 컴퓨터 하드웨어 자원을 관리한다.

 

꼬리 질문

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

파일 관련 시스템 콜로 파일을 열고 읽고 쓰는 open, read, write 시스템 콜이 있고, 프로세스 제어 관련 시스템 골은 현재 프로세스를 복제하여 새로운 프로세스를 생성하는 fork, 새로운 프로그램을 실행하기 위해 현재 프로세스 주소 공간에 새로운 프로그램을 덮어쓰는 exec 시스템 콜이 있습니다.

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

1. 응용프로그램이 시스템 콜을 호출하면 인터럽트 발생

2. 인터럽트가 발생하면 cpu는 사용자 모드를 커널 모드로 변경

3. IDT에 접근한 후 해당하는 인터럽트 함수 호출

  • 시스템 콜의 유형에 대해 설명해 주세요.
더보기
  1. 파일 시스템 관련 시스템 콜: 파일 시스템 관련 시스템 콜은 파일과 관련된 작업을 수행하는 데 사용됩니다. 예를 들면 파일 열기, 읽기, 쓰기, 닫기 등이 있습니다. 이러한 시스템 콜은 파일 시스템에 접근하고 파일을 조작하는 데 필요한 기능을 제공합니다.
  2. 프로세스 제어 관련 시스템 콜: 프로세스 제어 관련 시스템 콜은 프로세스의 생성, 실행, 종료, 상태 확인 등과 같은 프로세스 관리 작업을 수행하는 데 사용됩니다.
  3. 메모리 관리 관련 시스템 콜: 메모리 관리 관련 시스템 콜은 메모리 할당, 해제, 보호 등과 같은 메모리 관리 작업을 수행하는 데 사용됩니다. 프로세스는 메모리를 필요에 따라 할당받고 해제할 수 있으며, 이러한 작업은 메모리 관리 시스템 콜을 통해 이루어집니다.
  4. 디바이스 관리 관련 시스템 콜: 디바이스 관리 관련 시스템 콜은 하드웨어 디바이스와의 상호작용을 제공합니다. 예를 들어 입출력 장치에 데이터를 전송하거나, 디바이스 드라이버를 로드하거나 언로드하는 등의 작업을 할 수 있습니다.
  5. 네트워킹 관련 시스템 콜: 네트워킹 관련 시스템 콜은 네트워크 연결을 설정하고 관리하기 위해 사용됩니다. 예를 들어 소켓 생성, 연결, 데이터 전송 등의 작업을 할 수 있습니다.
  • 운영체제의 Dual Mode 에 대해 설명해 주세요.
더보기

사용자에 제한을 두지 않으면 사용자가 메모리 내의 주요 운영체제 자원을 망가뜨릴 위험이 있기 때문에 사용자 모드, 커널 모드로 구분지어 접근을 막아 운영체제를 보호하는 것입니다.

'OS' 카테고리의 다른 글

Memory  (0) 2023.07.03
Process & Thread  (0) 2023.06.29
가상 메모리  (0) 2023.04.12
메모리 관리 전략  (0) 2023.04.12
프로세스 동기화  (0) 2023.04.12