fbpx
维基百科

DOS扩展器

DOS扩展器是一个电脑软件程序,令须保护模式环境的软件能够在实模式运行,即使其所处的操作系统衹能在实模式下运作。

Tenberry软件公司DOS/4GW启动信息

DOS扩展器起初在1980年代诞生,目的是要通过Intel 80286芯片(稍後扩展到Intel 80386)的指令,以应付MS-DOS及其它同类型操作系统的内存限制。

DOS扩展器操作 编辑

DOS可见内存
实模式
640K
DOS DOS
保护模式 80286 DOS扩展器
16位访问
保护模式
80386 DOS扩展器
32位访问
保护模式
虚拟 8086模式

DOS扩展器,是“扩展的”DOS程序,保护模式程序可藉之透明地使用底层的MS-DOS应用接口。这很重要:因为许多由DOS所提供的函数接口 须为“16位的段:16位的偏移”形式来指向头640k内存英语Conventional memory中的某一块内存;然而,保护模式以《全局描述符号表英语Global Descriptor Table》描述各段的特征,用段寄存器(现称“选择子”)指向《表》项,此举与实模式不兼容。芯片须切换回实模式(或虚拟86模式)以响应某个非保护模式的请求。

除了要“建起环境、载入程序来执行”之外,DOS扩展器还须提供(其它)转换层,这包括维护它自己在1MB实模式中的所申请的内存缓冲器,这些缓存用于在底层实模式操作系统与保护模式程序之间传输数据。因为在实模式/虚拟86模式与保护模式之间切换甚为耗时,所以扩展器会复制许多实模式操作功能函数到它自己的保护模式环境内,以此减少切换次数。例如DOS在操作系统与用户级别软件之间的广泛地以中断来通讯,DOS扩展器则因而拦截许多公用硬件(例如实时时钟、键盘)与软件(例如DOS自己、鼠标应用接口)的中断。许多扩展器更处理公用中断函数,例如常规视频BIOS中断函数。

DOS扩展器在本质上就是小型操作系统,提供了许多操作系统自己的底层功能。

诞生历史 编辑

可考证得DOS扩展器是由Phar Lap英语Phar Lap (company)所创建,但主推者却是Tenberry软件公司英语Tenberry Software(以前的 Rational 系统)的386DOS/4GW英语DOS/4GW扩展器,它带来了保护模式DOS程序。後来更有 Watcom_c在C、C++与Fortran在386芯片级别上的编译器,很快就无处不在地呈现在PC应用程序、游戏(例如id Software的成名软件毁灭战士)里了。

开始衹是商务程序之类的内存老饕需要DOS扩展器,後来PC游戏则把DOS扩展器的需求公诸天下。结果DOS扩展器的开发就成功了,两个新软件接口被建立出来,以照顾许多潜在冲突,这些冲突源于多种已存在的内存管理方法,现统一到衹给客户程序提供唯一的接口。

第一个接口是虚拟控制程序接口英语Virtual Control Program Interface(Virtual Control Program Interface,缩写作VCPI),旋为DOS保护模式接口英语DOS Protected Mode Interface(DOS Protected Mode Interface,缩写作DPMI)所代,後者在Windows 3.0 开发中诞生[1]。它提供了应用接口,以扩展的程序与实模式软件衔接、分配内存、处理中断服务,更让扩展器自己建立了保护模式切换、允许多个保护模式程序的同时共存。

DOS扩展器举例 编辑

  • Tenberry 软件公司的DOS/4G、DOS/4GW英语DOS/4G与DOS/16M。
  • Phar Lap英语Phar Lap (company)286|DOS扩展器、386|DOS扩展器。
  • Al Williams在《Dr. Dobb's Journal》[2][3]内付梓的PROT,是32位DOS扩展器,在另两册书亦有[4][5]。该扩展器可在仿真模式运行DOS与调用BIOS的优点,不用真的切换到实模式。
  • Thomas Pytel、Charles Sheffold的PMODE英语PMODE与PMODE/W[永久失效連結]後者在Watcom C替代了DOS/4GW,且在demoscene程序员中很流行。
  • Ergo(以前是 Eclipse, formerly A. I. Architects)OS/286、OS/386 扩展,与 DPM16、DPM32 服务。
  • Microsoft Windows在1990年前所有(64位元版本除外)版本的Windows,都包括英语Virtual DOS machine都包括 DPMI服务与 DOS扩展器[6]
  • HX DOS Extender提供的Win32有限支持。
  • DosWin32提供的Win32有限支持。
  • Charles W. Sandman的CWSDPMI英语CWSDPMI,是DPMI英语DOS Protected Mode Interface服务器,使用32位保护模式DOS的DJGPP程序。
  • 旧(pre-v2)版本的GO32使用DJGPPFree Pascal
  • Salford 软件的DBOS,是32位保护模式DOS扩展器,主用于其FTN77(Fortran编译器)。
  • Narech K模仿DOS/4GW英语DOS/4GDOS/32英语DOS/32


著名DOS扩展的应用程序 编辑

