URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 5404
[ Назад ]

Исходное сообщение
"System calling in drivers"

Отправлено Van , 09-Май-06 15:16 
I need to know how can I use system calls in device drivers. For example, I want use system call "mknod()" for independent creating device file in init function of my driver. Anybody knows how can I do that???

Содержание

Сообщения в этом обсуждении
"System calling in drivers"
Отправлено chip , 09-Май-06 22:50 
>I need to know how can I use system calls in device
>drivers. For example, I want use system call "mknod()" for independent
>creating device file in init function of my driver. Anybody knows
>how can I do that???

Перво-наперво неплохо было бы указывать систему.

mknod вызывать из пространства ядра - бессмысленно. Для FreeBSD, его можно заменить make_dev(9): http://www.freebsd.org/cgi/man.cgi?query=make_dev&apropos=0&...


"System calling in drivers"
Отправлено Van , 10-Май-06 18:58 
>Перво-наперво неплохо было бы указывать систему

прошу прощения, система Linux
вообще я полный профан в написании модулей ядра, в том числе и драйверов устройств поэтому могу что то ни то сказать, не обессудьте :) просто так сложились обстоятельства - жизнь заставила начать писать эти драйвера.
идея такая, мне необходимо чтобы драйвер при загрузке автоматически создавал файл устройства т.е. не может быть и речи об использовании скриптов, создании ручками и тд. а вот как это сделать я чтото врубиться не могу, то ли тупой или это не всем дано. может кто поможет. любой совет будет ужасно полезен. заранее спасибо.


"System calling in drivers"
Отправлено chip , 10-Май-06 19:15 
>>Перво-наперво неплохо было бы указывать систему
>
>прошу прощения, система Linux

Тогда смотреть в сторону devfs (с 2.6.x считается deprecated). Его замена - udev ,- присутствует практически в любом современном дистрибутиве.


"System calling in drivers"
Отправлено IDcat , 22-Май-06 03:22 
>>>Перво-наперво неплохо было бы указывать систему
>>
>>прошу прощения, система Linux
>
>Тогда смотреть в сторону devfs (с 2.6.x считается deprecated). Его замена -
>udev ,- присутствует практически в любом современном дистрибутиве.

Да, да. На счет 2.6.13< -- devfs там какбы не уважают.
А какие функции режима ядра можно использовать для udev?
И где об этом можно почитать


"System calling in drivers"
Отправлено jd , 15-Май-06 17:10 
может быть подойдёт файл в /proc ?

"System calling in drivers"
Отправлено sighted , 31-Июл-06 13:43 
>прошу прощения, система Linux
>вообще я полный профан в написании модулей ядра, в том числе и
>драйверов устройств поэтому могу что то ни то сказать, не обессудьте
>:) просто так сложились обстоятельства - жизнь заставила начать писать эти
>драйвера.
>идея такая, мне необходимо чтобы драйвер при загрузке автоматически создавал файл устройства
>т.е. не может быть и речи об использовании скриптов, создании ручками
>и тд. а вот как это сделать я чтото врубиться не
>могу, то ли тупой или это не всем дано. может кто
>поможет. любой совет будет ужасно полезен. заранее спасибо.
Думаю, в вашем случае подойдёт функция vfs_mknod для создания файла (fs/namei.c). Его братья-сотоварищи (создание и удаление директорий, удаление файлов и т.п.) описаны там же.