Вопросы по теме 'kernel-module'

Как создать запись в proc в / proc / driver?
Я хочу создать файл в каталоге /proc/driver . Я хотел бы использовать макрос, например proc_root_driver (или что-то еще, предоставленное), а не использовать явно "driver / MODULE_NAME". Я использую create_proc_entry : struct proc_dir_entry...
12339 просмотров
schedule 16.04.2024

copy_from_user не работает для char*
Я немного новичок в программировании ядра, поэтому, пожалуйста, извините за вопрос. По сути, я хочу отправить строку (char*) в модуль ядра для распечатки. Довольно просто. У меня есть следующее в коде уровня пользователя: char *text = "some...
3419 просмотров
schedule 11.02.2024

Есть ли способ для модуля ядра найти адреса разделов другого загруженного модуля?
В системе x86 у меня есть модуль ядра Linux («модуль-наблюдатель»), который получает уведомление от ядра каждый раз, когда загружается определенный модуль ядра («цель»). Почти любой модуль ядра может быть целью. Я использую это в системе...
1945 просмотров
schedule 24.02.2024

Заменить системный вызов в ядре linux 3
Я заинтересован в замене системного вызова пользовательским, который я реализую в ядре Linux 3. Я читал, что таблица системных вызовов больше не отображается. Есть идеи? любая ссылка на этот...
3214 просмотров
schedule 12.02.2024

Пакет UDP отправляется с модулем linux-kernel без использования сокетов
Я пишу модуль ядра, который создает IP-пакет. Теперь я хочу отправить этот пакет, но не создал сокет для его передачи. есть ли способ отправить его напрямую с помощью подпрограмм ядра. поскольку я отслеживал код ядра Linux для передачи пакетов,...
5976 просмотров
schedule 12.04.2024

Получить текущее время в секундах в модуле ядра
Каков стандартный способ получить текущее время в секундах (начиная с эпохи) в модуле ядра? Я видел методы, связанные с получением xtime, которые очень многословны и включают в себя циклы while и блокировки. Должен быть лучший способ. [Это не...
24704 просмотров
schedule 22.02.2024

Обновление ядра в Ubuntu 12.04 LTS не работает
Я пытаюсь обновить свое ядро ​​​​для Ubuntu 12.04 LTS с 3.4.0 до последней доступной версии, но uname -r продолжает возвращать 3.4.0 независимо от того, что я делаю. Я также пытался перезагрузить свою систему несколько раз, но безрезультатно....
1767 просмотров

Как скомпилировать ядро ​​с экспортированными символами LKM?
Я новичок в ядре, и мне нужна помощь в компиляции ядра Linux с экспортированными символами модуля ядра. Я попробовал следующее: EXPORT_SYMBOL(func_name) в источнике LKM, LKM компилируется, и символ генерируется в его Module.symvers. Однако, когда...
351 просмотров

Ошибка драйвера устройства I2C [расширитель ввода-вывода TCA6408]
Я хочу подключить TCA6408 IO Expander и получить ключевой ввод для моей встроенной системы. Я пытаюсь использовать SABRELite (iMX6Q) Boad, и моя среда разработки — LTIB (L3.0.35_4.1.0_130816_source.tar.gz). Я сделал следующие модификации 1.)...
2882 просмотров

Общий буфер между модулями ядра Linux приводит к невозможности обработки запроса на подкачку ядра по виртуальному адресу XXXXX
У меня есть один модуль ядра, который имеет объявление как char arr[100]; и экспортирует его как EXPORT_SYMBOL(arr); Во втором модуле я пытаюсь использовать его как extern char *arr; и при чтении этого модуля, когда пытаюсь...
727 просмотров

Проблема получения/отображения данных связанного списка
У меня есть требование получить arp данные текущего устройства. Я следовал онлайн-примеру — http://rikiji.it/2011/04/17/Linux-kernel-programming-exercises-1.html для выполнения этой задачи. В этом примере рассматривается решение для выявления...
88 просмотров
schedule 23.11.2023

Загружаемый модуль ядра неправильно компилируется на разных компьютерах
Я пытаюсь сделать загружаемый модуль ядра для архитектуры ARM. Просто, например, я сделал простой hello.c #include <linux/module.h> /* Needed by all modules */ #include <linux/kernel.h> /* Needed for KERN_INFO */ static...
312 просмотров
schedule 28.01.2024

Не удается установить гостевые дополнения на Kali 2.0
Я устанавливаю новый Kali (2.0) и не могу успешно установить гостевые дополнения. Я объясняю вам все шаги, которые я сделал: Прежде всего, я убедился, что у меня есть правильные репозитории (я думаю, что это правильные): deb...
3573 просмотров
schedule 24.02.2024

получить /dev/random в модуле ядра
Мне нужно получить как /dev/random , так и /dev/urandom в модуле ядра. get_random_bytes Предоставляется API для получения /dev/urandom . Но для /dev/random нет API, поэтому я попытался выполнить ioctl и прочитать файл в пространстве...
1059 просмотров

Основной файл не компилируется при компиляции модуля ядра из нескольких файлов
Для начала хочу сказать, что я долго искал похожие проблемы и какое есть решение. И я обнаружил, что это: obj-m := module.o module-objs := extra.o Но это не работает для меня... Вот весь исходник проекта: axis_controller.h: #ifndef...
1093 просмотров
schedule 14.02.2024

kstrtoint в sysfs для модуля ядра c
Привет, я пытаюсь использовать kobject для записи в массив int из sysfs. Таким образом, ввод представляет собой char* и переменную размера. Однако я не могу заставить это работать. Мой ожидаемый ввод: "num1 num2 num3 " static ssize_t...
2447 просмотров
schedule 04.04.2024

Как прочитать весь файл с помощью vfs_read в модуле ядра?
Мне нужно прочитать весь файл в буфере внутри модуля ядра, который я пишу. Я начал следовать, как написано здесь но я не понимаю, как получить размер файла, чтобы выделить память для буфера массива. Я не смог найти хорошую документацию по...
3279 просмотров

ШИМ в линукс драйвер insmod
Я пытаюсь внедрить драйвер счетчика тройного таймера pwm (TTC) для Zynq PS. Журнал dmesg: TTC: Inside probe function pwm-cadence f8001000.timer: PWM 0 has clock source 0 at 108333336 Hz pwm-cadence f8001000.timer: PWM 1 has clock source 0 at...
326 просмотров

Не удалось связать предоставленную ядром функцию с моим пользовательским модулем ядра
Я пишу модуль ядра, который работает с записями таблицы страниц, чтобы реализовать новую политику замены страниц. Я хочу получить список записей таблицы страниц, принадлежащих определенному процессу. До сих пор я получил связанный список структур...
102 просмотров
schedule 19.10.2022

Как выполнить обратную запись грязных строк кэша L1-L2 в ARMv8
Я ищу способ очистить кеш L1-L2 с помощью модуля ядра. Есть ли способ полностью сбросить весь кеш кластера (конфигурация с 4 ядрами) или, что еще лучше, записать обратно грязные строки кеша в основную память?
255 просмотров