![]() |
+7 (495) 229-0436 | ![]() |
shopadmin@itshop.ru | 119334, г. Москва, ул. Бардина, д. 4, корп. 3 | ![]() |
![]() |
![]() |
|
|
Разработка модулей ядра Linux: Часть 10. Инсталляция модулей12.06.2012 13:28
В нескольких предыдущих частях был сделан акцент на создании модулей ядра и их положении в общей архитектуре системы. Но, в конечном счёте, всё это сводится к вопросу: как правильно, гибко и наилучшим образом использовать модули? А использование в контексте модулей - это загрузка модулей в ядро и те возможности, с помощью которых программист может сделать этот процесс более управляемым. Ранее неоднократно показывалось, как использовать команду Утилита Далее утилита modprobe по имени модуля и по содержимому файла зависимостей /lib/modules/`uname -r`/modules.dep пытается установить зависимости запрошенного модуля: модули, от которых зависит запрошенный модуль, будут загружены до него самого. Понятно, что это рекурсивный процесс, и он будет продолжаться до тех пор, пока все зависимости не будут разрешены или не будет найдена зависимость от неизвестного модуля и, тем самым, установлена невозможность загрузки всей иерархии зависимых модулей, и как конечный итог загрузки запрошенного модуля, т.е. попытка оказывается неудачной. Файл зависимостей modules.dep заранее формируется командой:
Этой же командой (время от времени) обновляется и большинство других файлов modules.* в этом каталоге:
Интересующий файл modules.dep содержит строки вида:
Каждая такая строка содержит:
После этого загрузить модули не представляет труда, и непосредственно для этой работы вызывается (для каждого модуля последовательно) утилита Примечание: если загрузка модуля производится непосредственно утилитой insmod с указанием ей имени файла модуля, то утилита никакие зависимости не проверяет, а если обнаруживает неразрешённое имя, завершает загрузку аварийно. Утилита Совершенно естественно, что все утилиты Инсталляция модуля, если необходимо обеспечить его постоянную загрузку при каждой загрузке операционной системы Linux, состоит из двух операций. Во-первых, скопировать собранный модуль (*.ko) в его итоговое местоположение в иерархии модулей системы. Модули системы распределены по каталогам и чаще всего используется каталог misc:
Во-вторых, обновить информацию о дереве зависимостей модулей (в связи с добавлением нового), что делается утилитой Если для инсталляции создается цель в Makefile, то нет ничего страшнее, чем пакеты, устанавливающие некоторые компоненты, но не умеющие их удалять! Лучше не иметь автоматической возможности инсталлировать модуль (выполняя эту задачу вручную), чем иметь установленный модуль, не имея возможности его деинсталлировать! Для удаления модуля, стационарно инсталлированного в системе, достаточно: Во-первых, удалить файл модуля (*.ko) в каталоге его местоположения в иерархии модулей системы /lib/modules/`uname -r`:
Во-вторых, обновить информацию зависимостей модулей утилитой В этой статье были рассмотрены общие вопросы загрузки модулей. Следующая статья будет посвящена параметрам, которые можно указывать при загрузке модуля, и передаче значений через эти параметры, и другие важные нюансы, связанные с управлением загрузкой модулей. |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
О нас |
Интернет-магазин ITShop.ru предлагает широкий спектр услуг информационных технологий и ПО.
На протяжении многих лет интернет-магазин предлагает товары и услуги, ориентированные на бизнес-пользователей и специалистов по информационным технологиям. Хорошие отзывы постоянных клиентов и высокий уровень специалистов позволяет получить наивысший результат при совместной работе. В нашем магазине вы можете приобрести лицензионное ПО выбрав необходимое из широкого спектра и ассортимента по самым доступным ценам. Наши менеджеры любезно помогут определиться с выбором ПО, которое необходимо именно вам. Также мы проводим учебные курсы. Мы приглашаем к сотрудничеству учебные центры, организаторов семинаров и бизнес-тренингов, преподавателей. Сфера сотрудничества - продвижение бизнес-тренингов и курсов обучения по информационным технологиям.
|
119334, г. Москва, ул. Бардина, д. 4, корп. 3 +7 (495) 229-0436 shopadmin@itshop.ru |
|
© ООО "Interface Ltd." Продаем программное обеспечение с 1990 года |