Linux 7.0 RC3: статус разработки, риски и основные изменения ядра.

  • В Linux 7.0-rc3 постоянно вносятся необычно большие изменения, и Линус Торвальдс внимательно следит за его стабильностью.
  • В этой версии внесены улучшения в производительность, безопасность и поддержку оборудования, а также реализованы специальные оптимизации для процессоров AMD и Intel.
  • Ядро версии 7.0 станет ключевым для таких дистрибутивов, как Ubuntu 26.04 LTS и Fedora 44, которые примут его в качестве базовой версии.
  • Несмотря на новые функции, ветка 7.0 остается экспериментальной, и ее использование рекомендуется ограничивать тестированием и виртуальными машинами.

Ядро Linux 7.0

Развитие Linux 7.0 Ядро вступило в решающую и одновременно более бурную фазу, чем обычно. Третий кандидат на релиз, Linux 7.0-RC3Внесенные изменения настолько масштабны, что даже сам создатель патча, Линус Торвальдс, выразил обеспокоенность по поводу его размера на столь продвинутой стадии разработки.

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

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

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

Торвальдс признал, что масштаб Linux 7.0-rc3 Это необычно, но в то же время он настаивает, что после анализа изменений не видит ничего особенно тревожного. Большая часть роста объясняется очисткой кода, добавлением автоматизированных тестов (самотестирования) и внутренними корректировками, которые, теоретически, не должны влиять на стабильность.

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

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

Ключевые изменения в Linux 7.0-rc3: производительность, память и сеть.

К числу наиболее важных изменений в этом третьем предварительном релизе относятся изменения, касающиеся производительность памяти и сетидве критически важные области в серверах, центрах обработки данных и средах с интенсивными и работающими в режиме реального времени нагрузками (Преимущественное RT).

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

В сетевом модуле ядро ​​включает небольшую, но интересную оптимизацию в обработке входных и выходных событий. Разработчик Google Эрик Дюмазе скорректировал функцию epoll_put_uevent() воспользоваться этой техникой ограниченный доступ пользователейВпервые представленная в Linux 6.19.

Данная модификация заменяет несколько вызовов и инструкций. stac/clac Это связано с контролем доступа между пользовательским пространством и ядром, что снижает его влияние на определенные процессоры. В стресс-тестах сети, ориентированных на количество пакетов в секунду, улучшение составляет около Прирост производительности на процессорах AMD Zen 2 на 1,5%.Это скромная, но значительная цифра, учитывая, что каждую секунду обрабатываются миллионы пакетов.

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

Безопасность, виртуализация и серверы: акцент на AMD и Intel.

Linux 7.0 также подтверждает свою приверженность безопасность и изоляция в виртуализированных средахЭто особенно актуальная область для поставщиков облачных услуг и хостинговых компаний в Европе.

Одной из наиболее заметных нововведений является добавление поддержки следующих функций: IBPB-On-Entry в виртуальных машинах с AMD SEV-SNPЭта функция, разработанная в первую очередь для серверов с процессорами AMD EPYC следующего поколения, помогает лучше защитить контексты выполнения между гостевой и хост-системой, ограничивая потенциальные векторы атак, основанные на спекуляциях.

Со стороны Intel ядро ​​включает в себя корректировки в обнаружении топологий кластеризации Sub-NUMA (SNC) В некоторых современных моделях устраняются проблемы идентификации, которые могут повлиять на оптимальное распределение памяти и локализацию процессов в многопроцессорных системах.

В основе Linux 7.0 также лежат оптимизации, связанные с Интел ТСХ на чипах, которые это поддерживают, с целью восстановления части производительности, потерянной после обновлений безопасности в последние годы. Хотя подобные изменения тщательно проверяются, чтобы избежать повторного открытия уязвимостей, они могут значительно повысить производительность приложений, интенсивно использующих параллельные вычисления.

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

Расширенная поддержка оборудования и улучшенная совместимость.

