Ядро Linux является основой операционных систем (ОС) Linux и основным интерфейсом между аппаратным обеспечением компьютера и его процессами.
Объявлен Линус Торвальдс недавно Окно слияния ядра Linux 6.3 закончилось и что эта версия удаляет поддержку компилятора Intel ICC. В частности, это компилятор Intel ICC, более известный как «Классический компилятор Intel C++», прежде чем он перешел на LLVM/Clang с современным компилятором Intel DPC++.
С первым релизом-кандидатом Linux 6.3 мы узнали немного больше о функциях и изменениях в этой новой версии ядра. Одной из ключевых функций, добавленных в Linux 6.3, является новый инструмент «rtla hwnoise».
Несколько месяцев назад Ходили слухи, что ядро Linux откажется от поддержки компилятора Intel ICC. а теперь с Linux 6.3 сделал это. Фактически, в то время как компилятор LLVM/Clang все чаще используется различными разработчиками и организациями для сборки основного ядра Linux в качестве дополнительной поддержки компилятора GCC, который долгое время был основной целью компилятора, компилятор ICC от Intel также мог для сборки ядра Linux, хотя оно не получило широкого распространения. Но разработчики ядра решили убрать поддержку компилятора ICC.
Во-первых, Intel ICC — это компилятор для C (icc) и C++ (icpc). высокооптимизированное ядро, используемое некоторыми разработчиками и организациями для создания ядра Linux. Автономная версия была заменена Intel OneAPI.
Идея удаления поддержки для компилятора Intel ICC fу.е. подняли впервые в октябре прошлого года разработчиком Linux Масахиро Ямада. По словам разработчиков ядра Linux, изменения ядра вокруг поддержки из компилятора Intel ICC они минимальны, и кажется, что поддержка ICC для сборок ядра в настоящее время неактивна. никто не жалуется. Поскольку никто не заботится и не замечает, это предложение уберет поддержку ICC для основного ядра и высвободит около 300 строк кода, которые в настоящее время используются для поддержки ICC.
Линус Торвальдс, создатель ядра, ответил за отказ от компилятора Intel ICC:
«Я не думаю, что кто-то действительно использовал МУС. Я не помню, чтобы я слышал хоть слово о проблемах ICC, и я не думаю, что это было из-за того, что он настолько хорошо эмулировал GCC, что ни у кого не было никаких проблем.
Другие разработчики ядра высказались за это изменение. Кроме того, с переходом компилятора Intel ICC со своей старой проприетарной кодовой базы на модель, основанную на LLVM, новый компилятор ICC может оказаться способным компилировать ядро с использованием путей Clang.
в основном, основной файл из заголовка ядра Linuxx для компилятора Intel не трогали три года, многие разработчики/пользователи забывают или даже не знают о поддержке ICC для сборки ядра, и есть по крайней мере одна вопиющая проблема, которая не изменилась. об этом сообщалось в сборках ядра ICC.
Кроме того, Классический компилятор Intel ICC был заменен их компилятором oneAPI DPC++/C++. более современные построены на LLVM. А с октября никто не выразил заинтересованности в возможности скомпилировать последний код ядра с помощью этого классического компилятора Intel.
Так что отказ от поддержки Intel ICC не должен быть настоящей потерей. GCC и LLVM/Clang по-прежнему являются двумя ключевыми компиляторами для сборки основного ядра Linux.
GCC долгое время был де-факто выбором для сборки ядра основной ветки, в то время как в последние годы основная ветка LLVM/Clang показала себя вполне подходящей для сборки ядра Linux и используется в различных сборках. ЛЛВМ. /Clang к различным функциям компилятора. Поэтому компилятор Intel ICC устарел с появлением ядра Linux версии 6.3.
наконец, если вы интересно узнать об этом больше, вы можете проверить подробности в по следующей ссылке.