参考 编辑

  1. ^ Duncan, Ray; Petzold, Charles; Schulman, Andrew; Baker, M. Steven; Nelson, Ross P.; Davis, Stephen R.; Moote, Robert. Extending DOS: A Programmer's Guide to Protected-Mode DOS 2nd. Addison-Wesley Publishing Company, Inc. 1992: 433–462. ISBN 0-201-56798-9. 
  2. ^ Williams, Al. Roll your own DOS extender: Part I. Dr. Dobb's Journal (CMP Technology). October 1990, 15 (10): 16–18, 20, 24. ISSN 1044-789X. 
  3. ^ Williams, Al. Roll Your Own DOS Extender: Part II. Dr. Dobb's Journal (CMP Technology). November 1990, 15 (11): 74, 76, 80, 81–83, 85, 122–128, 130. ISSN 1044-789X. 
  4. ^ Williams, Al. DOS 5 A Developer's Guide. MT Books. 1991. ISBN 1-55851-177-6. 
  5. ^ Williams, Al. DOS 6 A Developer's Guide. MT Books. 1993. ISBN 1-55851-309-4. 
  6. ^ Williams, Al. DOS and Windows Protected Mode: Programming with DOS Extenders in C. Addison-Wesley. 1993: 30. ISBN 0-201-63218-7. 

外部链接 编辑

  • FreeDOS维基上的
  • The Free Country的DOS扩展器列表

