본문 바로가기
Computer-Sience/OS

[CS] Kernel(커널)

by dev_ss 2023. 2. 2.

일반적으로 Mac이나 Windows 같은 OS(운영체제)에 대하여는 많이 들어봤을 것이나 OS와 밀접한 연관이 있는 커널에 대해서는 많이 들어보지 못했을 것이다.

 

 ‣ 커널(Kernel)

사전적 정의로 "알맹이" 또는 "핵심"이라는 뜻을 가지고 있는 커널은 말 그대로 운영체제의 "핵심"이다.

커널은 운영체제에서 컴퓨터 자원을 관리하는 역할을 수행하기 때문이다.

 

소프트웨어의 요청(System Call)으로 하드웨어의 자원(CPU 연산, Disk에 Data의 저장 및 삭제 등)을 이용하기 위하여

커널에서는 중간다리 역할을 수행하는데, 프로그램이 직접적인 하드웨어의 자원에 접근하는 것을 막기 위하여 존재하는 것이다.

 

컴퓨터 작업 상 커널의 위치

 

커널은 소프트웨어의 요청이 하드웨어의 자원에서 처리될 수 있도록 변환하는 작업을 수행하는데,

이를 통하여 응용 프로그램이 직접적으로 하드웨어 자원에 접근하는 것을 방지하고 컴퓨터 자원을 관리할 수 있게 된다.

오직 하드웨어의 자원에 접근할 수 있는 것은 커널을 통해서만 할 수 있다는 것이다.

 

커널은 운영체제 내에서 존재하는 것이기 때문에 사용자가 별도로 조작하는 일이 없지만 셸(Shell)을 통하여 커널이 특정 업무를 수행하도록 명령을 내릴 수 있다.

반응형

'Computer-Sience > OS' 카테고리의 다른 글

[OS] Byte Order  (0) 2023.08.06
[OS] 데드락(Deadlock, 교착 상태)  (0) 2023.08.04
[OS] 메모리 구조  (0) 2023.07.13
[OS] Process(프로세스) / Thread(스레드)  (0) 2023.02.09
[OS] Sync / Async / Blocking / Non-Blocking  (0) 2023.02.08