View
운영체제 구조-시스템콜
- 응용프로그램, 운영체제, 컴퓨터 하드웨어(시스템 리소스)관계
도서관으로 비유해보자면
- 운영체제는 도서관
- 응용프로그램은 시민
- 컴퓨터 하드웨어는 책이 된다.
- 시민은 도서관에 원하는 책(자원)을 요청하고,
- 도서관은 적절한 책(자원)을 찾아서, 시민에게 빌려줍니다.
- 시민이 기한이 다 되면, 도서관이 해당 책(자원)을 회수합니다.
- 운영체제는 응용프로그램이 요청하는 메모리를 허가하고, 분배한다.
- 운영체제는 응용프로그램이 요청하는 CPU 시간을 제공한다.
- 운영체제는 응용 프로그래밍이 요청하는 I/O Devices 사용을 허가/제어한다.
사용자, 응용프로그램, 운영체제, 컴퓨터 하드웨어와 관계
- 사용자 <-> 응용프로그램(Application) <-> 운영체제 <-> 하드웨어
운영체제의 역할 중 하나로 운영체제는 사용자 인터페이스를 제공
- 쉘(Shell)
- 사용자가 운영체제 기능과 서비스를 조작할 수 있도록 인터페이스를 제공하는 프로그램.
- 쉘은 터미널 환경(CLI)과 GUI환경 두 종류로 분류된다.
- 쉘 또한 하나의 응용프로그램이라 볼수있다.
운영체제는 사용자 뿐만아니라, 응용프로그램을 위한 인터페이스도 제공한다.
- 응용프로그램을 만들어 운영체제의 기능을 사용하고싶을 때, 특정 언어로 된 코드를 통해 기능을 요청하게 된다.
- 이를 API(Application Programming Interface)라고 부르며,
- 요청을 함수형태로 제공한다.
- ex) open()
- 그 함수들을 묶은 것을 라이브러리(library)라고 한다.
- ex) C library : C언어로 함수들의 집합
- 시스템 콜
- 시스템 콜 또는 시스템 호출 인터페이스라 부르며,
- 운영체제가 운영체제 각 기능을 사용할 수 있도록
시스템 콜
이라는 명령 또는 함수를 제공 - API 내부에는
시스템 콜
을 호출하는 형태로 만들어지는 경우가 대부분
ex) 운영체제는 파일을 읽고 쓸 수 있는 open()이라는 시스템 콜을 제공하고 있음.
- 시스템 콜은 기본적으로 운영체제입장에서의 기능을 정의해 놓은 것으로 프로그램에서 쓰기에는 복잡도가 높아, API형태로 각 언어별로 운영체제 기능을 요청할 수 있는 API를 제공하고 있으며, 결국에는 API-> 시스템콜->운영체제의 순으로 요청을 보내어 하드웨어를 사용할수있게 된다.
운영체제를 만든다면!?
- 운영체제를 개발한다.(Kernel : 핵심기능을 가진 운영체제)
- 시스템 콜을 개발
- C API(library) -> shell 프로그램을 만들기 위한 API(기본 C언어)
- Shell 개발
- 응용 프로그램 개발
운영체제와 시스템 콜
- 시스템콜 표준 정의 예
POSIX API(Linux, UNIX, MacOS), 윈도우 API
용어 정리
- API : 각 언어별 운영체제 기능 호출 인터페이스 함수(각 언어별 인터페이스)
- 시스템콜 : 운영체제 기능을 호출하는 함수
- 인터페이스(interface)는 서로 다른 두 개의 시스템, 장치 사이에서 정보나 신호 를 주고 받는 경우의 접점이나 경계면이다.
오늘 배운 내용 정리
- 운영체제는 컴퓨터 하드웨어와 응용프로그램을 관리한다.
- 사용자 인터파에스를 제공하기 위해 쉘 프로그램을 제공한다.
- 응용 프로그램이 운영체제 기능을 요청하기 위해서, 운영체제는 시스템 콜을 제공한다.
- 보통 시스템 콜을 직접 사용하기 보다는, 해당 시스템 콜을 사용하기위해 만든 각 언어별 라이브러리(API)를 사용한다.
'Computer Science > 운영체제(OS)' 카테고리의 다른 글
컴공전공자_따라잡기 | CH02. 스케쥴링 - 멀티 프로그래밍 (0) | 2021.11.24 |
---|---|
컴공전공자_따라잡기 | CH02. 스케쥴링 - 배치 처리, 멀티 태스킹, 멀티프로세 (0) | 2021.11.23 |
컴공전공자_따라잡기 | CH02. 운영체제 구조-사용자 모드와 커널 모드 (0) | 2021.11.23 |
컴공전공자_따라잡기 | CH01. Intro - 운영체제 큰 그림과 응용 프로그램 (0) | 2021.11.22 |
컴공전공자_따라잡기 | CH01. Intro - 운영체제 큰 그림 (0) | 2021.11.22 |
reply