#linux #driver #ioctl
#linux #драйвер #ioctl
Вопрос:
Я разработал драйвер символьного устройства для Linux. У меня есть некоторые функции, которые работают с файлами (в структуре файловых операций), такие как чтение, запись, ioctl и т. Д..
Я понял (с помощью printks), что после инициализации драйвера и создания узла, когда я впервые вызываю функцию записи (которая также будет вызывать функцию open в первый раз), система вызывает функцию ioctl с параметрами:
cmd = 21505
arg = 2125423388
Что означают эти цифры и почему в этом случае вызывается IOCTL?
Комментарии:
1. 21505 — это 5401 в шестнадцатеричном формате, и, похоже, это, по крайней мере, вызов TCGETS ioctl.
2.
TCGETS
как вызывается изisatty(3) -> tcgetattr(3) -> ioctl(TCGETS)
.