Как и практически в каждой версии ядра, одним из столпов Linux 7.0-rc3 является расширение каталог поддерживаемых устройств а также доработка существующих контроллеров.

В список изменений включены новые идентификаторы и настройки для оборудования от таких производителей, как... ASUS, Dell, HP, Lenovo и OneXPlayer, y Raspberry PiЭто особенно важно для того, чтобы будущие дистрибьюторы могли легко распознавать ноутбуки и настольные компьютеры, которые появятся на европейском рынке в ближайшие месяцы.

Среди интересных деталей — ошибка, которая затронула Apple Magic Trackpad 2При подключении через USB ядро ​​некорректно отображало уровень заряда батареи. С новым кодом это периферийное устройство должно более органично интегрироваться в настольные системы Linux.

Кроме того, в ветке 7.0 продолжается внедрение предварительной поддержки и улучшений совместимости для архитектур процессоров, которые еще не вышли на рынок, таких как... Intel Nova Lake, Diamond Rapids или AMD Zen 6Благодаря этому ожиданию, когда оборудование поступит в продажу в Европе, многие дистрибутивы уже будут готовы использовать его возможности без необходимости установки дополнительных патчей.

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

Файловые системы и хранение данных: тестирование с Linux 7.0

Производительность файловая система Это еще одна область, где оценивается влияние Linux 7.0. Используя преимущества последних оптимизаций, были выполнены следующие действия. сравнительные тесты производительности с использованием одних из наиболее распространенных технологий хранения данных в серверах и рабочих станциях.

Тестирование производительности проводилось с использованием следующих методов: Новейший код для Linux 7.0 находится в разработке.В этом исследовании сравниваются четыре известные файловые системы в рамках свободной экосистемы: Btrfs, EXT4, F2FS и XFS. Каждая из них тестировалась с конфигурацией по умолчанию, чтобы отразить ситуацию, с которой столкнется любой администратор при установке дистрибутива без изменения расширенных настроек.

В случае BtrfsДополнительные тесты были также проведены путем отключения этой функции. Копирование при записи (COW)Это позволяет нам наблюдать, как эта функция влияет на скорость в сценариях с большим количеством операций записи.

Тестовая среда основана на сервер с процессором AMD EPYC 9745 и хранение NVMe PCIe 5.0В частности, использовался жесткий диск Solidigm D7-PS1010 (модель SB5PH27X038T). Перед каждым тестом файловые системы форматировались с нуля, чтобы обеспечить сопоставимость результатов.

При использовании такого высокопроизводительного оборудования, очень близкого к тому, что начинает развертываться в европейских центрах обработки данных, тесты предоставляют полезную информацию о том, как каждая файловая система ведет себя в сочетании с другими компонентами. Linux 7.0 и твердотельные накопители NVMe следующего поколения.

Соперничество между XFS, EXT4, Btrfs и F2FS

Четыре протестированные системы представляют собой совершенно разные подходы в мире Linux, и результаты показывают конкурентную и постоянно развивающуюся среду.

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

Btrfs Она позиционирует себя как современная альтернатива с расширенными функциями, такими как моментальные снимки, прозрачное сжатие и гибкое управление хранилищем. Тесты показывают, что в некоторых сценариях эти функции имеют свою цену, хотя отключение COW может повысить производительность в задачах с интенсивным использованием записи за счет некоторых преимуществ.

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

В этом раунде сравнительных тестов наилучшие результаты в различных сценариях показала модель, XFSОсобенно в высокопроизводительных средах с большими объемами данных. Это неудивительно: он уже много лет оптимизирован для серверов и центров обработки данных, и с выходом Linux 7.0 он еще больше укрепляет свои позиции в качестве... Очень надежный вариант для бизнес-инфраструктуры..

Тестирование файловых систем с Linux 7.0 пока не завершено.

В ходе первоначальных тестов также рассматривалась возможность включения других крупных файловых систем, таких как OpenZFS o Бкэшефс (в нестабильной ветке). Однако в текущих версиях этого по-прежнему нет. Они полностью совместимы с состоянием Linux 7.0 в Git.что вынудило их отложить анализ.

