Updated:

less than 1 minute read

개요

  • 운영체제의 심장이자 이를 규정짓는 소프트웨어
  • 역할
    • 하드웨어 자원 관리, 프로세스 제어, 메모리 제어, 보안
  • 운영 체제의 정체성을 결정하기에 중요
    • 페도라, 우분투 등 리눅스 커널을 사용하기에 리눅스로 묶임


종류

  • 단일형 커널(monolithic kernel)
    • 하나의 커널이 운영 체제에서 일어나는 모든 서비스를 처리하는 설계 방식
    • 장점
      • 속도
    • 단점
      • 안정성
      • 커널의 크기
    • 리눅스, 유닉스, MS-DOS, Windows 9x, macOS
  • 마이크로커널(microkernel)
    • 커널과 소프트웨어 사이에 서버라는 응용 프로그램 계층을 두어 커널 <-> 서버 <-> 소프트웨어 형태의 설계 방식
    • 장점
      • 안정성
      • 보안
    • 단점
      • 성능
    • AmigaOS, Amoeba, L4, 심비안
  • 혼합형 커널(hybrid kernel)
    • 마이크로커널에 단일형 커널의 장점을 혼합해 만든 설계 방식
    • 성능이 필요한 운영 체제 서비스는 커널이 처리
    • NT,
  • 엑소커널(exokernel)
    • 낮은 수준의 하드웨어 접근을 위한 최소한(보호와 다중화)의 추상화를 제공
    • 커널이 아닌 라이브러리가 단일형 커널 수준의 추상을 제공
  • 나노커널(nanokernel)
    • 코드의 양이 매우 작은 커널