Игра с новым устройством

Предыдущая  Содержание  Следующая V*D*V

Как только вы оснащены четырьмя вышеописанными методами, драйвер может быть собран и протестирован; он сохраняет любые данные, которые вы запишете в него, пока вы не перезапишете их новыми данными. Устройство действует как буфер данных, размер которого ограничен только реально доступной памятью. Для проверки драйвера вы можете попробовать использовать cp, dd и перенаправление ввода/вывода.

 

Чтобы увидеть, как сжимается и расширяется объём свободной памяти в зависимости от того, как много данных записано в scull, может быть использована команда free.

 

Чтобы стать более уверенными при чтении и записи одного кванта за раз, вы можете добавить printk в соответствующую точку в драйвере и посмотреть, что происходит в то время, как приложение читает или записывает большие массивы данных. Альтернативно, используйте утилиту strace для мониторинга системных вызовов вместе с их возвращаемыми значениями, выполняемыми программой. Трассировка cp или ls -l > /dev/scull0 показывает квантованные чтения и записи. Техники мониторинга (и отладки) подробно изложены в Главе 4.

Предыдущая  Содержание  Следующая