Я являюсь драйвером устройства. Пока что я выполнил небольшие модули. Мне было интересно, как linux позволяет вставлять модуль даже во время его работы? Я искал его, но не удовлетворен или, возможно, не мог понять. Все, что у меня есть, - это демон linux, который выполняет modprobe, добавляет новый модуль. Но мой вопрос: как это происходит? Ядро уже исполнено. Как новый исполняемый файл подключается к работающему ядру? Спасибо.Как модуль ядра подключается к работающему ядру?
1
A
ответ
1
modprobe - отличная программа для добавления модулей в ядро. Вы можете получить базовую идею о том, что modprobe и ее работа со следующих ссылок.
3
модуль ядра действительно только объектный файл (или, другими словами, половина связана программа) с открытыми функциями.
modprobe
использует специальный системный вызов для загрузки модуля в ядро. После этого ядро имеет встроенный компоновщик, который завершает связывание объектного файла с запущенным ядром. Встроенный компоновщик заранее знает адреса всех функций ядра, поэтому он знает, как заполнять пробелы.
После этого ядро переходит к точке входа модуля ядра, и модуль выполняет свою работу. С этого момента модуль в основном является частью ядра.
Смежные вопросы
- 1. jupyter qtconsole не подключается к существующему ядру
- 2. Компилировать модуль ядра FTDI
- 3. Модуль загрузки ядра Linux
- 4. Подключить консоль IPython к ядру в Интернете
- 5. привязка pthread к одному ядру
- 6. Как подключиться к ядру .NET?
- 7. Как построить модуль ядра
- 8. Доступ к ядру Ninject глобально
- 9. Как найти адрес принадлежит ядру
- 10. Модуль ядра Linux - доступ к отображению памяти
- 11. Дополнения к ядру Java с 1,3?
- 12. Как скомпилировать модуль ядра Linux?
- 13. Как передать буфер памяти устройства со смещением к моему ядру
- 14. Как отлаживать модуль ядра Linux?
- 15. Spyder в WinPython не может подключиться к ядру
- 16. Как веб-страница, загружаемая через https, подключается к серверу WebSocket, работающему на localhost?
- 17. Cuda прохождение char ** к ядру
- 18. IPython notebook: Как подключиться к существующему ядру?
- 19. beaglebone черный модуль ядра
- 20. Модуль ядра для/proc
- 21. Доступ к ядру в класс расширения пакета
- 22. подключиться к работающему контейнеру докера
- 23. Наблюдатель к работающему массиву нитей
- 24. Освобожденный модуль ядра
- 25. Невозможно скомпилировать модуль ядра
- 26. Модуль ядра Zlib
- 27. Модуль ядра постоянно застревает?
- 28. Понимание системных вызовов и как .net обращается к ядру
- 29. Добавление коллекции к работающему метеору
- 30. Ошибка makefile: первый модуль ядра ядра
Вы можете найти [эту справочную страницу] (http://man7.org/linux/man-pages/man2/init_module.2.html) некоторой помощи. –