Я новичок в написании модулей ядра, поэтому столкнулся с несколькими нетехническими проблемами. Поскольку для создания модуля ядра для конкретной версии ядра (скажем, 3.0.0-10, 10 — это номер патча) требуется такая же версия...
Как вызывается вызов probe ()? Кто его вызывает? Насколько я понимаю, __init () регистрирует драйвер, а затем каким-то образом вызывается probe () для регистрации данных устройства и irq и т. Д. Как именно так бывает? ...
Я разработчик приложений для Android. Я также хочу получить знания о Linux-системах и программировании драйверов устройств. С чего мне начать?? Может ли кто-нибудь предложить несколько книг или ссылки на учебные пособия...
В драйвере устройства Linux, создание атрибутов sysfs в probe является слишком быстрым, в частности, он испытывает состояние гонки с пользовательским пространством. Рекомендуемое решение - добавить свои атрибуты в ...
Как мы можем настроить встроенный -порядок загрузки драйвера (, чтобы некоторые встроенные -в драйвере загружались первыми, а зависимый модуль загружался позже )?
Я пытаюсь скомпилировать простой модуль hello world, следуя этому руководству, и я запутался в том, что на самом деле делает Makefile. obj-m + = hello-1.o all: make -C / lib / modules / $ (shell uname -r) / ...
Что касается ядра Linux, происходит ли подкачка страниц ядра? Кроме того, могут ли страницы пользовательского пространства когда-либо находиться в ZONE_NORMAL?
Просто чтобы узнать, я пытаюсь скомпилировать старый пример драйвера устройства на Ubuntu 14, и я получаю предупреждение. Я предполагаю, что это предупреждение вызвано, потому что некоторое несоответствие между типом, возвращаемым из ...
В файле /proc/interrupts я вижу уровень IO-APIC (или край) и в моей другой системе я вижу PCI-MSI-X. Оба с одним и тем же устройством.
Я не получаю diff между этими двумя. Могу ли я изменить PCI-MSI-...
Отключает ли ЦП все прерывания на локальном ЦП перед вызовом обработчика прерываний? Или он отключает только ту конкретную линию прерывания, которая обслуживается?
У меня проблемы с правильной установкой прошивки на устройство Android, я продолжаю получать: <3> [3590.997375] usb 3-1.4: ath9k_htc: Firmware - htc_7010.fw not found Если на стандартной машине Linux ...
У меня есть ядро упс в драйвере устройства Linux, который я написал. Я хочу определить, какая строка отвечает за упс. У меня есть следующий вывод, но я не знаю, как его интерпретировать. Значит ли это, что мой ...
В настоящее время я учусь писать драйверы устройств Linux, и у меня проблемы с пониманием «файла структуры». Я использую книгу Linux Device Drivers 3rd edition, чтобы мне помочь. Это то, что я ...
Я пишу драйвер ядра для устройства, которое производит регулярные объемы данных для периодического чтения. Пользовательская программа пространства идеально подходит для того, чтобы сделать это блокирующим драйвером. Какие методы ...
Я читаю книгу Рубини, Корбета и Хартмена по драйверам устройств Linux. Я не понял этих строк о драйвере устройства scull. Вот что говорится в книге. Единственная реальная операция, выполняемая на устройстве, - это...
Я разработал драйвер устройства для Linux. На данный момент я компилирую его на Ubuntu 12.04 с кросс-компилятором -для руки, а затем встраиваю его в свой образ Linux для руки. Но я хочу узнать, как я могу добавить его в...
Я хочу добавить запись в структуру блока управления процессом (task_struct). Скажем, способ пометить какой-то процесс. Я хочу инициализировать это поле значением 0 для всех процессов, кроме «некоторых специальных процессов», ...
Я написал модуль ядра Linux, который действует как драйвер FPGA для пользовательской платы на основе Freescale P2020RDB. Драйвер содержит несколько #define для указания различных адресов, размеров, ширины шины и т. д.
Я пытаюсь выполнить scsi чтение (10 )и запись (10 )на SSD. Я использую этот пример кода в качестве справочного/базового кода. Это мое чтение scsi:#определить ЧТЕНИЕ _ОТВЕТ _LEN 32 #определить ЧТЕНИЕ _CMDLEN 10 пустота scsi _чтение (){...
Я недавно унаследовал некоторый код на работе, это старые драйверы ядра Linux 2.4.X, и мне было поручено заставить их работать с более новым ядром 2.6 или выше. Я использую OpenSUSE 12.1 с 3....
Я читаю выходные данные датчика Холла на выводе gpio beaglebone, для каждого нарастающего фронта должна выполняться процедура обслуживания прерывания. Итак, как использовать внешнее прерывание в биглбоне? а есть ли...
Понимая каждый из них сам по себе (или, может быть, не ), похоже, я далек от понимания практических различий между ними. Насколько я понимаю, BSP — это пакет драйверов и...
Я не смог найти правильного ответа на следующие вопросы даже в некоторых хорошо написанных книгах по ядру :Они говорят, что ISR не может спать, потому что невозможно перепланировать ISR, поскольку это не так...
Я работаю над небольшой встроенной системой. Когда мой Linux загружается в пространство пользователя, я знаю, где в физической памяти находятся мои устройства. Я хочу сопоставить их с виртуальными адресами пользовательского пространства. В настоящее время
Как я читал, jiffies увеличивается на каждый тик таймера ISR таймера. Но в SMP все процессоры будут иметь свое собственное прерывание по таймеру и, следовательно, свои собственные ISR таймера. Итак, мой вопрос: :Является ли мигом...
Получена некоторая статистическая информация о нашем пользовательском оборудовании, которая будет отображаться всякий раз, когда пользователь запрашивает использование команды в пользовательском пространстве Linux. Эта реализация в настоящее время использ
Как определить номер страничного кадра для памяти устройства? Из LDD3/гл. 15/ разделы "Использование диапазона переназначения _pfn _" и "Простая реализация", pfn был приравнен к полю vm _pgoff. Я...
Я хочу научиться программированию драйверов устройств ядра Linux. Так что может ли кто-нибудь опубликовать хорошие страницы учебников или ссылки здесь. Я новичок в среде ядра Linux. Я искал его, но не знаю как...