dos扩展器, 是一个电脑软件程序, 令须保护模式环境的软件能够在实模式运行, 即使其所处的操作系统衹能在实模式下运作, tenberry软件公司dos, 4gw启动信息起初在1980年代诞生, 目的是要通过intel, 80286芯片, 稍後扩展到intel, 80386, 的指令, 以应付ms, dos及其它同类型操作系统的内存限制, 目录, 操作, 诞生历史, 举例, 著名dos扩展的应用程序, 参考, 外部链接操作, 编辑dos可见内存, 实模式640k, dos保护模式, 80286, 16位访问保护模式. DOS扩展器是一个电脑软件程序 令须保护模式环境的软件能够在实模式运行 即使其所处的操作系统衹能在实模式下运作 Tenberry软件公司DOS 4GW启动信息DOS扩展器起初在1980年代诞生 目的是要通过Intel 80286芯片 稍後扩展到Intel 80386 的指令 以应付MS DOS及其它同类型操作系统的内存限制 目录 1 DOS扩展器操作 2 诞生历史 3 DOS扩展器举例 4 著名DOS扩展的应用程序 5 参考 6 外部链接DOS扩展器操作 编辑DOS可见内存 实模式640K DOS DOS保护模式 80286 DOS扩展器16位访问保护模式 80386 DOS扩展器32位访问保护模式虚拟 8086模式DOS扩展器 是 扩展的 DOS程序 保护模式程序可藉之透明地使用底层的MS DOS应用接口 这很重要 因为许多由DOS所提供的函数接口 须为 16位的段 16位的偏移 形式来指向头640k内存 英语 Conventional memory 中的某一块内存 然而 保护模式以 全局描述符号表 英语 Global Descriptor Table 描述各段的特征 用段寄存器 现称 选择子 指向 表 项 此举与实模式不兼容 芯片须切换回实模式 或虚拟86模式 以响应某个非保护模式的请求 除了要 建起环境 载入程序来执行 之外 DOS扩展器还须提供 其它 转换层 这包括维护它自己在1MB实模式中的所申请的内存缓冲器 这些缓存用于在底层实模式操作系统与保护模式程序之间传输数据 因为在实模式 虚拟86模式与保护模式之间切换甚为耗时 所以扩展器会复制许多实模式操作功能函数到它自己的保护模式环境内 以此减少切换次数 例如DOS在操作系统与用户级别软件之间的广泛地以中断来通讯 DOS扩展器则因而拦截许多公用硬件 例如实时时钟 键盘 与软件 例如DOS自己 鼠标应用接口 的中断 许多扩展器更处理公用中断函数 例如常规视频BIOS中断函数 DOS扩展器在本质上就是小型操作系统 提供了许多操作系统自己的底层功能 诞生历史 编辑可考证得DOS扩展器是由Phar Lap 英语 Phar Lap company 所创建 但主推者却是Tenberry软件公司 英语 Tenberry Software 以前的 Rational 系统 的386DOS 4GW 英语 DOS 4GW 扩展器 它带来了保护模式DOS程序 後来更有 Watcom c在C C 与Fortran在386芯片级别上的编译器 很快就无处不在地呈现在PC应用程序 游戏 例如id Software的成名软件毁灭战士 里了 开始衹是商务程序之类的内存老饕需要DOS扩展器 後来PC游戏则把DOS扩展器的需求公诸天下 结果DOS扩展器的开发就成功了 两个新软件接口被建立出来 以照顾许多潜在冲突 这些冲突源于多种已存在的内存管理方法 现统一到衹给客户程序提供唯一的接口 第一个接口是虚拟控制程序接口 英语 Virtual Control Program Interface Virtual Control Program Interface 缩写作VCPI 旋为DOS保护模式接口 英语 DOS Protected Mode Interface DOS Protected Mode Interface 缩写作DPMI 所代 後者在Windows 3 0 开发中诞生 1 它提供了应用接口 以扩展的程序与实模式软件衔接 分配内存 处理中断服务 更让扩展器自己建立了保护模式切换 允许多个保护模式程序的同时共存 DOS扩展器举例 编辑Tenberry 软件公司的DOS 4G DOS 4GW 英语 DOS 4G 与DOS 16M Phar Lap 英语 Phar Lap company 286 DOS扩展器 386 DOS扩展器 Al Williams在 Dr Dobb s Journal 2 3 内付梓的PROT 是32位DOS扩展器 在另两册书亦有 4 5 该扩展器可在仿真模式运行DOS与调用BIOS的优点 不用真的切换到实模式 Thomas Pytel Charles Sheffold的PMODE 英语 PMODE 与PMODE W 永久失效連結 後者在Watcom C替代了DOS 4GW 且在demoscene程序员中很流行 Ergo 以前是 Eclipse formerly A I Architects OS 286 OS 386 扩展 与 DPM16 DPM32 服务 Microsoft Windows在1990年前所有 64位元版本除外 版本的Windows 都包括 英语 Virtual DOS machine 都包括 DPMI服务与 DOS扩展器 6 HX DOS Extender提供的Win32有限支持 DosWin32提供的Win32有限支持 Charles W Sandman的CWSDPMI 英语 CWSDPMI 是DPMI 英语 DOS Protected Mode Interface 服务器 使用32位保护模式DOS的DJGPP程序 旧 pre v2 版本的GO32使用DJGPP与Free Pascal Salford 软件的DBOS 是32位保护模式DOS扩展器 主用于其FTN77 Fortran编译器 Narech K模仿DOS 4GW 英语 DOS 4G 的DOS 32 英语 DOS 32 著名DOS扩展的应用程序 编辑此章節沒有提供參考來源 內容可能無法查證 2011年3月1日 Adobe Acrobat Reader 1 0 用了早期商务版本 DOS 4GW AutoCAD 11 PharLap 386 Lotus 1 2 3发行版的第3版 Rational系统DOS 16M 甲骨文公司商务版本软件 IBM公司的Interleaf 英语 Interleaf 1980年代的BBS软件包 Major BBS 英语 Major BBS 用了Phar Lap 英语 Phar Lap company 的DOS扩展器 Quarterdeck Office Systems Quarterdeck的 DESQview DESQview X 多任务软件 Watcom c在C C Fortran的x86编译器 1990年代早期中期的无数DOS游戏 多用DOS 4GW 包括 id Software的毁灭战士及其续集 又如雷神之锤 游戏 用DJGPP写的 Looking Glass Studios的网络奇兵 英语 System Shock Parallax Software的黑暗侵袭 Crack dot com的Abuse 暴雪娱乐的魔兽争霸 兽人与人类 魔兽争霸II 黑暗之门 3D Realms的永远的毁灭公爵 Midway的真人快打系列 西木工作室的命令与征服 红色警戒1 DMA Design 现称Rockstar North 的侠盗猎车手 後期游戏版本移植进了Windows以兼容新型电脑 NovaLogic的科曼奇 全球挑战 英语 Comanche series 用了特殊的非实模式 英语 Unreal mode 内存管理器 须80386芯片支持 与其他内存管理器 英语 DOS memory management 虚拟DOS机器 英语 Virtual DOS machine 不兼容 须在CONFIG SYS内配置复杂的DOS启动菜单 英语 DOS boot menu 後期版本包含了一个DOS扩展器 以解上述难题 Windows 9x自称为 操作系统 系列 但实为高级的更灵活扩展了MS DOS代码的Window Windows 95 Windows 98 SE Windows ME参考 编辑 Duncan Ray Petzold Charles Schulman Andrew Baker M Steven Nelson Ross P Davis Stephen R Moote Robert Extending DOS A Programmer s Guide to Protected Mode DOS 2nd Addison Wesley Publishing Company Inc 1992 433 462 ISBN 0 201 56798 9 Williams Al Roll your own DOS extender Part I Dr Dobb s Journal CMP Technology October 1990 15 10 16 18 20 24 ISSN 1044 789X Williams Al Roll Your Own DOS Extender Part II Dr Dobb s Journal CMP Technology November 1990 15 11 74 76 80 81 83 85 122 128 130 ISSN 1044 789X Williams Al DOS 5 A Developer s Guide MT Books 1991 ISBN 1 55851 177 6 Williams Al DOS 6 A Developer s Guide MT Books 1993 ISBN 1 55851 309 4 Williams Al DOS and Windows Protected Mode Programming with DOS Extenders in C Addison Wesley 1993 30 ISBN 0 201 63218 7 外部链接 编辑FreeDOS维基上的DOS扩展器 The Free Country的DOS扩展器列表 取自 https zh wikipedia org w index php title DOS扩展器 amp oldid 66479516, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。