文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(四)

10、              usb_stor_clear_halt函数讲解 Halt是endpoint的feature; CLEAR FEATURE那是所有的usb设备都通用的,因为它是usb spec所规定的    &nb...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(三)

  10、              互斥锁:一个女孩如果心有所属,那么对你来说,就 仿佛已有人在你之前给她上了一把锁,而钥匙,不在你这里.(很形象哦)    互斥锁指的就是一个资源只能同时被一个进程操作,互斥的字面意思...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(六)

27、INQUIRY 命令是最最基本的一个 SCSI 命令,,比如主机第一次探测设备的时候就要用INQUIRY命令来了解这是一个什么设备,比如scsi总线上有一个插槽插了一个设备,那么scsi主机就问它,你是scsi磁盘呢,还是scsi磁带,又或是scsi的CD ROM呢?作为设备,它内部一 定有一段固件程序,即所谓的 firmware.它就在接收到主机的&...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(五)

1、在Linux内核中,整个scsi 子系统被分为三层.upper level,mid level,lower level; 解释:来说说这三层吧: upper level,用伟大的汉语来讲,就是最上层,她是和操作系统打交道的,比如您要是有一块scsi 硬盘,那么您就需要使用sd_mod.o这么一个模块,她实际上是与硬件无关的,是纯粹的软件上的抽象出来的数据结构组建的模块. mid level,....

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(八)

37、错误处理 device_reset 在这里对应的就是注销,bus_reset 对应的就是重起; 功能:给设备发送一个 reset 的 request,然后clear掉halt feature,保证设备的端点没有停止.就这些,这就够了. Bus_reset:usb_lock_device_for_reset/usb_reset_device/u...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是U盘笔记(七)

32、CDB:command descriptor block( 命令描述符块) 而我们为CDB准备了一个字符数组,结构体struct scsi_cmnd 中的unsigned char cmnd[16],length最大为12个字节 既然这个 CDB 有 16 个字节,那么为什么我们每次都判断 cmnd[0]就够了?仔细看这三...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是HUB笔记(二)

12、events:(通过ps –el查看)    events被叫做工作者线程,或者说 worker threads,更确切的说,这些应该是缺省的工作者线程.而与工作者线程相关的一个概念就是工作队列,或者叫 work queue. 工作队列的作用:是把工作推后,交由一个内核线程去执行,更直接的说就是如果您写了一个函数,而您现在不想马上执行它,您想...

文章 2017-11-12 来自:开发者社区

菜鸟学Linux 第019篇笔记 vim编辑器使用

菜鸟学Linux 第019篇笔记 vim编辑器使用 vim编辑器 文本编辑器、字处理器 ASCII nano, sed, vi vim vi: Visual Interface Vim: VI iMproved (vim - Vi IMproved, a programmers text editor) 一个全屏编辑器、模式化编辑器 vim模式: 编辑模式(命令模式) ...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是HUB笔记(四)

24、去抖动技术 原则上,spec规定,只有持续了100ms的插入才算真正的插入,或者说才算稳定的插入.hub_port_debounce 就是干这件事情的,这个函数会让你至少等待 100ms,如果设备依然在,那说明稳定了; 25、printk_ratelimit: 是 printk 的变种,printk_ratelimit 的用途就是当...

文章 2017-11-12 来自:开发者社区

读Linux那些事儿之我是HUB笔记(三)

注意:hub 里面的中断端点是 IN 的,不是 OUT 的.但这并不说明凡是中断传输数据一定是从设备到主机,没这种说法,别起哄.不过hub需要的确实只是IN的传输.首先,每一个男人都应该知道,中断是由设备产生的. 19、interval:usb hub里面的interval是间隔期,尽管中断本身不会定期发生,但是有一个事情是周期性的,对于 ...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

Linux宝库