Linuxデバイスドライバ開発 fops

fops

前回のLinuxデバイスドライバ開発 デバイスからの続き。
キャラクタ型デバイスとして、/dev からアクセスできるように幾つかのシステムコールを追加する。

今回は空実装として、open,release,read,writeを用意する。

実行確認

$ sudo insmod skel_drv.ko
$ cat /proc/devices | grep skel
246 skel_drv
$ ls -lR /sys/class/ | grep skel
drwxr-xr-x 2 root root 0  2月 22 15:31 skel_drv
/sys/class/skel_drv:
lrwxrwxrwx 1 root root 0  2月 22 15:31 skel_drv0 -> ../../devices/virtual/skel_drv/skel_drv0
$ ls -l /dev | grep skel
crw-------  1 root root    246,   0  2月 22 15:31 skel_drv0
$ sudo cat /dev/skel_drv0
$ sudo rmmod skel_drv
$ dmesg | tail
 :
[ 4522.460131] skel_init
[ 4522.460133] skel_drv: char driver major number is 246
[ 4597.951226] skel_open
[ 4597.951233] skel_read
[ 4597.951239] skel_release
[ 4604.985681] skel_exit

ソースコード ダウンロード

 

Linuxデバイスドライバ開発


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS