reactos操作系统实现(101)

这里主要来分析ATAPI驱动程序,那么就要先了解ATAPI的相关知识了。

1 AT ATTACHMENT ATA):ATA接口是个人电脑上最具有实力的存储接口,ATA接口早先被广泛应用于IBM及其兼容机,它被定义为标准的硬盘接口。

 

2 ATA-1ATA硬盘接口的第一代标准ANSI X3.279-1994,也就是早期的IDE接口。

 

3 ATA-2ATA硬盘接口的第二代标准ANSI X3.279-1995,就是大家所知道的Fast ATA或者称之为Enhanced IDEEIDE)接口。

 

4 Apple-ATAApple上使用的ATA接口,当然也是由标准的ATA接口演化而来的,在ANSI的国际标准提案申请为X3T9.2/90-143.Revision 3.1,这一个由标准ATA接口规格演化而来Apple-ATA支持IDE接口的硬盘LBA驱动模式,但是没有支持ATATP

 

5 ATA-3ATA硬盘接口的第三代标准ANSI X3T13/2008D Revision 7draft),同样包含在Fast ATAEnhanced IDE的接口之中,一般使用者大多都知道Fast ATA或是Enhanced IDE接口,而对原来Fast ATAEnhanced IDE接口居然还包括了ATA-2以及ATA-3两组国际标准。

 

6 ATAPIAT Attachment Packet Interface,这是ATA Protocol的延伸,被定义用来支持CD-ROM光驱以及Tape磁带机,这一个ATAPI Protocol容许硬盘以外的设备使用ATA数据线。

 

7 ATA/ATAPI-4ATA硬盘接口的第四代标准ANSI X3T13/D96153draft),也就是大家所知道的Ultra ATA或是Ultra DMA,这一个版本支持33MB/sec的数据传输率(in burst mode),相信各位读者对ATA-4/Ultra DMA都是比较熟悉的了。

 

8 ATA/ATAPI-5:这是目前ATA硬盘接口的比较新的一代标准,这一规格里规定的数据流传输速率(in burst mode)为66MB/sec,并且加强了内部资料的检查与错误修正的算法,强化了资料的完整性和可靠性。

 

9 ATA/ATAPI-6:还有更新的一个标准,是ATA/ATAPI-5的改进,这一规格里规定的数据流传输速率(in burst mode)为100MB/sec

 

PIO驱动模式的资料传输速率

 

PIO Mode Cycle time Transfer Rate

PIO Mode 0 600ns 3.3Mbytes/sec

PIO Mode 1 383ns 5.2Mbytes/sec

PIO Mode 2 240ns 8.3Mbytes/sec

PIO Mode 3 180ns 11.1Mbytes/sec

PIO Mode 4 120ns 16.6Mbytes/sec

 

Enhanced IDE接口发展至今,ULTRA DIRECT MEMORY ACCESSULTRA-DMA)的是目前最新的目前大家最为熟悉的就是Ultra-DMA的资料传输率最高可以达到ATA-3标准的四倍,也就是66.6Mbytes/sec

 

实际上硬盘接口的鼻祖,除了SCSI界面以外,就是MFM/ST-506 Bus接口了,后来经过不断的演变才演进成为今天的Enhanced IDE接口,而在Enhanced IDE之前的IDE/AT-BUS接口,则仅仅提供了PIO驱动模式,而没有DMA驱动模式,这两种驱动模式简单来讲区别主要是在数据传输时是否需要CPU来控制。在PIO模式下,任何一个硬盘的读取动作,都必须经过CPU来控制管理,所以只要硬盘读写动作频繁的时候,CPU的资源就被大量的消耗,因而降低了电脑整体的效率。而在DMA模式下,硬盘和内存之间的数据可以直接交换,这样就不会占用CPU的资源,提高了电脑的整体效率。读者千万不要忽略掉从PIODMA的进步,事实上个人电脑内的任何一个动作都必须运用系统的内存,毕竟CPU内部的缓存器容量太小了,所以凡是程序的读取、运算都必须在内存上操作,这样从硬盘到内存的数据交换就会非常频繁,所以简化这么一步对于电脑整体性能的提高还是非常突出的。

 

以前硬盘采用PIO模式的时候,只要一开始大量的硬盘读写操作,就会使得电脑的性能急剧下降,让人感觉电脑总在等待什么似的,实际上SCSI接口一开始也是采用PIO模式,后来也演变成了DMA模式,IDE/AT-BUS接口也不例外,到了PIO Mode 4驱动模式之后,IDE/AT-BUS接口已经成功的演化成为Enhanced IDE接口,驱动模式也由PIO Mode 4升级为Multiword DMA Mode2,原本预计还有一个PIO Mode 5会问世的,但是DMA Mode已经出现,PIO Mode已经没有市场了。

 

所以读者可以认为Enhanced IDE接口的特点主要在于:驱动模式的改变,增加了对非硬盘存储设备的支持等,而且原本是一组的IDE界面现在也增加到了两组。

 

DMA的全名为Direct Memory Access直接内存存取,采用DMA驱动模式以后,CPU不再象往常那样需要花费相当多的时间在硬盘的O/I操作上,DMA的意义就是在于让硬盘和内存直接沟通,所有的硬盘操作都不需要占用太多的CPU时间。

 

接着让我们来看看DMA Mode的相关资料,DMA驱动模式资料传输速率:

DMA Mode I/O Cycle time Transfer Rate

Single-word DMA Mode 0 900ns 2.1 Mbytes/sec

Single-word DMA Mode 1 480ns 4.2 Mbytes/sec

Single-word DMA Mode 2 240ns 8.4 Mbytes/sec

Multi-word DMA Mode 0 480ns 4.2 Mbytes/sec

Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

caimouse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值