Я заметил, что последние ядра (начиная с 2.16.24?) не любят, когда CFLAGS изменяется во внешнем файле Kbuild модуля. Если CFLAGS изменен, ядро Linux выдаст следующую ошибку...
Я экспериментировал с созданием звуков, используя математические волновые функции в C. Следующим шагом в моем проекте является получение пользовательского ввода с контроллера MIDI-клавиатуры для модуляции волны в ...
Я пишу простой модуль Linux mod.c. Когда я компилирую файл mod.c,он создает два выходных файла mod.o и mod.ko. Поэтому я просто хочу знать, В чем разница между файлами mod.o и mod.ko?
sk_buff имеет два места, где он может хранить следующие данные фрагментации: skb_shinfo(head)->frag_list skb_shinfo(head)->frags[] Может кто-нибудь объяснить различия между этими два ...
Как определить, какой тип носителя подключен к системе? У меня Ubuntu, и когда я вставил SD-карту -, он замечает, что это на самом деле SD-карта. То же самое относится и к USB-накопителям. Но как...
Я написал драйвер для Linux, который ioremaps экспортирует PCI BAR0 для конкретного устройства в двоичный атрибут sysfs, позволяя пользовательскому пространству напрямую управлять им. Проблема возникает, когда я пытаюсь использовать MMAP на...
Я пытаюсь понять, как работает mmap. Вызов mmap на уровне пользователя выглядит следующим образом. void *mmap(void *addr, size_t len, int prot, int flags, int fildes, off_t off); но mmap на уровне ядра ...
Какой надежный способ найти узел устройства обработки событий для аппаратной клавиатуры или мыши? Что я пробовал, так это читать /proc/bus/input/devices и искать «Клавиатура» или «Мышь» в устройстве...
Я изучаю блокирующие функции ввода-вывода для написания драйвера устройства Linux, и мне интересно, каково использование ERESTARTSYS. Рассмотрим следующее: Глобальная переменная: wait_queue_head_t ...
Я не могу точно различить логический адрес ядра и виртуальный адрес. В книге драйверов устройств Linux сказано, что все логические адреса - это виртуальный адрес ядра, а виртуальный адрес ...
Я пытаюсь разработать драйверы устройств Linux, и в качестве первой попытки я пытаюсь разработать драйвер устройства char, который имеет следующие параметры файла, struct file_operations fops {.open = ...
Я недавно изучаю сетевой драйвер Linux, и мне интересно, если на моей плате много сетевых карт одного типа, как ядро управляет ими? Нужно ли ядру много загружать один и тот же драйвер ...
Я изучаю регистрацию модуля ядра с помощью register_chrdev_region(dev_t from, unsigned count, const char * name);. Я заметил, что с этой функцией или без нее мой модуль ядра ...
Из того, что я могу понять: KeAcquireSpinLock в NT эквивалентен spin_lock_bh: первый поднимает IRQL до DISPATCH_LEVEL, другой маскирует прерывания нижней половины - функционально то же самое. Хотя NT ...
Я получил странный текст, пройдя по файлу /proc/ioports моего ПК linux, 0000-001f : dma1
0020-003f : pic1
0040-005f : таймер
0060-006f : клавиатура
0070-007f : rtc0
... Что я не понимаю, так это ...
Я делаю небольшой модуль ядра для обеспечения доступа пользователя к некоторым функциям чипа ARMv7, доступным только в режиме ядра (в частности, управление кэшем). Я читаю Linux Device Drivers by Corbet, ...
Я изучаю написание встроенного драйвера Linux и решил запустить несколько GPIO, чтобы убедиться, что я понимаю книгу (LDD3, chap9 .4.1) Я могу управлять правильными выводами GPIO, как и предполагалось (...
Я изучаю главу 3.5 устройства Linux Драйверы, 3-е издание. Этот раздел представляет метод для извлечения пользовательской структуры, который мы определили сами от inode inode inode в открытой функции: int ...
У меня есть два вопроса относительно языка сценариев sl4a. Я хотел бы разработать скрипт python, который будет периодически связываться с сервером и размещать некоторую информацию на панели уведомлений. Я...
Я пытаюсь запрограммировать GPIO IRQ на оценочной плате AT91SAM9M10-EKES.
Я успешно зарегистрировал IRQ, и IRQ работает.
Однако некоторые прерывания упускаются. Я отправляю 26 и получаю только…
Я разработал файловую систему на основе FUSE в рамках исследовательского проекта, и теперь мне нужно изучить фактические запросы чтения / записи, которые получает жесткий диск. Пытаясь сделать это, я ищу ...
Как правильно отобразить в процессе пользовательского пространства буфер, выделенный с помощью kmalloc? Может быть, я еще не понял отображение памяти ... Я пишу модуль ядра, который выделяет этот буфер (например ...
Я делаю свой первый драйвер USB-устройства для Linux, и я пытаюсь подключить устройство с сенсорной панелью. Я пробовал это устройство в Win7, используя драйвер сенсорной панели Win7 по умолчанию.
Используя линейный монитор / считыватель, ...
Какие типы файлов Linux могут быть созданы полностью в памяти? Например, файл конвейера может быть создан, но место, где создается файл (или тип файловой системы ...
Мен Linux-тің алғашқы ядролық модулін жазып жатырмын, ол шын мәнінде RAM дискісінің драйвері және қосымша мүмкіндіктер. Мен модульді түрлендіруге тырысқанда, «сегментация ақаулығы» орын алды. Міне ...
Я ищу хорошее описание стеков в ядре Linux, но мне на удивление трудно найти что-то полезное. Я знаю, что стеки ограничены 4k для большинства систем и 8k ...
In older versions of the Linux kernel, the interrupt service routines (ISRs) for hardware IRQs in an SMP system were executed on the CPU where they started, from the beginning to the end. If preempted ...
Спасибо, что посмотрели этот пост. Я пытаюсь исправить драйвер сетевого блочного устройства. Если вам нужно увидеть источники, они находятся на http: / / code.ximeta.com. Я заметил, что lock_kernel () кажется ...
Для некоторого взаимодействия с устройством PCI, которое создается, мы ' Я хотел бы создать большие непрерывные участки памяти, к которым может обращаться плата. В его нынешнем виде, самый большой кусок памяти, который у меня ...
Итак, я пытаюсь выяснить, какие процессы ядра вызывают некоторые функции в драйвере блока. Я думал, что включение backtrace () в библиотеку C упростит задачу. Но у меня проблемы с загрузкой ...