Grub реализует спецификацию мультизагрузки . Когда он загружает ядро и передает ему управление, он передает указатель на информационную структуру в памяти. Одним из полей в этой структуре является командная строка.
Ядро Linux имеет собственный протокол загрузки , но командная строка обрабатывается аналогичным образом :загрузчик оставляет ее в памяти и заполняет различные поля в структуре данных ядра, которые позволяют ядру найти его.
В большинстве случаевбиблиотеки включены только в такие дистрибутивы, как RHEL, потому что они требуются для другого пакета, который желательно иметь в дистрибутиве. Всегда следует помнить об общем правиле :того, что пакеты, доступные в дистрибутиве, в частности библиотеки, существуют для целей дистрибутива, которые в конечном счете обеспечивают рабочую среду для конечных -пользователей, а не как инструменты общего -назначения разработки .
Таким образом, основной ответ заключается в том, что YACS не включен в RHEL, потому что в RHEL это не требуется, и нет -варианта использования -конечным пользователем для поддержки его включения.
Следствием упомянутого выше общего правила является то, что библиотеки, включенные в дистрибутив, не обязательно подходят для сторонних -программ. В частности, в случае с Python вместо этого часто стоит использовать виртуальные среды ; они могут иметь любые модули Python, которые требуются, не затрагивая систему.
(Здесь я игнорирую Коллекции программного обеспечения ; эти предназначены для использования в разработке -, но они по-прежнему не включают YACS.)