USB -- scsi命令集

摘自:《圈圈教你玩usb》 241页

SCSI(small computer system interface)是小型计算机系统的缩写,有一套完整的协议规定其命令和命令数据的响应。scsi的命令有很多,但u盘中常用的就几个:INQUIRY,READ CAPACITY , READ(10),WRITE(10)等命令。

下面会一个一个总结。

U盘需要处理的命令如下:

1:inquiry:设备的一个描述,告诉host你的设备是什么,名字叫什么,用的什么协议,这里用的SCSI协议—SPC2

2:READ FORMAT CAPACITIES:读格式容量(The READ FORMAT CAPACITIES command allows the host to request a list of the possible capacities that can be formatted on the currently installed medium.)

3:READ CAPACITY:读取容量信息

4:READ(10):回发在逻辑单元的数据,既回发MBR(Main Boot Record)主引导扇区

5:SENSE6:目的在于获得设备内部很多潜在的信息,其中包括了是否设置了写保(The MODE SENSE(6) command (see table 62) provides a means for a device server to report parameters to an application client. It is a complementary command to the MODE SELECT(6) command. Device servers that implement the MODE SENSE(6) command shall also implement the MODE SELECT(6) command.)

6:WRITE(10):host向slave发生数据并写在u盘存储器里面。

7:TEST UNIT READY:检查U盘准备好没有。

时间: 2025-01-10 05:47:22

USB -- scsi命令集的相关文章

USB系列之八:透过ASPI执行SCSI命令

在<USB系列之七>里我们介绍了ASPI的规范,并对一系列ASPI的命令做了测试,其中的02号命令是执行SCSI命令,我们专门在这篇文章中介绍,在<USB系列七>中,我们已经了解了调用ASPI的方法,主要是要填一个SRB(SCSI Request Block)的表,在以前的<USB系列之三:从你的U盘里读出更多的内容>文章中我们通过DOSUSB已经实现了许多SCSI命令,这些命令包括: SCSI INQUIRY Command SCSI READ CAPACITY (1

MHA 日常维护命令集

MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 2.查看复制是否建立好 masterha_check_repl --global_conf=/etc/masterha/masterha_default.conf --conf=/etc/masterha/app1.conf 3.启动mha noh

CentOS7网络配置——nmcli命令集

体验过CentOS7系统的都知道,CentOS7虽然是CentOS6.8的下一个版本,但两者的性能以及各个方面都发生了很大的变化,单从网络配置模块来说,就做了很大的改变,网卡的命名规则以及网络配置工具,都做了较大的更新,CentOS7上配置网络的主要工具是nmcli命令集,但刚接触这个命令集的朋友,都会感觉很不习惯,一个命令下面的选项及参数可以用火车皮拉了,所以记忆起来确实是挺麻烦的,但有弊就有利,使用CentOS7之前的系统时如果要配置网络,要使用好多的命令组合完成,而且还不会直接修改配置文件

Git笔记之使用git Bash的命令集

首先,吃水不忘挖井人,感谢linux创始人林纳斯托瓦兹(Linus Torvalds)在2005年开发了Git版本控制系统. Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理.它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便.而且速度很快.Git 最为出色的是它的合并跟踪(merge tracing)能力. Git Bash Here 0.Dash命令格式 命令 [-options] [参数] $ 可选 文件 bash 常见命令

VIM命令集

Command Action Notes vim file +54 open file and go to line 54 any : command can be run using + on command line vim -O file1 file2 open file1 and file2 side by side   Insert enter insert mode so you can start typing. Alternatively one can use i ora. E

《Ansible权威指南》笔记(3)——Ad-Hoc命令集,常用模块

五.Ad-Hoc命令集1.Ad-Hoc命令集通过/usr/bin/ansible命令实现:ansible <host-pattern> [options]    -v,--verbose  输出执行过程信息verbose mode (-vvv for more, -vvvv to enable connection debugging)    -i INVENTORY, --inventory-file=INVENTORY    指定inventory信息,(default=/etc/ansi

tcl脚本学习十三:列表命令集

lesson 13 : 列表命令集 list arg1 arg2 ... 创建一个列表lindex list index 返回列表 list 中的第 index 个元素(element)值llength list 计算列表 list 元素个数 example ① : 创建一个List ,List的用法 1. set l1 [list Sun Mon Tues] =>Sun Mon Tues ;#列表 l1 含有三个元素 2. set l2 [list $l1 Wed] => {Sun Mon

linux IO诊断命令集

IO.sh ##iostat是查看磁盘活动统计情况 ##显示全部设备负载情况 r/s: 每秒完毕的读 I/O 设备次数.即 rio/s:w/s: 每秒完毕的写 I/O 设备次数.即 wio/s等 iostat ##每隔2秒刷新磁盘IO信息,而且每次显示3次 iostat 2 3 #显示某个磁盘的IO信息 iostat -d sda1 ##显示tty和cpu信息 iostat -t ##以M为单位显示磁盘IO信息 iostat -m ##查看TPS和吞吐量信息 kB_read/s:每秒从设备(dr

linux 性能诊断工具命令集

#查看当前系统load uptime #查看系统状态和每个进程的系统资源使用状况 top #可视化显示CPU的使用状况 htop #查看每个CPU的负载信息 mpstat -P ALL 1 #每隔1秒查看磁盘IO的统计信息 iostat -xkdz 1 #每隔一秒查看虚拟内存的使用信息 vmstat 1 #查看内存使用统计信息 free #查看网络使用信息 nicstat -z 1 #类似vmstat的显示优化的工具 dstat 1 #查看系统活动状态,比如系统分页统计,块设备IO统计等 sar