---
title: CachyOS Kernel
description: Features und Änderungen am CachyOS-Kernel
tableOfContents:
  minHeadingLevel: 1
  maxHeadingLevel: 4
---

Der CachyOS-Kernel ist ein angepasster Kernel, der Verbesserungen, Konfigurationen und Patches aus Upstream-Quellen nutzt.

## Features

### Leistungsoptimierungen

- **Erweiterte Kompilierung**: Hochgradig anpassbares PKGBUILD mit Unterstützung für die Compiler GCC und Clang
- **Link Time Optimization (LTO)**: Clang Thin LTO ist im Hauptpaket `linux-cachyos` standardmäßig aktiviert
- **Distributed ThinLTO**: Unterstützung für distributed Clang ThinLTO Builds zur Beschleunigung der Kernel-Kompilierung
- **Profile-Guided Optimization**: AutoFDO- und Propeller Profiling beim Standard-Kernel für eine optimale Codegenerierung ([Mehr erfahren](https://cachyos.org/blog/2411-kernel-autofdo/))
- **Kernel Control Flow Integrity (kCFI)**: Verfügbar bei Verwendung von LLVM für erhöhte Sicherheit
- **Timer-Frequenzoptionen**: Konfigurierbar zwischen 100Hz, 250Hz, 300Hz, 500Hz, 600Hz, 750Hz und 1000Hz (Standard: 1000Hz)
- **Architekturoptimierungen**: Unterstützung für x86-64-v3, x86-64-v4 und AMD Zen4 spezifische Builds
- **Compiler-Optimierungen**: Erweiterte GCC-Flags einschließlich `-fivopts` und `-fmodulo-sched`
- **PREEMPT_DYNAMIC**: Zur Laufzeit wählbare Preemption-Modi (full, lazy, voluntary, none)

### CPU-Verbesserungen

- **Mehrere Scheduler**: BORE-, EEVDF- und BMQ-Scheduler zur Optimierung für verschiedene Arbeitslasten
- **[POC Selector](https://github.com/masahitoS/scx_cake)**: Piece-Of-Cake fast idle CPU selector inspiriert von scx_cake, reduziert Wakeup-Latenz
- **CachyOS Sauce**: Eigene `CONFIG_CACHY`-Konfiguration mit Scheduler- und Systemanpassungen
- **AMD P-State-Verbesserungen**: Unterstützung für Preferred Core und die neuesten amd-pstate-Verbesserungen aus linux-next
- **Echtzeit-Unterstützung**: RT-Kernel-Builds mit BORE-Scheduler-Integration verfügbar
- **Low-Latency-Optimierungen**: Patches für verbesserte Reaktionsfähigkeit und reduzierten Jitter
- **sched/wait LIFO accept()**: Socket accept() wird in LIFO Reihenfolge verarbeitet für besser Cache Effizienz

### Netzwerk

- **[BBR3 TCP](https://github.com/google/bbr)**: BBRv3 Überlaststeuerung als separates Modul neben BBRv1 verfügbar

### Dateisystem & Speicher

- **ZFS-Unterstützung**: Integrierte ZFS-Dateisystemunterstützung mit vorkompilierten Modulen
- **NTFS-Verbesserungen**: Upstream-Korrekturen am NTFS-Treiber für die MFT-Mirrorvalidierung, die Überprüfung von Attributgrenzen und die Protokolldatei-Verarbeitung
- **MGLRU-Erweiterungen**: Verbesserte Handhabung des Zurückschreibens geänderter Daten (Dirty Writeback), vereinfachte Statistiken zur Speicherfreigabe (vmscan) sowie Cachy Sauce MM-Optimierungen (Schutz des Working-Sets bei LRU-gen, Anpassungen bei Kompaktierung und Wasserzeichen, Freigabe von Hugepages)
- **NVIDIA-Integration**:
  - Proprietäre NVIDIA-Treibermodule mit Patches
  - Unterstützung für Open-Source-NVIDIA-Treiber
  - Gebrauchsfertige Module im Repository
- **I/O-Scheduler-Verbesserungen**:
  - Verbesserte BFQ- und mq-deadline-Leistung
  - Unterstützung für den Multi-Queue-I/O-Scheduler in [ADIOS](https://github.com/firelzrd/adios) v3.2.0
- **VRAM-Cgroup (DMEM)**: Device-Memory-Controller zur Begrenzung der GPU-VRAM-Nutzung pro Cgroup im DRM-Subsystem

### Zusätzliche Features

#### Hardware-Unterstützung
- **AMD ISP4**: Neuer AMD-ISP-4-Kameratreiber für unterstützte Plattformen
- **Gaming-Hardware**: Steam-Deck-Patches (Audio, HW-Besonderheiten, HID), Unterstützung für ROG Ally sowie MSI-Claw-HID-Treiber (deckify)
- **Apple-Hardware**: Unterstützung für T2-MacBooks mittels apple-bce-Treiber im Staging-Bereich
- **ASUS-Hardware**: Erweiterte Kompatibilitätspatches für ASUS-Hardware
- **Lenovo-Hardware**: WMI-Akkuladebegrenzung, anpassbare GPU-/CPU-Attribute und capdata-debugfs
- **HP-Hardware**: Unterstützung für OMEN Slim- und OMEN MAX-Laptops via hp-wmi
- **Grafik**: HDR-Unterstützung aktiviert, AMDGPU min_powercap Override (`amdgpu_ignore_min_pcap`)
- **Anzeige**: HDMI-VRR auf AMD, ALLM- und passive VRR-Anschluss Eigenschaften, VESA-DSC-Bits-pro-Pixel-Analyse aus der EDID
- **Audio-Codecs**: Unterstützung für HDA-Side-Codecs AW88399 und MAX98390

#### Systemverbesserungen
- **Multimedia**: v4l2loopback-Module standardmäßig enthalten
- **Virtualisierung**: ACS Override-Unterstützung für VFIO/GPU-Passthrough
- **Upstream-Integration**: Ausgewählte Patches von Clear Linux und linux-next

#### Sonstiges

Der CachyOS-Kernel hat auch einige andere bemerkenswerte Features, die zwar subtil sind, aber die Benutzererfahrung verbessern:

- Enthält eine Debug-Variante des Kernels, die eine unstripped Kernel-Binärdatei für Debugging-Zwecke bereitstellt. Dieses Paket wird benötigt, um den Kernel mit AutoFDO zu profilen.
- [Binder](https://developer.android.com/reference/android/os/Binder), das für [Waydroid](https://waydro.id/) benötigte Modul, ist standardmäßig in der Kernel-Konfiguration aktiviert
und bereits [eingerichtet](https://github.com/CachyOS/linux-cachyos/blob/2f380e2b35c4ad9acda98296f638f93af3742533/linux-cachyos/config#L11037).

## Varianten

CachyOS bietet eine vielfältige Auswahl an Kernel-Optionen. Alle von uns bereitgestellten Kernel werden mit dem [CachyOS Base Patchset](https://github.com/CachyOS/kernel-patches) ausgeliefert.
Für jeden Kernel gibt es eine [entsprechende -lto-Variante](#namenskonvention-für-pakete), die
mit [clang](https://clang.llvm.org/) anstelle von [GCC](https://gcc.gnu.org/) gebaut wird.

- **linux-cachyos**
  - Der Standard-Kernel. Dies ist der empfohlene Kernel, wenn du dir nicht sicher bist, welchen du verwenden sollst.
  - 1000Hz Tickrate für verbesserte Reaktionsfähigkeit.
  - Mit Clang und ThinLTO gebaut.
  - Mit unserem eigenen [AutoFDO](https://cachyos.org/blog/2411-kernel-autofdo/)-Profil für verbesserte Leistung profiliert. [Skript](https://github.com/CachyOS/cachyos-benchmarker/blob/master/kernel-autofdo.sh), das zum Profilieren des Kernels verwendet wird.
- **linux-cachyos-bore**
  - Verwendet den [BORE](https://github.com/firelzrd/bore-scheduler) Scheduler.
- **linux-cachyos-bmq**
  - Verwendet den BMQ-Scheduler aus [Project C](https://gitlab.com/alfredchen/projectc/) von Alfred Chen.
    - `Unterstützt sched-ext nicht.`
- **linux-cachyos-deckify**
  - Der Standard-Kernel für Handhelds. Es wird **nicht empfohlen** und ist **nicht unterstützt**, einen anderen Kernel auf Handhelds zu verwenden.
  - Verwendet den [BORE](https://github.com/firelzrd/bore-scheduler) Scheduler.
  - Handheld-spezifische Patches zusätzlich zum Basis-Patchset, um die Kompatibilität und das allgemeine Erlebnis auf Handheld-Geräten zu verbessern.
- **linux-cachyos-eevdf**
  - Passt den Standard-Kernel-Scheduler für verbesserte Reaktionsfähigkeit an.
- **linux-cachyos-lts**
  - Basiert auf dem neuesten Long Term Support Kernel.
  - Verwendet den [BORE](https://github.com/firelzrd/bore-scheduler) Scheduler.
  - Minimal gepatcht im Vergleich zu anderen Kerneln, um maximale Stabilität zu gewährleisten.
- **linux-cachyos-hardened**
  - Verwendet den [BORE](https://github.com/firelzrd/bore-scheduler) Scheduler.
  - Enthält das [linux-hardened](https://github.com/anthraxx/linux-hardened) Patchset.
  - Kernel-Konfiguration basiert auf der [linux-hardened config](https://gitlab.archlinux.org/archlinux/packaging/packages/linux-hardened/-/blob/main/config).
    - Enthält sehr aggressives Hardening, das die Leistung und die Benutzererfahrung erheblich beeinträchtigt.
    - `Unterstützt sched-ext nicht.`
- **linux-cachyos-rc**
  - Basiert auf dem neuesten Mainline-Kernel aus [Linus's Tree](https://github.com/torvalds/linux/).
  - Hauptkernel zur Einführung neuer Features in unserem Patchset.
- **linux-cachyos-server**
  - Abgestimmt auf Server-Workloads im Vergleich zur Desktop-Nutzung.
    - 300Hz Tickrate.
    - Keine Preemption.
    - Standard EEVDF.
- **linux-cachyos-rt-bore**
  - Echtzeit-Preemption.
  - Verwendet den [BORE](https://github.com/firelzrd/bore-scheduler) Scheduler.

:::note
Sofern nicht anders angegeben, kannst du davon ausgehen, dass alle anderen Kernel-Varianten
dieselbe Konfiguration wie der Standard-Kernel haben.
:::

Bitte eröffne ein Issue im [linux-cachyos GitHub](https://github.com/CachyOS/linux-cachyos) für Vorschläge und Verbesserungen, die dem Standard-Kernel hinzugefügt werden können.

### Namenskonvention für Pakete

```sh
linux-cachyos # Basiskernelpaket für den Standardkernel. Mit Clang und ThinLTO kompiliert
linux-cachyos-hardened # Basiskernelpaket für den gehärteten Kernel. Mit GCC kompiliert
linux-cachyos-hardened-lto # clang-kompiliertes Gegenstück zu linux-cachyos-hardened
linux-cachyos-hardened-{,lto-}headers
linux-cachyos-hardened-{,lto-}nvidia
linux-cachyos-hardened-{,lto-}nvidia-open
linux-cachyos-hardened-{,lto-}zfs
linux-cachyos-hardened-{,lto-}dbg
```

## Vorkompilierte Kernel-Module

Um eine breitere Nutzerbasis zu bedienen, liefert CachyOS einige bekannte und häufig verwendete Kernel-Module zusammen mit dem Kernel aus. Das bedeutet, dass Benutzer diese Module
nicht mehr nach jedem Kernel-Update oder bei jeder neuen Kernel-Installation neu kompilieren müssen, sondern sie einfach aus dem Repository installieren können, da sie
bereits vorkompiliert sind. Dies macht alle `-dkms`-Pakete, die ein Benutzer möglicherweise hat und die das gleiche Modul wie die vorkompilierte Version bereitstellen, effektiv überflüssig.

### ZFS

[ZFS](https://openzfs.org/wiki/Main_Page) ist eines der vielen Dateisysteme, die in CachyOS unterstützt werden. Da es unter der
[CDDL](https://opensource.org/license/cddl-1-0) lizenziert ist, ist es inkompatibel mit der Lizenz des Linux-Kernels und kann daher nicht in den Haupt-Codebaum aufgenommen werden. Das mitgelieferte Modul enthält
die neuesten Upstream-Features und -Fixes, um die Kompatibilität mit dem neuesten Kernel sicherzustellen.

### NVIDIA

CachyOS liefert sowohl vorkompilierte Versionen der Closed-Source- als auch der [Open-Source](https://github.com/NVIDIA/open-gpu-kernel-modules/)-Kernelmodule aus. Da die Entwicklung
von NVIDIAs Kernel-Modul außerhalb des Haupt-Codebaums stattfindet und somit nicht dem Release-Zyklus des Kernels folgt, kann die Standardkonfiguration manchmal mit dem neuesten
Kernel inkompatibel sein. Als Workaround patcht CachyOS die Module mit von der Community erstellten Patches oder Patches, die direkt von NVIDIA bereitgestellt werden.

## FAQ

### Verbessert der Echtzeit-Kernel die Gaming-Performance?

Nein, tut er nicht. Der Echtzeit-Kernel macht viel mehr Code preemptible (unterbrechbar) im Vergleich zu einem normalen, vollständig preemptible Kernel. Das bedeutet, dass viel mehr Tasks (einschließlich
Gaming-Prozesse) häufig unterbrochen werden und Systemressourcen zwangsweise abgeben müssen, was zu einer schlechteren Leistung führt.

### Warum wird AutoFDO nicht für alle anderen Kernel-Varianten verwendet?

Weil es teuer im Build ist, da es im Grunde erfordert, den Kernel zweimal zu bauen, was mehr Zeit und Ressourcen für die Kompilierung bedeutet. Der Prozess, einen Kernel mit AutoFDO zu bauen, umfasst die folgenden Schritte:

1) Baue den Kernel mit aktivierten AutoFDO- und Debugging-Fähigkeiten.
2) Erstelle ein Profil, d.h. führe Arbeitslasten aus, um Profildaten für mögliche Optimierungen zu sammeln.
3) Baue den Kernel mit dem AutoFDO-Profil neu.

Daher ist es vorerst nur in der [linux-cachyos](/de/features/kernel#varianten) Variante vorhanden.

Für weitere Informationen zu AutoFDO, klicke [hier.](https://cachyos.org/blog/2411-kernel-autofdo/)
