QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1163|回复: 2

关于次设备号的迷惑

[复制链接]
发表于 2005-9-1 16:17:06 | 显示全部楼层 |阅读模式
现在在开发一个usb驱动, 有一个现象, 我在/dev下mknod 了两个字符设备,
分别是180/230 180/231 分别命名为
/dev/usb1
/dev/usb2

当我插上一个设备时,
open (/dev/usb1,...)可以访问,
open (/dev/usb2,...)也可以访问.

实在不解....

经验有限, 请版主放到合适的版去

谢谢

v: 2.4.10
发表于 2005-9-1 17:53:59 | 显示全部楼层
你同一个主设备号,用的是同一个驱动程序.
你在open操作(或驱动里)里有没有对次设备号进行了相应的处理?
你如果当成一个,那么当然可以操作了.
如果你加入这方面的限制,就不行了......看你的驱动怎么写的..
我的经验也有限,只知道这么多了.
回复

使用道具 举报

 楼主| 发表于 2005-9-1 18:58:22 | 显示全部楼层
搞了处理了
minor = MINOR (inode->i_rdev) - USB_DEVICE_MINOR_BASE;
也许不是这样处理?
我输出了inode->i_rdev, 结果值也是一样的,
也就是说, 我分别打开两个文件,在内核中送过来的inode至少在i_rdev这个元素是相同的

明天试试inode是不是送来的同一个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-3 04:26 , Processed in 0.039997 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表