Я пишу объект ядра (файл .ko, который обычно является драйвером устройства) Linux.
Мне нужно использовать какой-то механизм для защиты критической секции в этом проекте, но я совсем запутался в объекте ядра.
После использования insmod
для вставки моего модуля в ядро я не могу найти процесс модуля с помощью команды ps -A
.
Означает ли это, что IRQ вызовет процессы модуля, так что мне придется использовать мьютекс для их синхронизации?
Кроме того
Немного непонятно, поэтому хотелось бы уточнить вопрос. Этот объект ядра предназначен для фильтрации пакетов, он основан на сетевом фильтре.
Меня смущает следующее: будет ли каждый пакет запускать процесс моего модуля, чтобы мне приходилось использовать мьютекс для их синхронизации, или что-то еще произойдет, когда пакеты прибудут мой местный сетевой адаптер?