본문 바로가기
2.1 CS/OS

[OS] Operating System

by Dohi._. 2024. 8. 9.
728x90

운영체제 : OS (Operating System)

  • 종류 - 윈도우 UINX 계열(Linux) , Mac OS
  • 사용자가 컴퓨터를 쉽게 다룰 수 있게 해주는 인터페이스.
  • 일반적으로 커널(Kernel)에 여러가지가 추가된 상태를 OS라고 통칭한다.

운영체제 흐름 (그림으로 대체예정)
| 사용자 |
| --- |
| 응용프로그램/Shell |
| 운영체제 |
| 하드웨어 |

운영체제는 Kernel을 기반으로 주로 이야기한다

예를 들어

안드로이드는 리눅스가 OS이다 리눅스 커널을 사용하고

여러가지 안드로이드를 구동하기 위한 라이브러리 및 시스템함수들이 존재한다.

Shell (쉘)

운영체제는 근본적으로 사용자가 사용하기 위한 시스템을 제공한다.

따라서 사용자 인터페이스를 제공하는데 Shell이라고 한다.

이는 Kernel이 아닌 응용프로그램으로 제공된다.

쉘은 CLI과 GUI환경으로 제공이 된다.

대표적으로 Linux Bash, Cmd

시스템 콜(System Call)

  • 시스템 콜 또는 시스템 호출 인터페이스
  • 운영체제가 각 운영체제 각 기능을 사용할 수 있도록 시스템 콜이라는 명령 또는 함수를 제공
  • 쉘에 요청을 하면 커널에 요청을 해야하는데 특별하게 요청/통신할 때 시스템콜을 호출한다.

코드를 짜다보면 실제로 프로그래밍 언어에서 Kernel에 요청을해야 될정도로 필요한 명령어가있다.(ex.파일처리)

운영체제별로 프로그래밍 언어에서는 맞는 API를 구현한다.

즉, Api내부에는 필요시 운영체제에 맞는 시스템 콜을 호출하는 형태로 이루어져있다는 것을 알 수 있다.

포팅(프로그래밍 언어를 kernel(운영체제)에 사용할수있게 개발,적용)

그럼 위에서 말한 표에서 더 추가를하면
운영체제 흐름 (그림으로 대체예정)
| 사용자 |
| --- |
| 응용프로그램/Shell |
|API / Library|
|시스템 콜 |
| 운영체제 |
| 하드웨어 |

728x90

'2.1 CS > OS' 카테고리의 다른 글

[OS] Process , Context Swiching, IPC  (1) 2024.08.10
[OS] 사용자 모드와 커널 모드  (0) 2024.08.09

댓글