社区
Linux_Kernel
帖子详情
u盘中为什么要有scsi
jieao111
2010-04-23 09:59:02
最近看usb下stroage的driver,很奇怪。比如主机和设备通信要不用scsi,要不用usb,为什么u盘不只提供usb接口呢?
...全文
586
11
打赏
收藏
u盘中为什么要有scsi
最近看usb下stroage的driver,很奇怪。比如主机和设备通信要不用scsi,要不用usb,为什么u盘不只提供usb接口呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
刨冰雨
2010-07-23
打赏
举报
回复
不懂
jxj141
2010-07-23
打赏
举报
回复
底层传输的是usb协议,数据走的是scsi标准。就如usb转串口,底层是usb协议,数据是居于tty架构。
guopeixin
2010-07-21
打赏
举报
回复
[Quote=引用 7 楼 xbmeng2002 的回复:]
usb storage 驱动利用scsi 中间层将usb storage 设备虚拟成scsi 逻辑设备。这样可以方便的使用scsi 驱动的设备IO 接口,以及plugin/plugout 等机制。
[/Quote]
小弟奇怪了好久,终于找到答案了,哈哈
xbmeng2002
2010-05-27
打赏
举报
回复
usb storage 驱动利用scsi 中间层将usb storage 设备虚拟成scsi 逻辑设备。这样可以方便的使用scsi 驱动的设备IO 接口,以及plugin/plugout 等机制。
hallowwar
2010-05-27
打赏
举报
回复
[Quote=引用 7 楼 xbmeng2002 的回复:]
usb storage 驱动利用scsi 中间层将usb storage 设备虚拟成scsi 逻辑设备。这样可以方便的使用scsi 驱动的设备IO 接口,以及plugin/plugout 等机制。
[/Quote]
这个讲得好。
充电宝111
2010-05-07
打赏
举报
回复
我理解U盘需要存储啊,当然要有scsi
lisan04
2010-05-07
打赏
举报
回复
USB要用到scsi协议的
lys0310
2010-05-05
打赏
举报
回复
走的是scsi协议?
louyong0571
2010-05-05
打赏
举报
回复
这个问题貌似挺复杂
jieao111
2010-04-27
打赏
举报
回复
什么意思
tankdin
2010-04-23
打赏
举报
回复
有些地方PC里面的usb hub是作为SCSI的一个lun存在
做
U盘
必备资料,包括
SCSI
命令协议,各指令的详细说明等
做
U盘
必备资料,包括
SCSI
命令协议,各指令的详细说明等
U盘
安装
SCSI
阵列卡服务器系统
SCSI
阵列卡服务器在没有软驱、光驱的情况下安装操作系统(安装版server2003,非ghost版)
U1 学会
U盘
分区与启动
每个人都有
U盘
,可是如果你的
U盘
只用来存放文件,就太浪费了。 《学会
U盘
分区与启动》课程介绍了一个非常有用的电脑技能:制作可启动的
U盘
,并隐藏启动分区。这样,你的小伙伴会觉得你拥有了一个有魔力的
U盘
。 通过课程以及实际操作,学员可以了解:
U盘
启动有什么作用?
U盘
如何实现启动? 怎么分区让启动文件看不见? 课程讨论QQ群:
U盘
分区与启动 374630370
Linux读取
U盘
或者移动硬盘序列号并获取
U盘
或者移动硬盘分区名
Linux读取
U盘
或者移动硬盘序列号并获取
U盘
或者移动硬盘分区名。基本原理如下: 当有外置 USB 插入的时候,会产生 /proc/
scsi
/usb-storage 目录,并在其
中
产生数字文件(形如 1 2 3 4),此文件存储了设备相关信息。 相应的 /sys/class/
scsi
_device/ 目录
中
会有
scsi
设备的目录(ide 硬盘默认无子目录,sata硬盘默认有子目录),以数字开头(形如 1:0:0:0 2:0:0:0) 这个数字与前面 /proc/
scsi
/usb-storage目录
中
的相对应,子目录表示sata硬盘。比如 /sys/class/
scsi
_device/2:0:0:0/device/block
中
有USB设备,从该目录下得到
U盘
或者移动硬盘的分区名,比如sda1。 该demo实现了上述过程,先检查 /proc/
scsi
/usb-storage 目录,看是否有
u盘
或者移动硬盘接入,如果有则读取
u盘
或者移动硬盘的序列号,然后在/sys/class/
scsi
_device/目录下逐级查找,直到找到
u盘
或者移动硬盘的分区。 完整代码,可直接编译和测试,嵌入式环境下也是适应的。 在linux测试如下,id表示序列号,sdb1表示是分区名称: # ./a.out udisk dev num:0 udisk id:055CE21B ret:0 dev num:0 found dir:0:0:0:1 found dev dir:0:0:0:1,full path:/sys/class/
scsi
_device/0:0:0:1 sub founction found dir:sda found sd device dir:sda,full path:/sys/class/
scsi
_device/0:0:0:1/device/block/sda found dir:0:0:0:2 found dev dir:0:0:0:2,full path:/sys/class/
scsi
_device/0:0:0:2 sub founction found dir:sdb found sd device dir:sdb,full path:/sys/class/
scsi
_device/0:0:0:2/device/block/sdb found sd sub device dir:sdb1 found dir:0:0:0:0 found dev dir:0:0:0:0,full path:/sys/class/
scsi
_device/0:0:0:0 sub funciton Open Directory /sys/class/
scsi
_device/0:0:0:0/device/block Error:No such file or directory get name return:0,disk name:sdb1 # 因为有的USB设备会有好几个,比如把CD和
U盘
集成到一起,就会出现上面的情况,有多个子目录去查找。
SCSI
IDE 图书资料
编写
U盘
过滤器驱动时,需要学习
SCSI
命令,找到的书籍,大家看.
Linux_Kernel
4,436
社区成员
17,460
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章