驱动和系统简史.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
驱动和系统简史

HYPERLINK /driveit/archive/2004/08/04/58842.aspx 1.1设备驱动程序简史 1.1设备驱动程序简史 最早的运行在Intel处理器芯片上的PC机,CPU提供给其640KB的所谓的“实”内存。这是因为内存是真正在那里以内存芯片的形式存在,并且可以依靠处理器的20位物理地址直接访问的。而处理器也只提供了一种模式,称之为实模式,其内部由处理器将两个16位的寄存器结合,组成20位的内存地址形式,给相应的涉及内存操作的指令使用。计算机体系结构高扩了扩充插槽的概念使得一些用户可以将买来的独立的板卡组装到机器上。这类板卡常常伴随有一些用于设置DIP开关的指令(随后,跳线出现),这些指令可以轻微地改变I/O配置。但你不得不了解你PC的所有I/O和中断分配来正确的做这件事情。MS-DOS基于CONFIG.SYS文件整合起了一种架构,使得操作系统能够装载原始设备和附加板卡的实模式设备驱动程序。所以,不可避免的就是这些驱动程序要使用汇编语言来编写并且或多或少地依赖于一定的BIOS中断指令和MS-DOS自身的系统服务。这样,最终用户不得不通过命令调用应用程序。而应用程序开发者也不得不为程序开发出视频显示,键盘,和鼠标程序,因为MS-DOS和系统BIOS都没有把其做的充分。 之后,IBM引入了基于80286处理器的AT系列的个人计算机。286处理器添加了保护模式作业,这样,这样程序可以访问的主内存和扩展内存达到16MB,其使用24位段地址(通过一个在16位段寄存器中的段选择器被间接指定)和一个16位的偏移地址。MS-DOS自己保持为一个实模式操作系统,所以当时许多软件厂商做过一些DOS的扩展产品来允许程序员将其实模式下的应用程序移到保护模式下并能访问到全部内存。自MS-DOS开始统治电脑以来,驱动程序技术基本上就没有前进。 改变PC机技术的分水岭在我看来,应当是——Intel发布其80386处理器芯片之日。386允许程序通过页表间接地访问访问高达4GB的虚拟内存地址,它还允许程序不费吹灰之力就能将32位数据用于算法和寻址上。那一阵子曾经让软件工具市场很狼狈,如编译器厂商和DOS扩展产品的公司…………设备驱动程序依旧是用汇编语言写的16位的实模式程序并且通过CONFIG.SYS安装,而终端用户依旧需要手动配置板卡 之后的处理器主要是在性能和速度上的提升,本质上并没有改变。如我写这章的时候,1GHz的CPU,50G的硬盘和512MB(乃至更高)的内存的计算机已经司空见惯了。 与之同时,操作系统平台上的反展也进行着。大多数人,甚至包括系统程序员,也更加喜欢图形交互式的计算机而不是字符式的了。实际上Microsoft在图形化操作系统上并没有抢先一步,Apple在其第一款Macintosh上倒是先发制人。但之后微软却用其Windows系列操作系统在这个领域上取得了霸主地位。一开始,Windows不过是一个实模式的MS-DOS下的一个图形模式的外壳,随着时间的过去,一批包括显示,键盘和鼠标的通用Windows驱动出现了。这些驱动是可执行文件,其扩展名为.DRV,主要使用汇编语言编写。 随着AT系列电脑的问世,Microsoft生产了一个有保护模式版本的Windows。但Microsoft还是在保护模式下使用实模式下的.DRV驱动。硬件除了标准的Windows设备(如显示,键盘和鼠标)外,继续沿用实模式下的MS-DOS驱动。 最终,在386处理器时代后不久,Micorsoft发布了Windows3.0,一个完全利用虚拟内存方式的使用“增强”模式作业的操作系统。虽然如此,但其新的硬件依旧需要实模式驱动。但现在已经有了大问题。若要多任务地执行MS-DOS程序(这是用户所需要的),Micorsoft不得不建立虚拟操作系统。每个MS-DOS应用程序在Windows的图形环境上运行在其自己的虚拟机上。但是所有这类的MS-DOS应用程序都可能会通过IN和OUT指令来直接访问硬件,读写设备存储器,处理来自硬件的中断。此外,两个或更多的应用程序共享处理器时间片将会导致硬件上的指令冲突。这类冲突当然也会在显示,键盘和鼠标上表现出来。 为了允许多种程序共享物理硬件,Microsoft引入了虚拟驱动设备的概念,其主要的目的是“虚拟”一个硬件设备。这样驱动被统一称之为VxD,因为其大部分的文件名适合VxD.386的特征。其中,x代表其管理的设备。利用这一概念,Windows 3.0创建了可以单独使用许多硬件设备的虚拟机外观。但由于设备自身的发展,大多数的时候它还得被实模式的MS-DOS驱动程序所驱动。VxD就扮演了 通过首先截取应用程序试图接触硬件的尝试,把应用程序的访问传递给了硬件,并暂时地将处理器切换到一种被称为虚拟8086的实模式下来

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档