커널
2024. 1. 11. 12:02ㆍCS/운영체제
- 자동차의 엔진, 사람의 심장처럼, 운영체제의 '핵심 서비스'를 담당하는 부분
- 컴퓨터가 부팅하는 순간, 커널 코드가 메모리에 올라가고, 다른 프로그램과 다르게 항상 메모리에 상주한다.
컴퓨터 시스템 구조
커널의 3가지 특성
1. 보안성
- 커널은 사용자나 응용프로그램으로부터 컴퓨터 자원을 보호하기 위해 자원에 직접 접근하는 것을 차단한다.
- 따라서 사용자나 응용프로그램이 자원을 이용하기 위해서는 System Call이라는 인터페이스를 이용하여 접근해야한다.
- System Call은 커널이 제공하는 시스템 관련 서비스를 모아넣은 것으로, 함수 형태로 제공한다.
2. 추상화
- 응용프로그램과 커널의 인터페이스가 System Call이라면, 하드웨어와 커널의 인터페이스는 Driver가 담당한다.
- 커널이 많은 종류의 하드웨어마다 그에 맞는 인터페이스를 다 개발하기 힘들다.
- 그래서 커널은 입출력의 기본적인 부분만 제작하고 하드웨어의 특성을 반영한 소프트웨어를 하드웨어 제작자에게 받아 커널이 실행될때 함께 실행되도록 하는데,
- 이것이 바로 Device Driver이다.
- 즉, 하드웨어와 커널의 인터페이스는 Device Driver라고 할 수 있다.
3. 스케줄링
- 자원은 한정되어이다. 한정된 자원을 여러 프로그램이 사용해야하는데, 어떠한 한 프로그램이 그 자원을 오랫동안 사용하고 있다면 다른 프로그램은 Ready Queue에서 계속 대기해야할 것이다.
- 그래서 커널은 한정된 자원을 효율적으로 관리하여 프로그램의 실행을 원할하게 한다.
'CS > 운영체제' 카테고리의 다른 글
PCB와 Context-Switch (0) | 2024.01.11 |
---|---|
시스템 콜, 인터럽트? 커널모드, 유저모드? (0) | 2024.01.11 |
운영체제의 분류 (0) | 2024.01.11 |
운영체제란 무엇이고, 어떤 역할을 수행하는가? (0) | 2024.01.11 |
시스템 콜, dual mode (0) | 2024.01.04 |