развитие Ядро Linux продолжает развиваться к следующей версии, и среди самых ярких новых функций один найден Предложение включить расширения Microsoft C по умолчаниюЭти расширения, известные как -fms-extensions, являются частью ветки разработки kbuild-next. Они совместимы как с GCC, так и с Clang. Они позволяют компилятору распознавать нестандартные конструкции языка C. вдохновлено Microsoft Visual C++, например, использованием анонимных структур и объединений внутри других структур.
Мера, направленная на упрощение и повышение читабельности исходного кода ядра, Он стремится использовать определенные возможности Microsoft C, которые могут оказаться полезными. в конкретных контекстах разработки операционных систем.
Хотя исторически существовало некоторое сопротивление принятию элементов, связанных с экосистемой Microsoft, наличие этих исправлений в kbuild-next указывает на то, что изменение близко к принятию для окна слияния Linux 6.19.
Еще один шаг к интеграции
Два предложенных патча вводят опцию Компиляция `-fms-extensions` включается по умолчанию в процесс сборки ядра. Это означает, что все системные архитектуры и компоненты, скомпилированные с помощью GCC или LLVM/Clang, будут иметь доступ к этим расширениям.
Разработчик Расмус Вильемоэс, один из сторонников предложения, объяснил, что Включение этих расширений позволит создавать «более элегантный и чистый код». Устраняя необходимость использования дополнительных флагов компиляции каждый раз, когда требуется функциональность Microsoft, К. Вильмойс утверждает, что, включив их глобально, можно будет избежать индивидуальных споров об их использовании, что будет способствовать более однородному стилю разработки в ядре.
Неявное одобрение Линуса Торвальдса
Хотя В прошлом аналогичные предложения не проходили рассмотрение. в списке рассылки ядра, На этот раз ситуация кажется иной.Линус Торвальдс, создатель Linux, принял участие в обсуждении и не возражал против активации расширения -fms.
Эсто предполагает, что изменение может быть официально реализовано в Linux 6.19, При условии отсутствия возражений со стороны других известных разработчиков. Один из патчей, связанных с системой компиляции kbuild, гарантирует, что опция -fms-extensions также применяется к архитектурам, использующим пользовательские CFLAGS, обеспечивая согласованность компиляции во всей экосистеме ядра.
La Принятие -fms-extensions представляет собой технический шаг Это продолжение непрерывной эволюции ядра Linux. Хотя это может показаться незначительной деталью, поддержка нестандартных конструкций обеспечивает большую гибкость при написании кода, особенно при работе со сложными структурами.
Тем не менее, Часть сообщества выразила сомнения относительно использования функций, связанных с Microsoft, опасаясь, что это может повлиять на переносимость или чистоту кода C, используемого в Linux. Несмотря на это, инициатива пользуется поддержкой нескольких разработчиков. которые считают, что преимущества намного перевешивают возможные недостатки.
Последние достижения в ядре
В дополнение к обсуждениям, касающимся расширений Microsoft C, Ядро Linux 6.19 также будет включать исправления для драйвера файловой системы Minix.История этого формата насчитывает более четырёх десятилетий. В этом драйвере были выявлены ошибки, связанные с повреждением данных, и планируемые исправления улучшат управление и восстановление повреждённых образов, сделав систему более устойчивой к ошибкам чтения и записи.
Это улучшение демонстрирует постоянную приверженность разработчиков Linux поддержанию обратной совместимости и стабильности в системах, которые, несмотря на свой возраст, по-прежнему используются в образовательных или экспериментальных целях.
Пока версия 6.19 находится в стадии завершения, Команда разработчиков ядра продолжает работу над предыдущими обновлениями.Linux 6.18, на данный момент находящийся в стадии пятого релиза-кандидата (6.18-rc5), улучшает подсистему HID новыми функциями, такими как поддержка тактильных сенсорных панелей, улучшенное управление аудиоконтроллером Sony DualSense и большая гибкость в HID-BPF.
также Он обеспечивает повышенную безопасность вызовов ioctl из hydraw.Включены новые тактильные функции PIDFF и расширенные настройки для Intel QuickI2C. Эти оптимизации направлены на улучшение пользовательского опыта и повышение совместимости оборудования с проприетарными операционными системами.
источник: https://git.kernel.org/