请教Linux2.6设备放在哪?
我自己写一个驱动程序,装载驱动之后,在2.4内核中用:
fhandler = open(“/dev/fps200”, 0, S_IREAD);来打开设备,请教在2.6内核中oepn函数的第一个参数是什么?怎么确定?--听说都移到/sys目录下了。。。。
我在/sys/module/下找到一个目录:fps200usb,请问oepn操作的参数是这个吗?
------解决方案--------------------open(“/dev/fps200”, 0, S_IREAD);
参数就是设备节点的位置,2.4内核中注册设备会自动在/dev/下添加设备节点。
------解决方案--------------------是在/dev下,不是/sys
2.6的内核驱动采用新格式,加载驱动后不会主动在/dev下添加节点,只在/proc/devices下注册了设备号,需要在/dev下手动mknod,当然,上面说的是字符驱动,还有其他驱动可能不同,比如网络驱动就不用在/dev下建立节点。
建立楼主看看Linux Device Driver,2.4内核看第二版,2.6内核看第三版。网上和书店都有中英文版。
------解决方案--------------------2.4也要手动mknod的吧.
------解决方案--------------------命令 ls -al
看下面的VMlinus-XXXXX 这个就是内核文件以及版本