Библиотека сайта rus-linux.net
Цилюрик О.И. Модули ядра Linux | ||
Назад | Вперед |
Загрузка и исполнение
Наш модуль при загрузке/выгрузке выводит сообщение посредством вызова printk(). Этот вывод направляется на текстовую консоль. При работе в терминале X11 вывод не попадает в терминал, и его можно видеть только в лог файле /var/log/messages. Но и в текстовую консоль вывод направляется не непосредственно, а через демон системного журнала, и выводится на экран только если демон конфигурирован для вывода таких сообщений, вопросы использования и конфигурирования демонов журнала будут детально рассмотрены позже.
$ modinfo ./hello_printk.ko
filename: hello_printk.ko author: Oleg Tsiliuric <olej@front.ru> license: GPL srcversion: 83915F228EC39FFCBAF99FD depends: vermagic: 2.6.32.9-70.fc12.i686.PAE SMP mod_unload 686
$ sudo insmod ./hello_printk.ko
$ lsmod | head -n2
Module Size Used by hello_printk 557 0
$ sudo rmmod hello_printk
$ lsmod | head -n2
Module Size Used by vfat 6740 2
$ dmesg | tail -n2
Hello, world! Goodbye, world!
$ sudo cat /var/log/messages | tail -n3
Mar 8 01:44:14 notebook ntpd[1735]: synchronized to 193.33.236.211, stratum 2 Mar 8 02:18:54 notebook kernel: Hello, world! Mar 8 02:19:13 notebook kernel: Goodbye, world!
Выше показаны 2 основных метода визуализации сообщений ядра (занесенных в системный журнал): утилита dmesg и прямое чтение файла журнала /var/log/messages. Они имеют несколько отличающийся формат: файл журнала содержит метки времени поступления сообщений, что иногда бывает нужно. Кроме того, прямое чтение файла журнала требует наличия прав root.
Предыдущий раздел: | Оглавление | Следующий раздел: |
Сборка модуля | Структура модуля |