Возможности версий ядра Linux с точки зрения непрофессионала

Использование команды sedчтение(r):

$ sed '\#</action>#r customAction.txt' uca.txt
<?xml encoding="UTF-8" version="1.0"?>
<actions>
<action>
    <!--some code-->
</action>
<action>
    <!--custom configuration-->
</action>
</actions>

В конце входного файла есть пустая строка, и она сохраняется в выходных данных. Команда rвставит содержимое данного файла после нахождения данного шаблона. Это работает, как и ожидалось, для данных примера, потому что единственное вхождение строки </action>. Если бы во входном файле было больше ранее -существующих действий, это не сработало бы должным образом.

Следующее будет работать с файлом, содержащим несколько действий:

gsed -e '\#</actions>#d' -e '$ r customAction.txt' -e '$ a\</actions>' uca.txt

Он удаляет тег </actions>при обнаружении и вставляет содержимое customAction.txtв конце. Затем он добавляет </actions>после этого.

Этот способ написания команды aтребует GNU sed(, поэтомуgsed).

2
14.02.2020, 14:06
1 ответ

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

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

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

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

При сравнении версий ядра также не учитываются функции обратного портирования, которые есть в некоторых дистрибутивах. Вообще говоря, дистрибутивы можно разделить на две категории :быстро меняющиеся -дистрибутивы, которые привязаны к основным ядрам, и долгосрочные -дистрибутивы, которые поддерживают стабильное базовое ядро ​​в течение очень долгого времени. Fedora — пример первого, RHEL — второго, а Debian находится где-то посередине: основные ядра отслеживают обновления до долгосрочного -стабильного выпуска ядра (4.19, который в настоящее время находится на уровне 103-го. стабильная версия ). Таким образом, хотя использование ядра 3.10 в RHEL 7 может означать, что вы упускаете множество драйверов, улучшений производительности и новых функций, многие из них перенесены и доступны пользователям RHEL 7.

5
28.04.2021, 23:23

Теги

Похожие вопросы