前回の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