운영체제의 심장, 커널(kernel)

- 커널: 운영체제의 핵심 기능을 담당한다.
▶ 사용자 인터페이스(UI: User Interface)
: 사용자가 컴퓨터와 상호작용할 수 있는 통로
- 그래픽 유저 인터페이스(GUI: Graphical User Interface): 윈도우 바탕화면, 스마트폰 화면과 같이 그래픽을 기반으로 컴퓨터와 상호작용할 수 있는 인터페이스
- 커맨드 라인 인터페이스(CLI: Command Line Interface): 명령어를 기반으로 컴퓨터와 상호작용할 수 있는 인터페이스
이중 모드, 시스템 호출
▶ 이중 모드(dual mode):
- 사용자 모드(user mode): 커널 영역의 코드를 실행할 수 없는 모드
- 커널 모드(kernel mode): 운영체제 서비스를 제공받을 수 있는 실행 모드
▶ 시스템 호출(system call)
: 운영체제 서비스를 제공받기 위한 요청


- 시스템 호출: 사용자 모드 --> 커널 모드
- 운영체제(커널) 코드 실행
- 시스템 호출 복귀: 커널 모드 --> 사용자 모드
운영체제의 핵심 서비스
▶ 프로세스 관리
▶ 자원 접근 및 할당
- CPU - CPU 스케줄링
- 메모리 - 메모리에 어떤 프로세스를 적재할까?
- 입출력장치
▶ 파일 시스템 관리
가상 머신과 이중 모드의 발전
▶ 가상 머신(virtual machine)
: 소프트웨어적으로 만들어낸 가상 컴퓨터
- 가상 머신을 설치하면 새로운 운영체제와 응용 프로그램을 설치하고 실행할 수 있다.

- Problem: 가상 머신이 설치된 운영체제는 사용자 모드로 작동한다. 따라서 운영체제 서비스를 제공받기 어렵다.
- Solution: 하이퍼바이저 모드 - 커널 모드와 사용자 모드 이외에, 가상 머신의 운영체제를 위한 모드
--> 가상 머신이 설치된 운영체제로부터 운영체제 서비스를 받을 수 있다.
시스템 호출의 종류

'Computer Architecture > 컴퓨터구조[01]' 카테고리의 다른 글
| [컴퓨터구조] 1129 (2) (0) | 2023.11.29 |
|---|---|
| [컴퓨터구조] 1129 (1) (0) | 2023.11.29 |
| [컴퓨터구조] 1127 (1) | 2023.11.28 |
| [혼자 공부하는 운영체제] 14-3. 페이지 교체와 프레임 할당 (1) | 2023.11.28 |
| [혼자 공부하는 운영체제] 14-2. 페이징을 통한 가상 메모리 관리 (1) | 2023.11.28 |