컴퓨터의 커널(kernel)은
운영 체제의 핵심이다. 운영 체제의 다른 모든 부분에 여러 가지 기본적인 서비스를 제공한다. 커널은 운영 체제의 일부이며 컴퓨터의
하드웨어와 다양한 프로세스(프로세스는 하나의 실행 단위가 되는 컴퓨터 프로그램이다.)의
보안 접근을 책임지는
소프트웨어이다. 시스템의 자원은 제한되어 있지만
프로그램은 많기 때문에 커널은 한 프로그램이 언제 얼마큼 자원을 써야 할지 결정해야 한다. 이것을 스케줄링이라 부른다. 같은 종류의
부품에 대해 다양한
하드웨어를 설계할 수 있기 때문에 하드웨어에 직접 접근하는 것은 문제를 매우 복잡하게 만들 수 있다. 일반적으로 커널은 운영 체제의 복잡한 내부를 감추고 깔끔하고 일관성 있는 인터페이스를 하드웨어에 제공하기 위해 몇 가지
하드웨어 추상화(같은 종류의 장비에 대한 공통 명령어의 집합)들로 구현된다. 이 하드웨어 추상화는
프로그래머가 여러 장비에서 작동하는 프로그램을 개발하는 것을 돕는다.
하드웨어 추상화 계층(HAL)은 제조사의 장비 규격에 대한 특정한 명령어를 제공하는
소프트웨어 드라이버에 의지한다.
wikipedia.org…에서 더 자세한 내용을 보세요