👣 개요
하드웨어와 소프트웨어 간의 상호작용을 관리하고 제어하는 시스템 소프트웨어.
👣 역할
1. CPU 스케줄링, 프로세스 관리 - CPU
CPU 소유권을 어떤 프로세스에 할당할지를 관리.
2. 메모리 관리 - Memory
프로세스에 얼마나 메모리를 할당할지 제어.
3. 디스크 파일 관리 - Disk
디스크에 파일을 어찌 관리할 것인지 관리
4. I/O 디바이스 관리 - Device
마우스, 키보드, 프린터 등등의 컴퓨터와 통신하는 기기 관리
👣 구조
드라이버
하드웨어를 제어하기 위한 소프트웨어.
커널
System Call로 Interface를 제공하며 보안, 메모리, 프로세스, 파일 시스템, I/O 디바이스 등등을 관리하는 주체.
OS의 핵심 부분.
시스템 콜
어플리케이션이 커널에 접근할 수 있게 OS에서 제공하는 인터페이스.
Ex) App에서 Thread를 새로 받고 싶을 때, 쓰레드를 생성하는 과정을 일일이 설정할 필요없이 OS에 위탁하면 된다.
유저 모드
유저가 접근할 수 있는 영역을 OS 차원에서 제한하는 모드.
건드리지 말아야 하는 영역을 보호하기 위해 사용함.
커널 모드
컴퓨터의 자원을 제한없이 사용할 수 있는 모드.
Modebit
1 or 0 값을 가지는 플래그 변수.
OS를 통해야 사용가능한 컴퓨터 자원은 커널 모드에서 작동해야 하는데
시스템 콜이 작동될 때, Modebit이 0이면 User Mode, 1이면 Kernel Mode로 인지한다.
'운영체제' 카테고리의 다른 글
페이지 교체 알고리즘 (0) | 2023.07.22 |
---|---|
메모리 할당 방법 (0) | 2023.07.22 |
스와핑 - Swapping (0) | 2023.07.22 |
메모리 (0) | 2023.07.22 |
컴퓨터 용어 정리 (0) | 2023.07.21 |