Какое ядро linux выбрать

Обновлено: 03.07.2024

Улучшенный Linux 4.15 победил Spectre Patches

Как оказалось, задержка выпуска ядра Linux 4.15 также вызвана проблемами безопасности.

Внедрены такие изменения: защита от атак Meltdown и Spectre, поддержка архитектуры RISC-V, интеграция прослойки DC (Display Core) в драйвер amdgpu, контроллер ресурсов CPU для cgroup2, поддержка технологии AMD Secure Encrypted Virtualization, оптимизация энергопотребления на системах с SATA ALPM, поддержка протокола ThunderboltIP, удаление звуковой подсистемы OSS.

На процессорах Intel, Linux теперь поддерживает функцию «Предотвращение инструкций пользовательского режима» (UMIP), которая призвана ограничить риск эскалации привилегий.

Что изменилось в 4.15 Linux

Новая версия ядра включает 15 тысяч исправлений от 1600 разработчиков, размер патча - 46 Мб (изменения коснулись 13177 файлов, добавлено 611097 строк кода, удалено 287446 строк).

• 51% всех изменений представленных в 4.15 ядре, связаны с драйверами устройств,

• примерно 16% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур

• 12% связано с сетевым стеком

• 4% обновлений затронут файловые системы

• 3% повлияют на внутренние подсистемы ядра.

Новая версия ядра включает новый cgroupv2-enabled, который улучшает использование ограничений процессоров, а также новый флаг MAP_SYNC mmap (2), который позволяет записывать в большее количество файловых систем в постоянной памяти.

Кто вносил изменения

Около 1600 разработчиков занималось разработкой новой версии Linux 4.15.

• 11.3% изменений внесено сотрудниками компании Intel,

• 10.7% изменений подготовлено сотрудниками AMD,

28 января Microsoft выпустила аварийное внеплановое обновление Windows, которое отключает исправление для проблемы CVE-2017-5715 (Spectre) из-за проблем со стабильностью, вызывающие потерю данных и перезагрузку системы.

Проблема со Spectre смягчается в Linux 4.15 при помощи кода retpoline, который был первоначально разработан Google. Reptoline помогает избежать утечек данных от ядра к пользователю, ограничивая спекулятивные косвенные ветвления в процессах ЦП.

Торвальдс также отметил, что еще предстоит проделать большую работу по дальнейшей защите пользователей от уязвимостей Meltdown и Spectre. Тем не менее, он подчеркнул, что Linux 4.15 представляет собой нечто большее, чем просто исправления уязвимостей процессора.

В настоящее время Linux поддерживает технологию AMD Secure Encrypted Virtualization (SEV).

На процессорах Intel Linux теперь поддерживает функцию «Предотвращение инструкций пользовательского режима» (UMIP), которая призвана ограничить риск эскалации привилегий.

Одновременно Латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 4.15-Linux-libre 4.15-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем.

Как установить новое ядро ​​Linux 4.15

Если вы продвинутый пользователь, идеальным является загрузка этой новой версии ядра и ручная компиляция в системе.

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

Мир Linux обширен и иногда требуется приложить немало усилий для его изучения. Но время идёт и платформа становится всё популярней среди обычных пользователей, которые не хотят тратить время на изучение скучных мануалов и проведения ненужных тестов. Сегодня речь пойдёт о Kernel (Ядрах) Linux, мы протестируем основные кастомные ядра Linux и сведём их в битве за звание лучшего игрового фундамента нашей системы.


Битва вошедшая в легенду

Введение

Существует большое количество пользовательских ядер, которые мало чем отличаются от стандартного, но как говорится «Дьявол кроется в деталях». Даже небольшое изменение переменных и использование альтернативных модулей, позволяет добиться сногсшибательных результатов и полностью переориентировать ядро на выполнение ранее недоступных задач. В основном ядра делятся на:

  • Бинарное ядро — обычное ядро, что вы стягиваете с архива вашего дистрибутива, может обновляться автоматически и не требует сборки, ибо изначально собрано для множество машин.
    Типичные представители таких ядер: Linux, Linux-zen.
  • Нативное ядро — обычно представляет собой кастомное ядро, что собирается из исходников под вашу систему с заданными флагами. Не может быть обновлено без пересборки. Максимальная производительность.
    Типичные представители таких ядер: Linux-lqx, Linux-xanmod, Linux-rt.

Тестирование производилось в

Все тесты производятся по три раза во избежание погрешности.

Симуляция обыденной работы
Geekbench 5

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

Работа с OpenGL
Superposition Benchmark

На удивление, несмотря на упор теста в гпу при средних настройках, мы опять наблюдаем преимущество zen ядра. А также можно отметить, что из-за особенностей теста в обсчёте физики, Linux-rt набирает дополнительные балы, ибо особенность RT ядра это выполнение сверхточного обсчёта без задержек.

Goverlay — призван показать чистую выжимку производительности из железа с шагом 5 секунд .

