---
title: CachyOS Kernel Manager로 Linux 커널 및 Sched-ext 프레임워크 관리하기
description: CachyOS Kernel Manager는 커널을 관리하는 강력한 도구로, 사용자가 커널을 쉽게 설치하거나 사용자 지정 커널을 간편하게 빌드할 수 있게 해줍니다.
tableOfContents:
  minHeadingLevel: 1
  maxHeadingLevel: 4
---

import ImageComponent from '~/components/image-component.astro';

저장소에서 커널 설치하기
---------------------------------------

CachyOS Kernel Manager를 사용하면 모든 Arch Linux 저장소에서 커널을 간단하게 설치하고 관리할 수 있습니다.

커널을 설치하려면 `CachyOS Kernel Manager` 애플리케이션을 실행하고, 사용 가능한 모든 옵션 목록에서 원하는 커널의 상자 `[]`를 체크한 뒤 `Execute`를 누르면 커널 설치가 시작됩니다.

커널을 제거하려면 제거하려는 설치된 커널 옆의 상자 `[]` 체크를 해제하고 다시 `Execute`를 누르면 됩니다.

<br />
<ImageComponent imgsrc={import('~/assets/images/cachyos-km1.png')} />

:::note
이미 설치된 커널을 선택하면 `Execute` 버튼을 사용할 수 없습니다.
:::

사용자 지정 CachyOS 커널 구성 및 빌드하기
---------------------------------

<br />
<ImageComponent imgsrc={import('~/assets/images/cachyos-km2.png')} />

:::note
CachyOS Kernel Manager는 **CachyOS 변형 커널**용 사용자 지정 커널을 빌드하도록 특별히 설계되었으며, 표준 Arch Linux 커널이나 다른 변형 커널의 빌드 또는 구성을 지원하지 않습니다.
:::

*시작하려면 Kernel Manager를 열고 `Configure` 버튼을 클릭하여 원하는 스케줄러, 틱 레이트 등 다양한 설정을 조정합니다. 원하는 변경을 마쳤으면 `Build kernel`을 클릭하여 사용자 지정 CachyOS 커널 빌드를 시작합니다.*

**빌드된 커널 패키지와 캐시는 다음 위치에 저장됩니다:** `~/.cache/cachyos-km/`

**사용 가능한 구성 옵션:**

* `Custom package name`: 이 옵션으로 커널 이름을 원하는 대로 지정할 수 있습니다. 예: `linux-custom-cachy`
* 스케줄러(BORE, RC, RT, RT+BORE, EEVDF 및 BMQ)
* CachyOS 구성 활성화
* nconfig, menuconfig, xconfig 또는 gconfig를 통한 구성 조정
* NUMA 활성화/비활성화
* Modprobed-db 활성화/비활성화
* KBUILD CFLAGS(-O3 또는 -O2)
* 성능 governor를 기본값으로 설정
* BBR3 활성화
* 틱 레이트 선택(100Hz, 250Hz, 300Hz, 500Hz, 600Hz, 750Hz, 1000Hz)
* Tickless 모드(idle, periodic, full)
* 선점 방식(Full, Voluntary 또는 Server)
* Transparent Hugepages(Always 또는 Madvise)
* DAMON 활성화/비활성화
* 자동 CPU 아키텍처 감지 활성화/비활성화
* 특정 CPU 아키텍처에 대한 커널 최적화 적용
* LTO 활성화(Full, Thin, No)
* ZFS 모듈 빌드
* NVIDIA 비공개 모듈 빌드
* NVIDIA 오픈 모듈 빌드
* 디버그 정보/심볼이 포함된 vmlinux 포함
* Kernel Manager 구성 프리셋 불러오기/저장: `(관리자 자체에서 생성한 프리셋만)`
* 커널 패치 관리(원격 및 로컬 지원)

*커널 빌드가 성공적으로 완료되면 커널 설치를 위해 sudo 비밀번호를 입력하라는 메시지가 표시됩니다.*

## Sched-ext 프레임워크 관리

:::caution[정상적으로 작동하려면 동작 가능한 polkit 에이전트가 필요합니다.]
참고용으로 다음 **[Arch Wiki 페이지를 확인하세요.](https://wiki.archlinux.org/title/Polkit#Authentication_agents)**
:::

Kernel Manager는 sched-ext 스케줄러를 관리하고 제어하기 위한 그래픽 사용자 인터페이스(GUI)를 제공합니다. 메인 창에서 `sched-ext scheduler config` 버튼을 클릭하여 GUI에 접근할 수 있습니다.

<br />
<ImageComponent imgsrc={import('~/assets/images/cachyos-km3.png')} />

이 GUI에서는 다음을 수행할 수 있습니다.

- 서로 다른 sched-ext(scx) 스케줄러 간 전환.
- 스케줄러 서비스 활성화 또는 비활성화.
- 현재 실행 중인 스케줄러 확인.
- 스케줄러 플래그와 프로필 설정.

이를 위해 Kernel Manager는 `/etc/scx_loader.toml`에 저장된 구성을 사용하는 `scx_loader`를 사용합니다.

`scx_loader` 구성 파일에 대한 자세한 내용은 [이 문서](https://github.com/sched-ext/scx-loader/blob/main/crates/scx_loader/configuration.md)를 확인하세요.

- `scx_loader`는 어떻게 작동하나요?
    - 스케줄러와 프로필을 선택하면 scx_loader가 선택된 프로필로 스케줄러를 시작하고, 재부팅 후에도 유지되도록 이 구성을 `/etc/scx_loader.toml` 파일에 저장합니다. 다음은 `Gaming` 프로필로 `scx_bpfland`를 선택했을 때 파일이 어떻게 보이는지 보여주는 예시입니다.
        ```toml
        default_sched = "scx_bpfland"
        default_mode = "Gaming"

        [scheds.scx_bpfland]
        auto_mode = []
        gaming_mode = ["-m", "performance"]
        lowlatency_mode = ["-k", "-s", "5000", "-l", "5000"]
        powersave_mode = ["-m", "powersave"]
        ```

### 스케줄러 프로필

- "프로필"은 무엇을 위한 것인가요?
  - 프로필은 "Gaming" 같은 특정 사용 사례에서 효과를 높이기 위해 검증된 조합을 바탕으로 플래그를 수정하는 스케줄러용 프리셋입니다.

프로필에 대한 모든 자세한 내용은 [스케줄러 가이드](/configuration/sched-ext#scheduler-guide-profiles-and-use-cases)에서 확인하세요.
