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

Использование памяти модулем ядра
При попытке оценить объем памяти, потребляемой модулем ядра (обычно драйверами устройств), я попытался использовать утилиту size , которая выдавала размер областей статической памяти файлов .ko ( .bss, . данные, .текст и т. д.). Поэтому я ожидал,...
10776 просмотров

Поиск базового адреса устройства для связи через inb() и outb()
Я пытаюсь установить связь с дисководом с помощью команд inb(), inw(), outb() и outw(), чтобы найти конкретную информацию о диске. Однако для использования этих команд мне нужны правильные порты ввода-вывода для устройства. Когда у меня есть...
4656 просмотров

Имя и адрес функции отсутствуют в Linux System.map
Я занимаюсь разработкой встраиваемых систем на плате AT91SAM9263 и столкнулся со странной проблемой. Он работает под управлением ядра Debian Linux 2.6.18.4, кросс-компилирован с arm-linux-gcc 3.4.6 и использует uClibc-0.9.28 для библиотеки C. Я...
1173 просмотров

Сопоставление буферов DMA с пользовательским пространством
я пишу драйвер устройства на linux-2.6.26. Я хочу, чтобы буфер dma отображался в пользовательском пространстве для отправки данных из драйвера в приложение пользовательского пространства. Пожалуйста, предложите хороший учебник по нему. Спасибо
21138 просмотров
schedule 13.05.2022

Заинтересован в программировании устройств. Когда начать
Я хорошо разбираюсь в C++, но я никогда не занимался программированием устройств. У меня есть базовые знания о цифровом логическом дизайне. Но я полный нуб в электронике. В настоящее время я получаю огромный интерес к программированию...
508 просмотров

Как заставить символьное устройство Linux автоматически отображаться в /dev без запуска mknod?
Как лучше всего заставить персонажа появляться в /dev? У меня есть драйвер, который вызывает register_chrdev, и я вижу запись в /proc/devices, когда загружаю модуль. Однако мне по-прежнему приходится вызывать mknod в командной строке, чтобы он...
2813 просмотров

О модуле ядра Linux
Нужно ли модулю ядра ядро ​​Linux для завершения компиляции? Могу ли я скомпилировать модуль ядра без ядра? Я имею в виду: скопируйте необходимый заголовок ядра, вручную напишите makefile или вручную скомпилируйте. и без использования системы...
485 просмотров
schedule 22.11.2022

Как я могу предотвратить блокировку семафора, когда поток завершается с ошибкой шины
Я разрабатываю драйвер устройства Linux, работающий на встроенном процессоре. Этот драйвер устройства управляет некоторым внешним оборудованием. Внешнее оборудование имеет собственный контроллер DDR и внешний DDR. Аппаратная DDR видна на встроенном...
898 просмотров

Встроенная система USB на Android-устройство
Я пишу приложение для Android 2.1, которому необходимо получать данные с USB-устройства. USB-устройство — это встроенная система, которую я создал. Встроенная система не имеет ОС. Кроме того, устройство Android не отправляет никаких данных во...
1119 просмотров
schedule 06.10.2022

Возможность межкомпьютерной связи через параллельный порт
Я просмотрел ссылки и темы, предложенные здесь, прежде чем опубликовать это, все еще не ясно, поэтому публикую дальше. Мой вопрос; можно ли обмениваться данными между двумя параллельными портами компьютеров с помощью прямого кабеля, а не кабеля...
518 просмотров

Трассировка вызовов при загрузке модуля в Linux
Я пишу свой первый модуль ядра Linux, который на самом деле является драйвером RAM-диска плюс некоторые дополнительные Особенности. Когда я попытался выполнить insmod модуль, произошла ошибка сегментации . . А вот соответствующий журнал...
9765 просмотров
schedule 14.03.2024

Битовая карта грязного блока моментального снимка Linux LVM
Я ищу способы создания полных/инкрементных резервных копий моментальных снимков в Linux для разных файловых систем. Я хотел указать, какие исходные файлы LVM/Device mapper искать в отношении создания моментальных снимков (механизм COW) и где...
921 просмотров

mmap: отображение в пользовательском пространстве буфера ядра, выделенного с помощью kmalloc
Как правильно отобразить в пользовательском пространстве буфер, выделенный с помощью kmalloc? Может быть, я еще не понял отображение памяти ... Я пишу модуль ядра, который выделяет этот буфер (например, 120 байт), и я буду читать и записывать его в...
12397 просмотров

как ограничить время системного вызова задачи в ядре linux
цель: я хочу ограничить время, в течение которого задача может выполнять системный вызов. поэтому я добавляю переменную noexec_count в task_struct в файле: include/linux/sched.h, например: int exec_count;/*inserted by KaiwingHo line:861*/...
190 просмотров

Linux нестандартная последовательная консоль
Я портирую Linux на одну из пользовательских архитектур. У меня последовательная консоль нетрадиционная, в том смысле, что не работает по прерываниям. Я пытаюсь вывести сообщения из процесса загрузки Linux на консоль ядра. Я использовал...
343 просмотров

Драйвер Linux Char: блокировка вызова ioctl
Я новичок в разработке драйверов, и я пытаюсь написать простой драйвер char с ioctl, который позволяет пользовательскому процессу получать время (timespec), которое мой драйвер char использовал при последнем чтении и записи. long...
6458 просмотров

символы основного потока tty
Я запускаю Linux на оборудовании без экрана и сбрасываю все данные на последовательный порт. Я читаю серийный номер Linux через такие приложения, как гипертерм или тератерм. Я получаю правильно отформатированный вывод для серийного номера. Однако,...
544 просмотров

Как определить, является ли подключенное USB-устройство флэш-накопителем USB?
как определить, какой носитель подключен к системе? У меня Ubuntu, и когда я вставил SD-карту, он замечает, что это на самом деле SD-карта. То же самое относится и к USB-накопителям. Но как я могу определить на низком уровне, когда вставлено...
20301 просмотров

стек драйверов устройств
Я новичок и пытаюсь понять концепцию стека драйверов устройств? Я знаю, что стек драйверов устройств состоит из трех уровней: низкоуровневого драйвера, диспетчера шины и высокоуровневого драйвера. У меня такой вопрос: существуют ли отдельные коды...
1091 просмотров
schedule 19.08.2023

Как увеличить пропускную способность ввода-вывода для более быстрого чтения в Linux?
У меня есть программа C, которая читает со стандартного ввода. И я протестирую свою программу на 2 ГБ данных (4 КБ буфера чтения) с помощью команды dd в Linux. Я получил 565 МБ / с на машине 3,20 ГГц. Я получил меньше в 300MHz машине. Есть ли...
1081 просмотров
schedule 09.06.2023