Вопросы по теме 'linux-device-driver'

Каковы соглашения по кодированию для использования чисел с плавающей запятой в драйверах устройств Linux?
Это связано с этим вопросом . Я не эксперт по драйверам устройств Linux или модулям ядра, но я читал «Драйверы устройств Linux» [O'Reilly] Rubini & Corbet и ряд онлайн-источников, но я не смог найти что-нибудь по этому конкретному вопросу еще....
4577 просмотров

Отладка программирования сокетов Linux?
У меня есть такая функция: static int rcv_kern(int sock, void *buf, int len, struct sockaddr *addr, socklen_t *addrlen) { struct timeval timeout = {1, 0}; fd_set set; int status; FD_SET(sock, &set); if ((status =...
5922 просмотров

Лучший способ передачи больших данных из ядра в пользовательское пространство
Мне нужно передавать несколько мегабайт данных в секунду из модуля ядра Linux в пользовательское пространство, и я не хочу пропустить ни одного сообщения из модуля, если я его прочитаю. Как лучше всего это сделать? Для этого существует несколько...
4292 просмотров

файл структуры в драйвере linux
В настоящее время я учусь писать драйверы устройств Linux, и у меня проблемы с пониманием " struct file ". Я использую книгу Linux Device Drivers 3rd edition, чтобы мне помочь. Это то, что я понял. а. struct file представляет собой открытый...
24864 просмотров
schedule 09.12.2022

сценарий systemtap
Я хочу написать скрипт в systemtap и отследить системный вызов памяти. Я хочу поймать количество системных вызовов памяти и память, используемую конкретным процессом, за фиксированное время. Я не знаю, как написать этот скрипт.
759 просмотров

Отправка сигнала из ядра в пространство пользователя
Как получить сигнал из пространства ядра в пространство пользователя?
11931 просмотров

модуль ядра не может найти файл прошивки на устройстве Android; где это должно быть?
У меня возникли проблемы с правильным размещением прошивки на устройстве Android, я продолжаю получать: <3>[ 3590.997375] usb 3-1.4: ath9k_htc: Firmware - htc_7010.fw not found Если на стандартной Linux-машине с Ubuntu я помещаю...
11799 просмотров

Могут ли ISR мигрировать на другие ЦП при вытеснении?
В старых версиях ядра Linux подпрограммы обслуживания прерываний (ISR) для аппаратных IRQ в системе SMP выполнялись на ЦП, где они были запущены, от начала до конца. Если его вытеснит какой-либо другой код, ISR впоследствии возобновится на том же ЦП....
788 просмотров
schedule 24.09.2022

USB-драйвер Linux для универсального устройства двусторонней связи.
Какой из существующих драйверов устройств Linux лучше всего использовать для универсального устройства, требующего двусторонней связи (настраиваемый протокол)? Предпочтительна массовая передача, так как нужно будет передавать довольно большие блоки....
1027 просмотров
schedule 20.11.2022

Как я могу получить значение переменных %d в информации dynamic_debug ядра Linux?
Я включил config_dynamic_debug=y в ядре Linux, настроенном мной, и следуя документации dynamic_debug, поставляемой с исходным кодом ядра, я запускаю следующую команду, чтобы разрешить вывод отладочной информации в подсистеме Bluetooth: echo -n...
491 просмотров

В чем преимущество volatile в этом случае?
У меня есть следующая реализация функции, которая проверяет указатель NULL. Это часть драйвера Linux, код C: bool is_null_ponter(volatile void* ptr) { return (NULL == ptr)? true : false; } В чем преимущество volatile в этом случае? Почему...
437 просмотров
schedule 14.12.2022

Как я могу сделать паузу на 100+ миллисекунд в модуле драйвера Linux?
Я пишу драйвер ядра для устройства, которое периодически производит регулярные объемы данных для чтения. Программа пользовательского пространства идеально подходит для того, чтобы сделать этот блокирующий драйвер. Какие методы доступны для...
16047 просмотров

Создание цели отладки в make-файле модуля драйвера Linux 2.6
Я пытаюсь выполнить «сделать отладку» в командной строке, и он создаст мой модуль драйвера с определением -DDEBUG_OUTPUT, что приведет к компиляции определенных разделов кода. В make-файлах ядра версии 2.4 это довольно просто. Я просто создаю...
2409 просмотров
schedule 20.02.2023

Модуль ядра для диска SSH/SCP
У меня и моего коллеги есть проект по созданию драйвера, который обеспечит доступ к удаленному диску, как если бы он был локальным диском (используя SSH/SCP). Диск должен нормально восприниматься как диск, а операции могут быть ограничены простыми...
1571 просмотров

printk не работает для отладки ядра
Я поместил некоторые отладочные сообщения в код ядра. проверил /var/log/messages, dmesg и там такого дампа нет. syslogd работает на машине я также изменил /proc/sys/kernel/printk на 8 4 1 7 есть идеи в чем может быть проблема?
7385 просмотров

Могут ли insmod и rmmod для одного модуля запускаться из драйвера другого модуля?
Мы пытаемся заставить insmod и rmmod одного модуля работать с ioctl другого модуля при условии ; Это возможно ? Если нет, то есть ли способ добиться того же.
333 просмотров
schedule 13.07.2023

как стек tcp/ip получает интерфейс net_device в linux
Я читал код драйвера сетевого устройства. Мой драйвер соответствует модели драйвера. ССЫЛКА: ядро/документация/модель драйвера. Чтение interface.txt: { Интерфейсы устройств — это логические интерфейсы классов устройств, которые напрямую соотносятся с...
1423 просмотров

Найти устройство события для клавиатуры, мыши
Каков надежный способ найти узел событийного устройства для аппаратной клавиатуры или мыши ? Я пробовал читать /proc/bus/input/devices и искать 'Keyboard' или 'Mouse' в имени устройства. , но это работает не всегда, так как имена...
3550 просмотров

Связь между вызовом пользователя mmap и вызовом ядра mmap
Я пытаюсь понять, как работает mmap. Вызов mmap на уровне пользователя выглядит следующим образом. void *mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); но mmap на уровне ядра для конкретного драйвера...
5241 просмотров

Как можно запретить MMAP кэшировать значения?
Я написал драйвер для Linux, который ioremaps экспортирует PCI BAR0 для конкретного устройства в двоичный атрибут sysfs, позволяя пользовательскому пространству напрямую управлять им. Проблема возникает, когда я пытаюсь использовать MMAP поверх...
11930 просмотров