Я новичок в программировании ядра Linux. Я написал простой модуль ядра и устройство char. Я определил методы open(), release(), read() и write() устройства. Я инициализирую свой модуль с помощью insmod и удалил его с помощью rmmod, и все работает правильно. Теперь я хочу проверить мои методы read() write() устройства. Не могли бы вы рассказать мне, как написать программу пользователя, которая должна реализовать методы чтения/записи моего устройства char? Спасибо.Проверка функций чтения/записи простых символов в LINUX
2
A
ответ
3
Первый тест, который вы можете сделать, если у вас есть символьное устройство, и вы хотите, чтобы проверить выполнение read
и write
системных вызовов заключается в следующем:
- записи с помощью команды
echo
оболочки:echo 42 > /dev/char_device
- читать с
cat
команды или определенное количество байт с помощью командыhead
(или сdd
) и преобразовать в шестнадцатеричное сod -x
при необходимости:head -8 /dev/char_device | od -x
Теперь, чтобы написать программу на C, просто используйте fopen
, чтобы открыть файл и использовать fread
и fwrite
для чтения и записи данных; вы также можете использовать read
и write
syscalls, но fread
и fwrite
являются стандартными библиотечными функциями C, которые обертывают read
и write
.
3
Вы должны создать файл устройства в /dev
, если он еще не создан автоматически. Затем вы можете написать программу, которая открывает и читает/записывает в этот файл.
Смежные вопросы
- 1. Сбой простых функций
- 2. Эффективность простых функций против непосредственных функций?
- 3. Объединение два простых JavaScript функций в один
- 4. Создание простых арифметических функций oop
- 5. Объединить несколько простых функций jQuery
- 6. Проверка работоспособности функций
- 7. Проверка простых элементов (предотвращение дубликатов)
- 8. Python, проверка числа простых чисел
- 9. проверка символов
- 10. Проверка символов
- 11. Проверка символов в строке
- 12. Проверка символов в C
- 13. Проверка символов в уравнении
- 14. Проверка символов в строке
- 15. Проверка каталога в Linux
- 16. JQuery .then() против простых последовательных функций
- 17. pthread_create и pthread_join для некоторых простых функций
- 18. Связывание функций с помощью простых указателей
- 19. Замена акцентированных символов с помощью простых символов алфавита
- 20. Проверка частных функций в javascript
- 21. Поиск определения функций Linux
- 22. Для справки по петле, проверка простых чисел
- 23. Zend_Filter_Input и проверка простых форм HTML
- 24. Проверка простых чисел с использованием сита эратосфена
- 25. FluentValidation для WP7 - Проверка простых типов (строка)
- 26. Интерфейсы в драйвере символов linux
- 27. Проверка специальных символов в строке
- 28. Проверка свойств символов в Java
- 29. Проверка содержания символов в строке
- 30. Проверка специальных символов в C