ЯдраШаг 1 (FPS)Шаг 2 (FPS)Шаг 3 (FPS)Шаг 4 (FPS) Шаг 5 (FPS)Шаг 6 (FPS)
Standart5967.1766001.9596062.946 6017.4436012.3985887.241
Zen6045.4726084.305 6026.536 6091.624 6025.0486079.093
LQX6118.435 6126.3316126.7356104.2626125.4396130.997
RT5632.043 5658.1495651.1335661.9315652.8555660.478

Ещё один тест лишь подтверждает уверенное лидирование LQX и Zen ядра.

Deus Ex: Mankind Divided
БинарныеМинимальный FPSСредний FPSМаксимальный FPS
Standart324257
Zen334459
LQX364764
RT304156.6

Если перейти на графики (тыкнуть название ядра), то отчётливо видно, что наибольший результат за игровым ядром LQX, ибо он обеспечивает максимальную производительность. Следом идёт Zen, что обеспечивает плавность без проседаний. Все остальные ядра показали плачевный результат.

Counter-Strike: Global Offensive

Тестирование на минимальных настройках графики, без упора в гпу, показывает преимущество LQX и Zen ядра.

Выводы

Несмотря на заявление отечественных «Гуру» Linux, замена ядра может существенно повысить вашу производительность и добавить из воздуха до 10-20% чистой производительности, что может стать спасением для геймеров, которые совсем недавно перешли с Windows и ещё не разобрались, как можно выжимать максимум.

Обычно, когда мы говорим о Linux, мы обычно делаем это в отношении таких распределений, как Ubuntu, Debian, Mint и т. Д. Однако эти дистрибутивы не являются операционными системами как таковыми, а скорее являются «адаптациями» операционной системы с открытым исходным кодом: Linux. И поэтому, несмотря на особенности каждого из них, все они имеют одну и ту же основу, то, что мы знаем как Ядро Linux .

Linux, как указано в его собственной документации, он был рожден как клон другой операционной системы под названием Unix. В частности, как альтернативная система, вдохновленная Minix (который, в свою очередь, клонировал концепции Unix). Благодаря своим свойствам Linux является реальной операционной системой, хотя никто не использует ее как таковую, а скорее использует дистрибутивы, поскольку с ними она становится намного более полезной и простой в использовании.

По этой причине обычно не говорят " Я собираюсь установить Linux ”Относится к конкретной операционной системе, а скорее к тому, что мы устанавливаем версии или дистрибутивы этого ядра, созданные компаниями или сообществом, которые имеют одну и ту же основу: ядро.

Что такое ядро ​​и для чего оно

Ядро Linux - это ядро ​​операционной системы . Это самая важная часть программного обеспечения в любой операционной системе. Windows имеет собственное частное ядро, Apple есть своя (кстати, основанная на Unix), и Linux - это ядро используется всеми дистрибутивами. И его основная функция - управлять компьютерным оборудованием.

В частности, это ядро ​​отвечает за управление системной памятью и временем процесса , управляя всеми Процессы , управление система звонки и связи между процессами и позволяя всему программному обеспечению иметь доступ к оборудованию , особенно подключенную периферию. к компьютеру.

Ядро настолько важно при управлении оборудованием, что его более чем 28 миллионов строк кода, по большей части это драйверы. И это, хотя и хорошо для совместимости, начинает создавать проблемы для производительности.

Ядро Linux

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

Паника в ядре

Версии

Это правда, что текущие версии ядра не имеют ничего общего с первыми из 1991 года. Однако это ядро ​​постоянно развивается. И каждые несколько недель мы обычно видим новые релизы. Но не все одинаково важны, так как в большой степени это зависит от их нумерации.

  • а указывает на версия. Это число меняется в наименьшей степени, поскольку переход обычно выполняется только при очень больших изменениях в системе. За всю свою историю он менялся только 5 раз: в 2004 г., для версии 1.0, в 2006 г., для версии 2.0, в 2011 г., для версии 3.0, в 2015 г., для версии 4.0 и в 2019 г., чтобы дать начало текущей версии. , 5.0.
  • b указывает подрывная деятельность. Когда выпускаются новые версии, но на самом деле это незначительные обновления (новые драйверы, оптимизации, исправления и т. Д.), То вместо изменения версии меняется номер подрывной версии.
  • c указывает на пересмотр уровень . Это число часто меняется, например, при внесении незначительных изменений, таких как исправления безопасности, исправления ошибок и т. Д.
  • d - последний подуровень версии. Он почти не используется, но зарезервирован, поэтому, если будет выпущена версия с очень серьезной ошибкой, новая версия будет выпущена с этим подуровнем, включающим исключительно исправление указанной серьезной ошибки.

