[컴퓨터공학] 운영체제 구조 - 시스템콜

less than 1 minute read

운영체제 구조

패스트캠퍼스 강의 보면서 정리하고 있습니다

운영체제는 사용자 인터페이스 제공

  • 쉘 (Shell)
    • 사용자가 운영체제 기능과 서비스를 조작할 수 있도록 인터페이스를 제공하는 프로그램
    • CLI, GUI 환경

운영체제는 응용프로그램 인터페이스 제공

  • API(Application Programming Interface)
    • 각 언어별 운영체제 기능 호출 인터페이스 함수
    • ex : open()
  • 보통은 라이브러리 형태로 제공
  • 시스템콜
    • 시스템콜 또는 시스템 호출 인터페이스
    • 운영체제가 운영체제 각 기능을 사용할 수 있도록 시스템콜이라는 명령 또는 함수 제공
    • API 내부에는 시스템콜을 호출하는 형태로 구성

CPU Protection Rings

  • 두 가지 모드
    • 사용자 모드 : 응용 프로그램이 사용
    • 커널 모드 : OS가 사용, 특권 명령어 실행과 원하는 작업 수행을 위한 자원 접근을 가능케 함
    • 함부로 응용 프로그램이 전체 컴퓨터 시스템을 해치지 못함

시스템콜

  • 커널 모드에서만 실행 가능한 기능이 있음
  • 커널 모드로 실행하려면 반드시 시스템콜을 사용해야함
  • 시스템콜은 운영체제 제공
  • 프로그래밍 언어별로 운영체제 기능을 활용하기 위해 시스템콜을 기반으로 API 제공
  • 응용프로그램은 운영체제 기능 필요시 해당 API를 사용해서 프로그램을 작성
  • 응용 프로그램 실행 -> 운영체제 기능에 필요한 API 호출 -> 시스템 호출 -> 커널모드 변경 -> OS 내부 해당 명령 실행 -> 다시 응용프로그램