Linux zen kernel debian

Saved searches

Use saved searches to filter your results more quickly

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

Zen Patched Kernel Sources

License

zen-kernel/zen-kernel

This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Sign In Required

Please sign in to use Codespaces.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Launching Xcode

If nothing happens, download Xcode and try again.

Launching Visual Studio Code

Your codespace will open once ready.

There was a problem preparing your codespace, please try again.

Latest commit

This is the 6.4.3 stable release * tag 'v6.4.3': Linux 6.4.3 fork: lock VMAs of the parent process when forking bootmem: remove the vmemmap pages from kmemleak in free_bootmem_page mm: call arch_swap_restore() from do_swap_page() mm: lock newly mapped VMA with corrected ordering mm: lock newly mapped VMA which can be modified after it becomes visible mm: lock a vma before stack expansion

Git stats

Files

Failed to load latest commit information.

Источник

Лучшие модифицированные ядра Linux

Ядро Linux – это основа любого дистрибутива, а учитывая их количество, нет ничего удивительного в том, что разработчики модифицируют его под себя. Большая часть дистрибутивов содержит патчи для лучшей совместимости со своими компонентами.

Есть и такие ядра, которые также модифицируют, но при этом не привязывают к определённому дистрибутиву. О таких ядрах и пойдёт речь. Одни из них повышают производительность, другие снижают задержки, третьи нацелены на высокий уровень безопасности. В этой статье мы собрали самые интересные модифицированные ядра Linux.

Лучшие модифицированные ядра Linux

1. pf-kernel

Ядро pf-kernel содержит в себе несколько значимых патчей. Вот некоторые из них:

  • патч для лучшей работы компилятора GCC;
  • патч против утечек памяти;
  • патч для создания виртуальных видеоустройств (полезно при проведении стримов);
  • патч BBR для эффективной обработки пакетов TCP;
  • и множество других более мелких улучшений.
Читайте также:  Exit code 203 linux

Ядро примечательно тем, что имеются сборки для различных архитектур процессоров. Конечно, большой прибавки производительности это не даст, но на некоторых ноутбуках такое ядро позволит более эффективно использовать энергосберегающие функции.

2. XanMod

Ядро реального времени не сделает из Linux настоящую операционную систему реального времени (ОС РВ), но поможет приблизиться к этому. Оно нужно для того, чтобы минимизировать задержки от момента поступления прерывания и до выполнения команды и гарантировать минимальное значение этих задержек.

Современное ядро и без модификаций способно обеспечить задержку в районе 1 мс, но при этом могут проскакивать значения в районе 10-100 мс. Это может быть критично при звукозаписи, обработке сетевых пакетов или сигналов с критически важных датчиков.

Есть две реализации ОС РВ: патч preempt_rt (он включён по умолчанию в ядре 5.15, а также в модифицированных ядрах, вроде XanMod-rt), опирающийся на стандарт POSIX и запуск ядра Linux поверх микроядра Cobalt или Mercury (фреймворк Xenomai) или же наноядра Adeos (RTAI).

Xenomai показывает хорошие результаты, снижая джиттер до минимума. RTAI напротив, пытается получить минимально возможные задержки, при этом их колебания будут сильнее. И в том, и в другом случае надо модифицировать драйвер устройства. С патчем preempt_rt достаточно лишь внести коррективы в саму программу, повысив приоритет потоков, но остальные, менее важные компоненты системы станут менее отзывчивыми.

4. Grsecurity

Grsecurity — это набор патчей для ядра, призванных повысить его безопасность. Основной компонент — PaX, он модифицирует код таким образом, что закрывается целый ряд атак. Он защищает выделенную под код память, делая её не перезаписываемой. Если какая-то программа попытается внести изменения в эту область памяти, то она немедленно будет закрыта. Также область данных не может содержать исполняемый код, а сами страницы памяти записываются в произвольном месте.

Такой подход не может защитить от самих атак, но сделает их неэффективными. Например, переполнение буфера не приведёт к возможности изменить код, и даже получить данные едва ли получится, так как результат практически невозможно предсказать.

Это ядро будет полезно в первую очередь на серверах, стоит учесть и то, что оно распространяется по подписочной системе. Стоимость подписки составляет около 200 долларов в месяц. Также можете рассмотреть SELinux, однако, это ядро в основном направлено на разграничение прав доступа к файлам и регулирование сетевых политик.

5. Zen-kernel

Zen-kernel не может похвастать большим количеством существенных отличий от стандартного ядра. Ранее его ставили для того, чтобы использовать альтернативный планировщик BFS, а затем MuQSS. К сожалению, ни тот ни другой больше не разрабатываются, о прекращении развития последнего стало известно совсем недавно 4 сентября 2021 года.

Читайте также:  Disable selinux on oracle linux

Планировщик действительно был полезен, особенно в работе с играми. Если же вам нужно ядро, оптимизированное под работу с эмуляторами консолей и Wine, то обратите своё внимание на kernel-tkg, но учтите, что патчи рассчитаны преимущественно на процессоры Intel.

На Zen-kernel также основано ядро Liquorix. Оно практически идентично, за тем лишь исключением, что применено несколько патчей для лучшей совместимости с Debian.

6. Linux-Libre

Многие из вас знают о том, что ядро Linux разрабатывается по лицензии GNU GPL, что обуславливает открытость кода. Но при этом в ядре содержатся драйверы устройств, и не всегда есть возможность получить драйвер с открытым кодом. В результате в ядре появляются кляксы (блобы), улучшающие поддержку устройств, но представляющие потенциальную опасность.