Все версии ядра Linux являются общедоступными и имеют открытый исходный код. Мы можем их найти в этой ссылке , Но они не компилируются, скорее сами пользователи должны компилировать их, чтобы иметь возможность использовать их в своем дистрибутиве. И это не совсем простая задача. К счастью, сообщества, ответственные за разработку различных дистрибутивов, обычно предоставляют нам скомпилированные и оптимизированные версии ядра, которые мы можем установить как любой патч.

Какую версию Linux выбрать

Когда мы говорим о программном обеспечении, мы всегда рекомендуем иметь самую последнюю версию всего. Это лучший способ гарантировать, что из-за нарушения безопасности наш компьютер окажется под угрозой. С ядром Linux то же самое, всегда рекомендуется иметь последнюю версию. Однако всегда нужно делать это осторожно.

Ubuntu 20.04

Одна из причин, по которой ядро ​​такое большое, заключается в том, что оно ничего не удаляет. Столь же старый, как он есть. Благодаря этому можно продолжать использовать последние версии Linux на первых компьютерах, где он был впервые запущен в 1991 году. Каждое обновление, которое оно обычно делает, добавить драйверы и изменить функции для оптимизации общая работа ПК.

Но может случиться так, что версия содержит ошибку, из-за которой наш компьютер не работает должным образом, и даже производительность не соответствует ожидаемой. В этом случае просто переустановка предыдущей версии должен вернуть операционную систему в нормальное состояние. Хотя мы потеряем поддержку более новых аппаратных компонентов.

Лучшим и самым простым для большинства является обновление ядра по мере обновления дистрибутива из его репозиториев. Таким образом, мы избежим этих проблем, «всегда будучи в курсе».

Ядро - это операционная система?

  • Контроллер демона , Будь то Init.d, Systemd или любое другое подобное программное обеспечение, необходимо иметь подсистему над ядром, которая отвечает за запуск всех процессов (демонов), необходимых для того, чтобы ядро ​​начало работать. Без него у нас есть только много строк кода, которые не будут выполнены.
  • Процессы , Демоны, демоны или более известные как процессы - это все компоненты, которые остаются загруженными в системную память (управляемую ядром) и позволяют Linux функционировать. Например, графический сервер - это демон, который будет управлять рабочим столом.
  • Графический сервер , Известный как X, он отвечает за возможность видеть графику на экране. Если мы собираемся использовать Linux в текстовом режиме из терминала, в этом нет необходимости. Но если мы собираемся использовать его с десктопом, необходим рабочий x-сервер.
  • Стол письменный. Как следует из названия, рабочий стол компьютера, где у нас будут все наши программы и где будут открываться окна. Для Linux существует множество рабочих столов, таких как GNOME, KDE или LXDE. Каждый со своими характеристиками, достоинствами и недостатками.
  • Программы. Все запускаем с рабочего стола. Это уже самый высокий уровень и точка, через которую мы взаимодействуем с компьютером.


Когда ядро ​​и все остальное работает согласованно, тогда мы можем говорить об операционной системе. Или что то же самое, Распределение Linux .

Выбор ядра Linux по умолчанию

Загрузить ядро Linux единожды, проверить стабильность работы ядра, выбрать ядро для постоянной загрузки (grub) по умолчанию. Обновление ядра задача ответственная и когда обновление выполняется с официальных репозиториев производителя ОС, то обычно проблем не бывает.

Так или иначе 100%-ой гарантии старта ОС с новым ядром никто дать не сможет. Хорошо когда под руками есть физическая консоль сервера и мы можем перезагрузив линукс в меню GRUB выбрать работоспособное ядро, но в случае с виртуальными частными серверами у клиента его купившего нет такой возможности.

После установки/обновления ядра, в большинстве ОС Linux, оно попадает в файл /etc/grub.conf, где также прописано загружаемое по умолчанию ядро (kernel). Файл /etc/grub.conf выглядит примерно следующим образом:

В примере выше при старте ОС всегда по умолчанию используется ядро под номером "0" (default=0). Для выбора ядра загружаемого единожды при старте Linux нужно выполнить одну из перечисленных ниже команд:

После старта проверяем версию ядра uname -a и если там указана именно та версия которую мы выбрали для загрузки единожды, то в файле vi /etc/grub.conf выбираем ядро для загрузки по умолчанию под нашим номером "1" (ака default=1), а если же сервер остался недоступен, то его нужно запустить/перезагрузить удалённо (через веб консоль) или локально (на физической консоли).

Подобные манипуляции помогут максимально безопасно удаленно сменить ядро Linux по умолчанию предварительно проверив его нормальную работу.

Рекомендуемый контент

Вы не любите рекламу!? Напрасно!:) На нашем сайте она вовсе ненавязчивая, а потому для нашего сайта можете полностью отключить AdBlock (uBlock/uBlock Origin/NoScript) и прочие блокировщики рекламы! AdBlock/uBlock может препятствовать нормальной работе системы поиска по сайту, отображению рекомендуемого контента и прочих сервисов Google. Рекомендуем полностью отключить блокировщик рекламы и скриптов, а также разрешить фреймы (aka iframe).

Читайте также: