`
carmark
  • 浏览: 160710 次
  • 性别: Icon_minigender_1
  • 来自: 大连->北京
社区版块
存档分类
最新评论

挖个坑,通过一个bug学习scsi~

阅读更多

 

开始来点前期准备的知识,主要关于Linux的I/O 路线,然后就是scsi的整体结构说明。
1,Linux I/O路
http://www.thomas-krenn.com/en/oss/linux-io-stack-diagram/linux-io-stack-diagram_v0.1.png
通过这张图应该可以很顺利的理解整体的IO流向。在这张图里面可以看出,主要分为两层——用户层和内核层,用户层当然就是一些上层的应用
至于内核层就是这里面主要需要讲的,由上至下依次是vfs,具体的文件系统(ext2,ext3,ext4等,文件系统针对不同的实现有着不同的逻辑,
但是都是需要与下面的驱动程序交互),块I/O层,I/O调度,接下来属于SCSI的三个层次,最后是底层物理设备。找到这张图还是非常幸运的,
对于理解整个执行过程会事半功倍的。
2,Linux SCSI子系统
http://www.ibm.com/developerworks/cn/linux/l-scsi-subsystem/
M. Tim Jones先生已经做了很多的介绍,我就不再多说了,重复造轮子没意思。这里我查找发现的结果是,SCSI本身有自己的RFC定义,并且
有多个版本,分别是SCSA(SCSI Architecture)-1,-2,-3,-4,-5,但是主题上的层次结果基本不变,通过上面的link,阅读一下里面的内容
应该就有个深入的认识了。
3,SCSA深入分析
http://blog.csdn.net/yunsongice/article/details/6171286
http://blog.csdn.net/yunsongice/article/details/6171290
这两篇文章中整体介绍了初始化阶段以及scsi设备驱动体系架构,讲的还是比较详细了。

我主要需要修改的是SCSI结构的low level层的iscsi驱动,但是是需要有上层的scsi结构进行调用,因此需要对整体的理解
顺便学习下整体的结构。由于做的是Unix上面的修改,具体实现还是有些差别,尽量两个都有理解,然后对比的说明下。
刚刚开始入手,找了些网上的资源加以说明,并非原创,不断完善~

 

 

http://www.dalei.org/scsi-introduction-userful-links/

1
3
分享到:
评论

相关推荐

    一个全是bug的项目-适用于小白学习

    这是个全是bug的项目,可以学习常见的问题,如何找错及改正 设计技术:jdbc,swt,oracle,java http://blog.csdn.net/q176782/article/details/71597988

    这个修正了之前的BUG

    1. **BUG修复**:标题提到“修正了之前的BUG”,这意味着该压缩包可能包含一个或多个源代码文件,这些文件对原有的程序错误进行了修复。在软件开发过程中,BUG修复是持续改进和优化过程的一部分,它有助于提高软件的...

    软件测试通过及BUG分级标准

    本文将详细阐述软件测试通过的标准以及BUG分级的相关知识点,旨在为软件测试人员提供一个清晰、准确的参考依据。 #### 一、软件测试通过标准 1. **功能完整度**:软件必须实现其设计文档中规定的全部功能,并且...

    Bug Brain 神经网络学习软件

    总的来说,Bug Brain神经网络学习软件以其易用性和强大的功能,为初学者和专业人士提供了一个理想的平台,用于学习和实践神经网络技术。无论是对理论的理解还是对实践的掌握,都能在这款软件中得到提升。对于想要...

    软件测试 BUG管理 经验和实践

    通过学习和借鉴这些经验,可以提升整个团队的BUG管理能力,推动软件项目的成功。 总结,软件测试和BUG管理是软件开发中的关键环节,涉及到报告、分类、优先级设定、追踪和关闭等多个方面。有效的BUG管理能提高产品...

    bugfree,bug管理

    在软件开发中,bug是不可避免的,BugFree提供了一个高效的平台来记录、跟踪、修复这些问题,确保项目的顺利进行。 BugFree的主要功能包括: 1. **问题创建**:用户可以创建新的bug报告,包括详细描述bug的现象、...

    bugfreee一个bug管理系统jsp+mysql

    总的来说,Bugfree是一个实用的bug管理系统,它充分利用了JSP的动态网页能力和MySQL的数据管理优势,为软件开发团队提供了一个便捷的工具,以更好地追踪、管理和解决项目中的bug,从而提升整个项目的质量和效率。...

    一个用来管理BUG的工具源码access97;access2000;access2002

    标题中的“一个用来管理BUG的工具源码access97;access2000;access2002”指的是一个用于管理软件错误或缺陷(通常称为BUG)的应用程序的源代码,该程序支持Microsoft Access 97、2000和2002这三个版本。这些版本的...

    bugfree2.0软件测试bug管理工具

    总的来说,BugFree 2.0 是一个实用的缺陷管理工具,尤其适合中小型企业或开源项目使用。通过有效的缺陷跟踪和团队协作,它能够帮助提升软件质量,优化开发流程。对于初次接触BugFree的用户,推荐先了解其基本概念和...

    bugfree管理工具

    用户可以通过百度搜索"bugfree的使用手册"来获取详细的指南,这意味着BugFree有一个详细的文档系统,可以支持用户快速上手和深入学习。 作为一款“用于bug管理”的标签,BugFree具备以下关键特性: 1. **缺陷跟踪**...

    圣诞地图BUG,只要一分~!

    根据提供的标题、描述、标签及部分内容,我们可以推断出这篇文档是关于一款游戏中的一个特定BUG(漏洞)的介绍,该BUG出现在版本为3.0的圣诞主题地图中。接下来,我们将对该BUG进行详细的解析与说明。 ### 圣诞地图...

    测试思考之bug缺陷趋势曲线图

    感触还是有的,现对于某几个相关的问题写了一些个人的想法,这次说的是关于bug曲线图的问题,  我们大部分人都知道所有的测试执行完成后,都会有测试报告,而测试报告的一个最关键的因素就是bug曲线图,一般都会有2...

    多轮测试BUG统计分析BUG趋势

    自己做的一个Bug统计图,大家相互参考,相互学习!

    Android-Buglife一个用于iOSApp的Bug报告SDK和Web平台

    通过简单的API调用,开发者可以在应用中添加一个故障报告功能,用户在遇到问题时可以直接触发这个功能,收集应用的当前状态,包括屏幕截图、日志、设备信息等,这些信息将被发送到Buglife的服务器,以便开发者后续...

    软件测试BUG清单分析说明

    如果一个BUG可以轻松地被重现,这表明问题可能具有普遍性,需要立即解决。测试人员应记录每次尝试重现BUG的难度,并据此给出相应的分数。例如,每次操作都能立即复现的BUG可得1分,而难以复现的BUG则得分更高。这样...

    bugfree bugfree bugfree bugfree bugfree

    bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree bugfree

    BugFree3.0.4导出BUG操作步骤

    BugFree是一个开源的缺陷跟踪系统,它允许项目团队对软件开发中的错误(bug)进行记录、跟踪和管理。BugFree3.0.4是BugFree的一个版本,导出BUG的操作步骤通常涉及到以下知识点: 1. BugFree系统环境配置:BugFree...

    bugfree源码和相应的安装文档-bug系统

    1. **缺陷管理**:BugFree提供了一个统一的平台,让用户可以报告、跟踪和解决软件中的问题。用户可以创建bug报告,详细描述问题的现象、影响程度和重现步骤,并将其分配给特定的开发人员处理。 2. **版本控制**:...

    漏洞挖掘必读--A Bug Hunter's Diary

    书中提到了漏洞挖掘的重要性,强调了教育一个人如何利用已知的漏洞仅仅能让他成为一时的黑客,而教会他如何发现并利用软件中的bug,则可以让他终生受益。这一观点指出了学习漏洞挖掘的深层价值。 在内容上,《漏洞...

    软件测试中BUG数据分析

    在软件测试过程中,BUG数据分析是...同时,BUG的严重程度也是一个关键指标,严重影响用户体验的BUG应被优先处理。通过这些分析和评价,可以不断优化测试流程,提高软件质量,降低维护成本,并推动团队整体性能的提升。

Global site tag (gtag.js) - Google Analytics