Invisible Safety,

Proven by Intelligence

보이지 않는 안전을 인텔리전스로 증명하다.

기술 노트
IT 산업의 변화를 이끄는 MDS인텔리전스의
기술 인사이트를 만나보세요.
사이버 보안 & 암호화
[NeoKeyManager] OS(운영체제) - 3편. 커널(Kernel)
2026년 03월 24일

커널(Kernel)

커널은 운영체제의 핵심 중 핵심

커널은 프로그램과 컴퓨터, 서버와 같은 하드웨어 사이를 이어주는 핵심 프로그램입니다.


커널의 중요성

우리가 게임을 실행하거나 인터넷을 사용할 때 프로그램은 CPU, 메모리, 저장장치 등 하드웨어 자원이 필요합니다.

그런데 프로그램이 직접 하드웨어를 조작하면 너무 위험하고 복잡하죠.

그래서 커널이 중간에서 안전하고 효율적으로 하드웨어를 조작하게 해주는 역할을 합니다.


커널의 역할


커널의 구조


사용자 → 운영체제(OS) → 커널 → 하드웨어

커널은 부팅 시 가장 먼저 메모리에 올라가며 시스템이 종료될 때까지 항상 작동ㄹ합니다.

일반적으로 /boot 디렉터리 또는 운영체제 내부에 포함되어 있습니다. 


OS, 커널, 파일시스템 비교


 1. OS는 사용자와 하드웨어 사이에서 중간 역할을 하는 소프트웨어

  CPU, 메모리, 디스크 등의 자원 관리

  프로그램 실행 및 스케줄링

  파일 관리(파일 시스템을 통해)

  입출력 장치 제어

  사용자 인터페이스 제공(CLI나 GUI)

 ※OS는 커널+각종 유틸리티+시스템 라이브러리 등을 모두 포함하는 전체 시스템 관리 프로그램


 2. 커널(Kernel)

  커널은 OS의 핵심 부분(Core)으로 하드웨어를 직접 제어하고 자원을 배분

  프로세스 관리 : 어떤 프로그램이 CPU를 사용할지 결정

  메모리 관리 : 프로그램이 사용할 메모리를 할당/회수

  디바이스 드라이버 관리 : 하드웨어(디스크, 키보드, 네트워크 카드 등) 제어

  시스템 콜 제공 : 응용 프로그램이 하드웨어 기능을 요청할 수 있는 인터페이스 제공


 3. 파일 시스템(File System)

  파일 시스템은 데이터를 저장장치(SSD, HDD 등)에 어떻게 구조적으로 저장하고 읽을지 관리

  파일과 폴더(디렉터리) 구조 관리

  파일 읽기/쓰기/삭제/권한 제어

  저장장치의 공간 관리


 4. 요약 비교



리눅스 커널


리눅스 커널(Linux Kernel)은 리누스 토르발스(Linus Torvalds)가 1991년에 처음 개발한 모놀리식 커널(Monolithic Kernel)입니다.

 · 오픈소스로 공개되어 전 세계 개발자들이 유지·개선 중

 · GNU 프로젝트의 도구들과 결합하여 우리가 흔히 말하는 리눅스 운영체제(Linux OS)로 발전

 · GPLv2 라이선스 하에 배포됨

 · 즉 리눅스 OS=리눅스 커널+GNU 유틸리티+배포판 구성 요소



리눅스 커널의 내부 구조

+-----------------------------------------------------+

|      사용자 공간(User Space)                                                  |

|    - 응용 프로그램, 셸, 라이브러리                                           |

+-----------------------------------------------------+

|   커널 공간(Kernel Space)                                                     |

|  시스템 콜 인터페이스(System Call Interface)                |

|  프로세스 관리(Process Scheduler)                                   |

|  메모리 관리(Virtual Memory Manager)                           |

|  파일 시스템(VFS, ext4, XFS, Btrfs 등)                                |

|  네트워크 스택(TCP/IP 등)                                                     |

|  디바이스 드라이버(Drivers)                                                  |

|  아키텍처 종속 계층 (Architecture-dependent code) |

+-----------------------------------------------------+

|  하드웨어 (CPU, 메모리, I/O 장치 등)                                    |

+-----------------------------------------------------+



리눅스 커널의 주요 종류 / 계열


리눅스 커널은 Mainline을 중심으로 여러 형태로 분화되어 있습니다.


이 분화는 안정성, 성능, 하드웨어 지원, 실시간성 등을 기준으로 나뉩니다.


 1. Mainline Kernel

 리누스 토르발스가 직접 관리하는 공식 리눅스 커널

 최신 기능과 드라이버 포함

 새로운 버전은 약 2~3개월 주기로 출시

 예 : Linux 6.11, Linux 6.12-rc1 등

 개발자와 커널 해커들이 사용하는 기본 커널

 완전한 안정성보다 새 기능 테스트에 초점

 2. Stable Kernel

 Mainline에서 버그 수정과 보안 패치를 적용한 안정 버전

 각 버전은 약 2~3년간 유지

 Greg Kroah-Hartman(GKH)가 주로 유지보수

 예 : 6.6.x, 6.1.x(LTS 중 하나로도 지정 가능)

 일반적인 리눅스 배포판(Ubuntu, Fedora 등)이 사용하는 안정 커널 라인

 3. LTS(Long-Term Support) Kernel

 특정 안정 커널 버전을 5~10년간 유지보수

 서버, 임베디드 시스템, 산업용 장비 등에서 사용

 예 : 5.4 LTS(2025년까지 지원), 6.1 LTS(2026년까지 지원), 6.6 LTS(2029년까지 지원)

 기업용 배포판(Ubuntu LTS, RHEL, Android 등)에서 가장 많이 사용됨

 4. Distribution Kernels

 리눅스 배포판마다 커널을 커스터마이징해서 배포(드라이버, 보안 패치, 커널 설정 옵션 등이 다름)

 5. Real-Time Kernel(PREEMPT_RT)

 리눅스 커널의 실시간성(Real-Time)을 강화한 버전

 PREEMPT_RT 패치를 적용하여 인터럽트 지연 최소화

 사용 예 : 산업 제어, 로봇 제어, 오디오/비디오 처리, 항공 시스템 등

 우선순위 높은 작업이 즉시 실행되도록 보장

 6. Customized / Vendor Kernels

 특정 회사나 제품용으로 수정된 커널

 예 : Google Android 커널 → 스마트폰용

     NVIDIA 커널 모듈 → GPU 연동

     AWS Graviton 커널 → 클라우드 최적화



리눅스 커널 버전 표기 방식


리눅스 커널 버전은 다음과 같은 형식으로 표기됩니다. 

[주버전].[부버전].[패치레벨]-[릴리스 후보]

예 : 6.12.0-rc3 → 6.12 버전의 세 번째 release candidate

    6.6.45 → 6.6 안정화 버전의 45번째 패치 릴리스



리눅스 커널 계열 요약






📧 nkm_biz@mdsit.co.kr     ✍️ 문의남기기