Ядро Linux-Libre содержит только открытый код, разработчики исключили из его состава все проприетарные и обфусцированные драйверы. Таким образом ядро соответствует требованиям проекта GNU и может стать основой свободной операционной системы GNU.

На практике такое ядро крайне сложно использовать. У Linux и без этого не лучшая поддержка драйверов, а с этим ядром придётся тщательно выбирать комплектующие для компьютера. Например, вы не сможете использовать графику AMD или Nvidia. Несмотря на то, что есть открытые драйверы Mesa и Nouveau, базовый драйвер видеокарт закрыт.

Выводы

Как видите, модифицированные ядра создаются для разных целей. Для игр неплохим решением станут XanMod или TKG-pds. Для серверов подойдут ядра pf-kernel и Grsecurity, хотя последнее вряд ли применимо для малого бизнеса.

Ядра реального времени совсем скоро утратят свою актуальность, так как необходимые изменения внесены в последнюю версию оригинального ядра. В любом случае эти ядра не рассчитаны на повышение производительности, их цель — гарантированное выполнение команд за отведённое время.

За последнее десятилетие модифицированные ядра частично утратили свою актуальность. Многие патчи были перенесены в основную ветку ядра. Прошли те времена, когда такие ядра давали прирост 10-20%. Но технологии не стоят на месте, меняются запросы бизнеса и пользователей. Это позволяет создавать новые патчи с учётом потребностей рынка.

И помните, не только ядро может повысить производительность и отзывчивость системы. Есть множество других способов внести коррективы в её работу, например, замена стандартных библиотек, в ряде случаев на musl libC показывает хорошие результаты.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Как установить zen-ядро (liquorix) в Debian/Ubuntu

liquorix linux kernel

Вы хотите увеличить скорость работы своей операционной системы Linux в играх и мультимедийных приложениях? Тогда вам необходимо оптимизированное ядро от Liquorix!

Читайте также:  Сбросить настройки firefox linux

Liquorix — это оптимизированное ядро собранное из исходных кодов, но с использованием лучшей конфигурации. Оно повышает производительность как обычной рабочей станции, так и работы мультимедийных приложений и игр.

Оно заменяет основное ядро в системе, поставляемое производителем дистрибутива по умолчанию.

После чего появляется возможность гибкой настройки ядра (Zen Interactive Tuning) ​​на скорость реагирования за счет пропускной способности и энергопотребления.

Основные особенности

Посмотрите примерный график

--- Virtual Memory Subsystem --------------------------- Mem dirty before bg writeback. 10 % -> 20 % Mem dirty before sync writeback: 20 % -> 50 % --- Block Layer ---------------------------------------- Default MQ scheduler. mq-deadline -> bfq --- CPU Scheduler (CFS) -------------------------------- Scheduling latency. 6 -> 3 ms Minimal granularity. 0.75 -> 0.3 ms Wakeup granularity. 1 -> 0.5 ms CPU migration cost. 0.5 -> 0.25 ms Bandwidth slice size. 5 -> 3 ms --- CPU Scheduler (MuQSS) ------------------------------ Scheduling interval. 6 -> 4 ms ISO task max realtime use. 70 % -> 25 %
  • Планировщик процессов MuQSS: Планировщик процессов для игр, мультимедиа и загрузки в реальном времени.
  • Планирование с высоким разрешением: таймауты с высоким разрешением и тактовая частота 1000 Гц для точного планирования задач с низким уровнем джиттера.
  • Иерархический RCU на основе вытесняемого дерева: реализация RCU для систем реального времени.
  • Жесткое вытеснение ядра: наиболее агрессивное вытеснение ядра перед тем, как требуются исправления в реальном времени. Гарантирует отзывчивость системы в сценариях с высокой интенсивностью смешанных рабочих нагрузок.
  • Бюджетная очередь: правильный планировщик дисков, оптимизированный для использования на настольных компьютерах, высокая пропускная способность/низкая задержка.
  • TCP BBR2 Congestion Control: быстрое управление перегрузкой, максимизирует пропускную способность, гарантируя более высокие скорости, чем Cubic.
  • Бинарные сборки для популярных дистрибутивов Debian : Бинарные сборки производятся для стабильной, тестовой и нестабильной Debian. Сборки Ubuntu доступны в Liquorix PPA в тот же день в течение нескольких часов после выхода выпусков Debian.
  • Замена ядра распространения: правильная конфигурация стиля распространения, поддерживающая самый широкий выбор оборудования. Параметры паравиртуализации позволяют снизить накладные расходы при виртуализации.
  • Минимальная отладка: минимальное количество параметров отладки, включенных для увеличения пропускной способности ядра.

Как установить zen-kernel в Ubuntu/Debian

Предварительные требования Debian:

curl 'https://liquorix.net/add-liquorix-repo.sh' | sudo bash

Предварительные требования Ubuntu:

sudo add-apt-repository ppa:damentz/liquorix && sudo apt-get update

Ядро Liquorix можно установить с помощью мета-пакетов. Это гарантирует, что при каждом обновлении будет устанавливаться последняя версия ядра.

sudo apt install linux-image-liquorix-amd64 linux-headers-liquorix-amd64

Как удалить zen-ядро

Для удаления zen-ядра, необходимо перезагрузить систему и в grub загрузчике выбрать запуск с любым другим ядром (жмём Shift после включения ПК, выбираем пункт “Дополнительные параметры запуска” и запускаем ядро в названии которого нет слова liquorix).

После запуска системы в терминале вбиваем и тем самым удаляем все ядра liquorix:

Источник

Оцените статью
Adblock
detector