Ожидается, что по мере развития интеграции и стабилизации поддержки ядра 7.0 эти системы смогут участвовать в будущих тестах производительности. Их включение будет актуально для системных администраторов в Европе, которые уже используют OpenZFS в массивах хранения данных или рассматривают Bcachefs в качестве современной альтернативы.

До подтверждения этой совместимости текущая ситуация с производительностью хранилища в Linux 7.0 сосредоточена на наиболее проверенных вариантах, где XFS и EXT4 Они продолжают лидировать во многих успешных проектах.

Rust в ядре и очистка устаревших технологий

Помимо видимых улучшений производительности или поддержки оборудования, Linux 7.0 знаменует собой еще один шаг в фундаментальной трансформации: Постепенное внедрение Rust в ядро. а также удаление компонентов, считающихся устаревшими.

Первые шаги к принятию кода на Rust в ядро ​​начались около трех лет назад, и с тех пор этот язык стал неотъемлемой частью арсенала разработчиков ядра. Его главная цель — упростить написание более безопасных компонентов за счет уменьшения количества ошибок памяти, которые легко допустить в C.

Параллельно Торвальдс принял решение о дальнейшем отказе от устаревших технологий, которые больше не имеют смысла в современных системах. Символическим примером является прекращение действия протокола. HIPPI, стандарт 90-х годов, который малоактуален для современных компьютеров и лишь добавил сложности и потенциальных проблемных векторов.

Эти объединенные шаги — внедрение Rust и очистить старый код— Они указывают на несколько более лёгкое ядро ​​и, со временем, потенциально более безопасное. Хотя непосредственное влияние может быть неочевидным для конечного пользователя, это указывает на чёткое направление развития проекта.

Тот факт, что Linux 7.0 представляет собой особенно большую версию, объясняется также стремлением реорганизовать внутренние части ядра, заложив основу для будущих разработок, которые в ближайшие несколько лет появятся в европейских дистрибутивах.

Календарь, дистрибутивы и риски установки Linux 7.0-rc3

Текущий план работ предусматривает следующее: Стабильный релиз Linux 7.0 ожидается примерно в середине апреля.при условии, что в следующих версиях Release Candidate удастся уменьшить объем изменений и не возникнет ошибок в последний момент.

Этот график особенно важен, поскольку у нескольких крупных дистрибьюторов уже установлены даты выпуска. Например, компания Canonical готовится к этому. Ubuntu LTS 26.04Это версия с расширенной поддержкой, широко используемая в европейских компаниях и государственных учреждениях, и планируется, что она будет основана на ядре 7.0.

Нечто подобное происходит с Fedora 44В обоих случаях командам разработчиков дистрибутива необходим достаточно зрелый код, чтобы гарантировать... Стабильная поддержка с первого дня..

На данный момент сообщение от проекта ядра ясно: Linux 7.0-rc3 и остальные RC-версии предназначены для разработчики, тестировщики и опытные пользователи Те, кто хочет помочь доработать финальную версию. Установка этих сборок на основную рабочую станцию ​​или на производственные серверы считается рискованной.

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

Как сегодня попробовать установить Linux 7.0-rc3 на свою систему

Для тех, кто хочет поэкспериментировать с Linux 7.0-rc3, есть несколько вариантов, включая такие инструменты, как... Оркестратор обновлений в реальном временихотя все они сопровождаются предупреждением о том, что они экспериментальное программное обеспечение и, следовательно, потенциально нестабильные.

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

В системе Ubuntu достаточно просто добавить соответствующий репозиторий, и менеджер пакетов позаботится обо всем остальном. Типичный процесс включает в себя выполнение команды, которая добавляет PPA инструмента, обновляет список пакетов и устанавливает приложение. Затем, при открытии Mainline, отображается список доступных версий ядра, из которого можно выбрать нужную. Linux 7.0-RC3 для скачивания и установки.

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

