第 12 章 通用访问方法SCSI控制器

写作:Sergey Babkin.
改编为手册:Murray Stokely.
翻译:spellar @SMTH.
目录
12.1. 提纲
12.2. 通用基础结构
12.3. 轮询
12.4. 异步事件
12.5. 中断
12.6. 错误总览
12.7. 超时处理

12.1. 提纲

本文档假定读者对FreeBSD的设备驱动程序和SCSI协议有大致了解, 本文档中很多信息是从以下驱动程序中:

  • ncr (/sys/pci/ncr.c) 由Wolfgang Stanglmeier and Stefan Esser编写

  • sym (/sys/dev/sym/sym_hipd.c) 由Gerard Roudier编写

  • aic7xxx (/sys/dev/aic7xxx/aic7xxx.c) 由Justin T. Gibbs编写

和从CAM的代码本身(作者 Justin T. Gibbs, 见/sys/cam/*)中摘录。当一些解决方法看起来 极具逻辑性,并且基本上是从 Justin T. Gibbs 的代码中一字不差地摘录时, 我将其标记为recommended

本文档以伪代码例子进行说明。尽管有时例子中包含很多细节,并且 看起来很像真正代码,但它仍然只是伪代码。这样写是为了以一种可理解 的方式来展示概念。对于真正的驱动程序,其它方法可能更模块化,并且 更加高效。文档也对硬件细节进行抽象,对于那些会模糊我们所要展示的 概念的问题,或被认为在开发者手册的其他章节中已有描述的问题也做同样 处理。这些细节通常以调用具有描述性名字的函数、注释或伪语句的形式展现。 幸运的是,具有实际价值的完整例子,包括所有细节,可以在真正的驱动 程序中找到。

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.