
提取主设备号的方法:MAJOR(dev_t dev)
提取次设备号的方法:MINOR(dev_t dev)
生成dev_t的方法:MKDEV(int major,int minor)
我不知道你用的那个版本的kernel,但是据我所知,ioctl的cmd参数的定义,不是你那么简单的.... 需要用到ioctl的命令字定义的几个宏定义... 自己定义是没有用的,因为ioctl需要知道你的命令是io读还是io写.. 比如在我的程序里面我这样定义命令字... 你自己查一下_IOW,_IO这两个宏... #include <linux/ioctl.h>//使用下面的宏 #define DEVICE_NAME "/dev/test_device" #define TEST_MAGIC_NUM 'k' #define PORT_SET _IOW(TEST_MAGIC_NUM,1,int) #define PORT_GET _IO(TEST_MAGIC_NUM,2) #define PORT_LOCK _IO(TEST_MAGIC_NUM,3) 你的应用程序中,也应该把这样定义的命令字给包含进去...这两个个宏的意义是,不要和系统已经使用ioctl的cmd重复...因为ioctl接口并不是仅仅给你使用的.你自己写的命令字会把系统原有的给覆盖...~欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)