Для тех, кто предпочитает более классический подход, такая возможность по-прежнему существует. Загрузите исходный код и скомпилируйте ядро ​​вручную.Этот метод несколько более трудоемкий, но обеспечивает полный контроль над конфигурацией и обычно лучше подходит для очень специфического оборудования.

Ручная компиляция: основные шаги и распространенные проблемы

Традиционная процедура начинается с загрузки файла с кодом, например. linux-7.0-rc3.tar.xzС официального сайта ядра. Затем содержимое извлекается, и осуществляется доступ к вновь созданному каталогу, где находится вся структура исходного кода.

Перед компиляцией рекомендуется запустить инструмент настройки, например, такой: make menuconfigЭто позволяет настроить, какие модули и параметры включены в ядро. Этот шаг является ключевым для адаптации ядра к существующему оборудованию, хотя вы также можете оставить конфигурацию по умолчанию, чтобы избежать осложнений.

Кроме того, необходимо установить пакеты разработки и зависимости Для компиляции необходимы: инструменты сборки, библиотеки шифрования, поддержка ncurses, утилиты для работы с модулями и многое другое. Без них процесс компиляции будет невозможен. make В результате возникнут ошибки, которые неопытным пользователям будет сложно интерпретировать.

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

К числу наиболее частых проблем при компиляции относятся следующие: отсутствующие зависимостинеудачи в make menuconfig из-за отсутствия библиотек текстового интерфейса, ошибок, возникших из-за плохо очищенных предыдущих установок, и очень часто, Недостаточно места в разделе /bootЖелательно иметь как минимум несколько сотен мегабайт свободного места, чтобы избежать неожиданностей при установке нового образа ядра.

Если все пройдет успешно, после следующей перезагрузки система отобразит Linux 7.0-rc3 в качестве одного из вариантов загрузки, сохраняя возможность возврата к предыдущему ядру, если что-то пойдет не так.

Имеет ли смысл устанавливать Linux 7.0 на компьютер, используемый ежедневно?

Для большинства домашних и профессиональных пользователей короткий ответ таков: Не рекомендуется использовать Linux 7.0-rc3 в качестве основного ядра.Хотя это уже третий релиз-кандидат, и код уже прошёл несколько раундов тестирования, это всё ещё версия, предназначенная для выявления ошибок, а не для использования в производственной среде.

Разработчики ядра предполагают, что они всё ещё существуют. ошибки, регрессии и проблемы совместимости Эти технологии еще не открыты, и для их обнаружения в контролируемых условиях тестирования необходимо участие сообщества. Установка их на рабочий компьютер или критически важный сервер означает принятие риска сбоев, которые трудно предвидеть.

Аналогичная ситуация наблюдается и в европейских компаниях и организациях, использующих Linux в критически важных инфраструктурных проектах: разумнее всего дождаться обновления. официальный релиз стабильной версии и во многих случаях к дистрибутивам, интегрирующим ядро ​​со своими собственными патчами и инструментами поддержки.

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

Между тем, текущие версии ядра в ветке 6.x продолжают предлагать более чем разумный баланс между стабильностью, производительностью и совместимостью практически для любых реальных сценариев использования.

Эволюция Linux 7.0 и его третий релиз-кандидат Это ясно показывает, что проект переживает период интенсивной работы: ядро ​​развивается, появляются новые функции безопасности, расширяется совместимость, улучшаются производительность в области памяти, сети и файловых систем, а также вносятся глубокие изменения, такие как добавление Rust и удаление устаревших технологий. Все это делает данную версию поворотным моментом для будущих дистрибутивов, которые мы увидим в Испании и остальной Европе, но это также означает, что к ее внедрению следует подходить с осторожностью и внимательно следить за тем, как будет развиваться код в ближайшие недели.

Linux 6.18
Теме статьи:
Linux 6.18 укрепляет свои позиции в качестве ключевого ядра благодаря существенным улучшениям в производительности, безопасности и поддержке оборудования.