본문 바로가기
정보보호/용어

Kernel Binary

by 규글 2024. 9. 22.

읽고 있는 논문

: BoKASAN: Binary-only Kernel Address Sanitizer for Effective Kernel Fuzzing

 


A kernel binary refers to the compiled code of an operating system kernel, which is the core component responsible for managing system resources and communication between hardware and software. When the system boots, this binary is loaded into memory by the bootloader and executed by the CPU.

 

In most systems, the boot process involves the bootloader transferring control to the kernel by loading its binary into the appropriate memory location. This binary includes essential functionality like process management, memory handling, and device communication. Various types of kernels exist, including monolithic kernels (where all functionalities are in a single large binary), microkernels (which keep core functionalities minimal), and hybrid kernels (which combine aspects of both). Each has its strengths in terms of modularity, performance, and development flexibility.

 

For example, in Linux-based systems, the kernel binary is typically loaded by the GRUB bootloader, which passes control along with necessary parameters for system initialization​

 

 

from. Chat GPT


System Kernel

: system source와 H/W S/W 사이의 communication을 관리하는 core component

 

Bootloader

: 대부분의 system에서 boot process가 포함하고 있는 것.

: 적절한 메모리 위치에 binary를 loading하여 제어를 kernel로 넘김

 

Kernel Binary

: system kernel을 동작하게 하는 compiled code. 시스템이 boot 하면 bootloader에 의해 메모리에 load 되고, CPU에 의해서 실행됨.

: 프로세스 관리, 메모리 handling, device communication과 같은 필수적인 기능을 포함,

: 여러 형태의 kernel이 존재.

 

Kernel 종류

- monolithic kernal : 모든 기능이 하나의 큰 binary에

- micro kernel : 코어 기능을 최소화

- hybrid kernel : 위 둘을 합쳐놓은 것

 

각각 modularity, performance, development flexibility에서 강점이 있음

 

예시) Linux-based system에서 kernel binary는 일반적으로 GRUB bootloader에 의해 load 되는데, 이때 bootloader는 시스템 시작에 필요한 parameters와 함께 제어를 넘김.

'정보보호 > 용어' 카테고리의 다른 글

Taint Analysis (오염 분석)  (0) 2024.09.22
카테고리 설명  (0) 2024.09.22

댓글