CS/OS

[OS] 커널 (마이크로 커널, 모놀리틱 커널)

겜도리도리 2022. 5. 5. 23:21
반응형

개요

커널은 운영 체제의 핵심이 되는 부분으로 응용 프로그램 수행에 필요한 여러 가지 서비스를 제공한다.

커널은 컴퓨터 하드웨어와 프로세스의 보안을 책임지고, 한정된 자원을 관리하여 프로세스 처리기에 할당한다. (스케줄링) 또한 인터페이스를 통해 하드웨어를 쉽게 사용할 수 있도록 돕는다.

커널의 종류에는 대표적으로 마이크로 커널과 모놀리틱 커널이 있다.

 

마이크로 커널 (Micro Kernel)

 

마이크로 커널은 꼭 필요한 기능만 커널에 구현하고, 필수적이지 않은 기능들은 사용자 모드의 우선순위가 높은 애플리케이션 프로그램으로 만든다.

 

장점

개발이 용이하고 기능 변경이 쉽다.

한 부분에서 일어난 문제점이 다른 부분에 영향을 미치지 않으므로 유지보수가 쉽다.

커널 내부에서 일어나는 지연이 적고, 예측 가능하기 때문에 실시간 시스템(Real-time system)에서 효과적이다.

 

단점

모놀리틱 커널에서는 단순히 함수 호출이면 될 것을 마이크로 커널에서는 운영 체제의 수행이 필요하기 때문에 Trap을 걸어야 한다. 따라서 오버헤드가 존재해 모놀리틱 커널보다는 속도가 느리다.

모놀리틱 커널 (Monolithic Kernel)

모놀리틱 커널은 운영 체제의 모든 기능을 한 곳에 뭉쳐서 개발한다.

 

장점

모듈이 같은 주소 공간에서 실행되기 때문에 신뢰할 수 있을 정도로 구현을 잘 한다면 효율성이 높다.

 

단점

한 부분을 고쳐야 할 때 다른 나머지 것들도 모두 고쳐야 하므로 유지 보수가 힘들다.

 

모놀리틱 커널과 마이크로 커널의 차이점

 

출처

https://ko.wikipedia.org/wiki/%EC%BB%A4%EB%84%90_(%EC%BB%B4%ED%93%A8%ED%8C%85) 

 

커널 (컴퓨팅) - 위키백과, 우리 모두의 백과사전

커널이 응용 소프트웨어를 컴퓨터 하드웨어에 연결하고 있다. 컴퓨터 과학에서 커널(kernel)은 컴퓨터 운영 체제의 핵심이 되는 컴퓨터 프로그램으로, 시스템의 모든 것을 완전히 통제한다.[1] 운

ko.wikipedia.org

https://ko.wikipedia.org/wiki/%EB%A7%88%EC%9D%B4%ED%81%AC%EB%A1%9C%EC%BB%A4%EB%84%90

 

마이크로커널 - 위키백과, 우리 모두의 백과사전

모놀리딕과 마이크로커널 기반 운영 체제의 구조. 마이크로커널(microkernel)은 컴퓨터 과학에서 운영 체제에 추가되어야 하는 메커니즘을 최소한으로 제공하는 초소형 커널이다. 이러한 미니멀리

ko.wikipedia.org

 

반응형

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

[OS] 프로세스  (0) 2022.08.02
[OS] 시스템 프로그램  (0) 2022.08.01
[OS] Paging  (0) 2022.06.13
[OS] VMM  (0) 2022.05.29
[OS] 시스템 콜  (0) 2022.05.05