基本命令:

      d:

      cd wenjian

      cd..

      dir

--------------

----

------

------

------

----

维基:dos

    

DOS,是磁盘操作系统(英文:Disk Operating System)的缩写,是个人计算机上的一类操作系统。从1981年直到1995年的15年间,DOS在IBM PC兼容机市场中占有举足轻重的地位。而且,若是把部分以DOS为基础的Microsoft Windows版本,如Windows 95、98和Me等都算进去的话,那么其商业寿命至少可以算到2000年。

DOS家族包括MS-DOS、PC-DOS、DR-DOS、FreeDOS、PTS-DOS、ROM-DOS、JM-OS等,其中以MS-DOS最为著名。虽然这些系统常被简称为"DOS",但没有任何一个系统单纯以"DOS"命名(只有一个毫无关连的1960年代IBM大型主机操作系统以此命名)。此外,有几个和DOS无关、在非x86的微计算机系统上运行的磁盘操作系统在名称中也有"DOS"字眼,而且在专门讨论该机器的场合中也会简称为"DOS"(例如:AmigaDOS、AMSDOS、ANDOS、Apple DOS、Atari DOS、Commodore DOS、CSI-DOS、ProDOS、TRS-DOS等),但这些系统和DOS可执行文件以及MS-DOS API并不兼容。

目录

[隐藏]

  • 1设计架构2历史

    • 1.1脚本语言
    • 1.2硬件访问
    • 1.3设备保留名称
    • 1.4磁盘命名法
    • 1.5开机流程
  • 3淡出
  • 4持续发展5软件
    • 4.1嵌入式系统
    • 4.2模拟器
    • 4.3与Microsoft Windows的关系
  • 6易用性7限制
    • 6.1用户界面
    • 6.2多任务
  • 8命令集
  • 9参考文献
  • 10参见

设计架构[编辑]

放于IBM原装软盘驱动器的DOS 5.25吋系统开机磁片

所有DOS类的操作系统都是在使用Intel x86或其兼容CPU的机器上运行的(主要是IBM PC及其兼容机)。最早的时候,DOS并未受限于此;为了在许多以x86为基础,但和IBM PC不兼容的机器上运行,产生了不少特定机器版本的DOS及类似的操作系统。[1]

DOS是单一用户、单工的操作系统,拥有不可重入的基本核心函数(意即同时间只能有一个程序调用这些函数)。有一个例外的状况,就是常驻程序(Terminate and Stay Resident,缩写为TSR)。某些常驻程序允许用户多任务操作;然而此时仍有“核心不可重入”的问题:当一个进程(process)调用了操作系统核心中的服务函数(也就是系统调用)时,在这个调用结束之前,其他的进程绝对不能进行系统调用、打断第一个进程。[2]

DOS的核心为用户程序提供了各式各样的函数,例如:在屏幕上显示文字、从键盘读入字符、访问磁盘上的文件等等。

脚本语言[编辑]

DOS通过批处理文件(扩展名为.BAT)提供界面脚本的功能。这些文件是纯文本格式的,可以用任何的文本编辑器(像是edit.com)编辑。他们运行起来和编译而成的程序没有两样。文件中的每一行都被视为命令来运行。批处理文件也可以使用数个内部命令,例如goto和条件表达式。[3]

硬件访问[编辑]

DOS提供了简单的硬件抽象层,让程序员可以开发文字界面的应用程序;但这个硬件抽象层无法访问大部分的计算机硬件,像是显卡、打印机,或是鼠标等。这使得程序员必须直接访问硬件,导致每个应用程序都有属于自己的一组硬件周边驱动程序。硬件制造商会将他们的硬件规格书发布,以确保在受欢迎的应用程序中有它们的驱动程序。[4]

设备保留名称[编辑]

在DOS中,有数个名称保留给设备使用,无法拿来当一般文件的名称(不管扩展名是什么);这些保留名称是用来将应用程序的输出发送给硬件周边用的。这样的限制也影响到数个版本的Windows,在某些情况下甚至会造成死机和安全性弱点。[5]

其中一些保留名称有:NUL:COM1:AUX:COM2:COM3:COM4:CON:LPT1:PRN:LPT2:LPT3:,以及CLOCK$[6]

磁盘命名法[编辑]

在DOS中,磁盘驱动器是利用不同的字母命名的。标准的作法是保留"A"和"B"给软盘驱动器。若是系统只有一台软盘驱动器的话,DOS允许这台软盘驱动器同时使用这两个代号,然后DOS会要求用户更换磁片。这么做可以让用户把文件拷贝到不同的软盘上,或是运行某一片软盘上的程序,然后把数据文件存放在另一片软盘上。最早硬盘的代号为"C"和"D"。在一台硬盘驱动器上,DOS只允许一个活动分区的存在。随着支持的硬盘数量越来越多,磁盘代号的命名方法演变为:先将磁盘代号指派给每一颗硬盘驱动器的活动主分区,然后第二轮将代号指派给延伸分区中的逻辑磁盘区,第三轮再把代号指定给非活动的主分区。(前题是:它们存在,而且包含了DOS可以读取的文件系统。)最后,DOS才将代号指派给光盘驱动器、RAM disk,以及其他的硬件。一般来说,磁盘代号都是依照驱动程序的加载顺序,按字母顺序指派的,但驱动程序也可以要求DOS指派不同的字母。例如网络磁盘驱动器的驱动程序通常会指派最后的几个字母。[7]

因为DOS的应用程序会直接使用这些磁盘代号(和Unix类系统使用/dev目录的方法不同),因此若是新增了需要分配磁盘代号的硬件,可能会导致这些应用程序出错。举例来说:若是原本硬盘中的延伸分区中存在逻辑磁盘区,此时新增一颗有主分区的硬盘的话,由于主分区拥有较高的分配优先权,所以原本硬盘的逻辑磁盘区的代号就会改变。此外,就算是新增一颗只有延伸分区和逻辑磁盘区的硬盘,还是会影响到RAM disk及光盘驱动器的代号。这个问题一直到9x系列的Windows都仍然存在;NT系列才有解决方案:磁盘代号会保留给已存在的磁盘驱动器机,除非用户手动更改。[7]

开机流程[编辑]

PC兼容机的开机扇区位在第0 轨。对于DOS来说,这段代码会将DOS的BIOS读入存储器中然后运行。在DR DOS及PC DOS中,这个BIOS放在IBMBIO.COM这个文件里;而MS DOS则是放在IO.SYS。接下来这个BIOS会加载放在IBMDOS.COM(PC DOS或DR DOS)或是MSDOS.SYS(MS DOS)里面的DOS核心。Windows 9x中附的DOS版本(MS DOS 7和8)将BIOS和核心合并放在IO.SYS里面,而MSDOS.SYS则是文字格式的配置文件案。然后DOS核心会去运行CONFIG.SYS这个文件。在CONFIG.SYS中,SHELL这个命令指定了shell的文件位置(通常是COMMAND.COM)。接下来这个shell会被运行,然后它会去打开开机批处理文件(通常是AUTOEXEC.BAT)[8]

历史[编辑]

MS-DOS(以及经授权更换商标而成的IBM PC-DOS)以及它的前身86-DOS是受到Digital Research公司的CP/M(Control Program / (for) Microcomputers)启发而完成的。CP/M是当时使用Intel 8080及Zilog Z80这两颗8位CPU的微计算机上最受欢迎的磁盘操作系统。

在1980年的时候,IBM使用Intel 8088微处理器,开发出了他们的第一台微计算机。他们需要一套能够在这台微计算机上使用的操作系统。IBM在找一套能和Intel 8088 (1979-1982)兼容的CPU,一开始找上了微软(Microsoft)的首席执行官比尔·盖茨(可能是因为当时微软开发出了让CP/M可以在Apple II上运行的Z-80 SoftCard,所以IBM相信微软拥有CP/M[9])。IBM被转介到Digital Research,并且举行了相关的会议。然而,关于CP/M的使用权的初次谈判破裂了—因为Digital Research希望以权利金的方式贩售CP/M,但IBM希望单一授权,并且将名称改为"PC-DOS"。DR的创始人Gary Kildall拒绝签约,IBM因此放弃购买CP/M。[9][10]

IBM再次找上比尔·盖茨。盖茨转而找上了Seattle Computer Products(SCP)。SCP的程序员Tim Paterson开发了一套CP/M-80的变体操作系统,原本是打算用来测试SCP为S-100总线新开发的16位Intel 8086 CPU界面卡。这套系统原本的名称是"QDOS"("Quick and Dirty Operating System"的缩写),后来在商业发行前改名为86-DOS。微软买下了86-DOS(据说成交金额为50,000美元),后来成了1981年发行的Microsoft Disk Operating System,简称MS-DOS。[11]

微软也将这套系统授权给数个计算机公司。这些计算机公司贩售给他们的硬件使用的MS-DOS,有时使用他们自己的名称。微软后来要求他们使用MS-DOS这个名称,除了IBM以外。IBM持续为IBM PC开发新版的PC-DOS。Digital Research查觉到IBM正在贩售和CP/M很类似的操作系统(而且还跟当初IBM谈判时坚持的名称相同),于是扬言要提出法律诉讼。IBM以一项协议回应他们:IBM让用户可以自行选择要使用PC-DOS还是CP/M-86(Kildall开发的8086版CP/M)。两者相较,CP/M比PC-DOS贵上近200美元,销售量也低。CP/M逐渐淡出,而MS-DOS和PC-DOS则成了PC和PC兼容机的主力操作系统。[9]

Digital Research曾试图挽回CP/M-86错失的市场。一开始是发行了DOS Plus,后来又发行了DR-DOS(这两者都同时与MS-DOS和CP/M-86的软件兼容)。Digital Research被Novell买下,DR-DOS变成了Novell DOS 7。之后,它又成为Caldera Systems(以OpenDOS及DR DOS 7为名)、Lineo以及DeviceLogics的一部分。

后来,微软和IBM在两套DOS的继任操作系统(微软的Windows和IBM的OS/2)上发生了一连串争执。[12]他们在DOS系统上的开发也因此分道扬镳。[13] MS-DOS在某些层面上转型成为Windows;而PC-DOS的最后一个版本为1998年发行的PC-DOS 2000。

FreeDOS计划开始于1994年6月26日。当天微软宣布他们将不再贩卖MS-DOS,也不再提供支持。于是Jim Hall张贴了一份宣言,宣布要开发DOS的开放源始码替代品。在几个星期内,包括Pat Villani和Tim Norman的几位程序员加入了这个计划。他们利用共享他们撰写或现有代码的方式,产生了核心、command.com命令解释器(shell界面)以及核心公用程序。在历经了数个版本的官方预览版本之后,FreeDOS 1.0版在2006年9月3日正式发布。使用FreeDOS不需支付任何的版权费用或权利金。[14][15]

淡出[编辑]

早期版本的Microsoft Windows只是在DOS之上运行的应用程序。[16]大约在90年代初,Windows仍相当依赖新版本的DOS。一直到Windows for Workgroups 3.11,DOS才逐渐退居负责开机及加载Windows核心的角色。在Windows 95(以及其后发生的Windows 98与Me)中,MS-DOS核心依然存在,只是加上Windows当作系统的图型界面。Windows 95与98的MS-DOS组件可以在不打开Windows的情况下独立运行(但Windows Me不行)。[17]随着Windows的普及,大部分的计算机用户都使用Windows,DOS也越来越少人使用。

持续发展[编辑]

有些计算机制造商(包括Dell和HP)会预载FreeDOS当作OEM操作系统出货。[18][19]

有一套以GPL方式授权的DOS,名为NX-DOS,目前正在开发中。它是一套16位的即时操作系统,拥有网络功能,可以从软盘开机,还有一个不太完整的USB驱动程序。NX-DOS项目从1992年就开始了,原本是个个人项目,在2005年的时候以GPL方式发布。[20]

目前仍可获取的DOS系统有DR-DOS(以及加强的DR-DOS)、俄国人开发的PTS-DOS、ROM-DOS、FreeDOS、NX-DOS、Multiuser DOS(以Digital Research的Concurrent DOS为基础)....等等。

嵌入式系统[编辑]

由于DOS可以直接访问硬件,因此它很适合拿来控制嵌入式设备。新版本的DR-DOS便瞄准了这块市场。[21] 佳能的数码相机PowerShot Pro 70使用ROM-DOS做为嵌入式系统。[22]

模拟器[编辑]

在Linux下,使用DOSEMU(一套用来运行实模式程序的Linux原生虚拟机)可以运行DOS及其派生版本。另外在各个版本的UNIX下也有许多用来运行DOS的模拟器,有些甚至在非x86的平台上也可以运行,像是DOSBox。[23][24]

由于Windows XP和Vista无法和纯DOS兼容,DOS模拟器在这些系统上也越来越流行。这些模拟器可以用来运行过去的老软件或其他DOS软件。其中一个最为知名的是DOSBox,主要的设计目标是在当前的操作系统上运行DOS的游戏程序。[23][16]

在Microsoft Virtual PC下也可以运行DOS的应用程序,兼容性比DOS模拟器好。用户可以安装合法的MS-DOS,然后除了那些最难对付的应用程序以外,绝大部分的DOS应用程序都可以在上面运行。[25]

与Microsoft Windows的关系[编辑]

纯32位版本的Windows(从NT开始;包含了2003、XP和Vista)并非以DOS为基础的。这些系统中内含了一个NT DOS虚拟机(NT Virtual DOS Machine,缩写为NTVDM),在上面运行一个修改过的DOS。原本以DOS为基础的系统使用传统的COMMAND.COM做为命令行界面,而Windows NT及其派生版本则是使用cmd.exe(不过cmd.exe也移植了许多DOS的命令)。

软件[编辑]

Arachne互联网浏览器

由于DOS在长时间内是PC兼容机的主要平台,有许多为DOS撰写的知名软件。例如:

  • AutoCAD;一套工业用的绘图软件, 是少数能成功由DOS过度至WINDOWS的软件绘图软件
  • Lotus 1-2-3;一套在企业市场中被广泛运用的电子表格软件。被许多人视为IBM PC成功的主因[26]
  • 中文系统;外挂在DOS以便显示中文字形, 常见的有 倚天 震汉 零壹 国乔等外挂中文系统
  • WordPerfect;一套目前出在Windows平台的文本编辑器
  • Wordstar;文本编辑器
  • PE;一套文本编辑器, 由IBM公司所开发, 只有简单排版功能, 当时常用于编写程序源代码.
  • Copywrite;一套拷贝软件, 用以备份具防拷保护的5.25吋磁片.
  • CopyIIPC;另一套拷贝软件, 用以备份具防拷保护的5.25吋磁片.
  • WPS,DOS时代中国最流行的文字处理软件,现已改名为WPS Office运行于Windows平台。
  • CCED; DOS时代在中国流行的中文字表处理软件。
  • 慧星一号,DOS时代香港及台湾最流行的中文文字处理软件,引入视窗操作概念。
  • dBase;最早的数据库软件之一
  • CLIPPER;是dBASE的编译器.
  • Dr compiler;是CLIPPER的加强版, 台湾在原有的CLIPPER加上新加入的LIB而成数据库软件之一
  • Pctools; 工具软件集成DOS的COPY DISKCOPY FORMAT 等多项功能于一身的软件, 以菜单形式耒操作.
  • Telix; 调制解调器通信软件, 是BBS时期常用的软件.
  • PkZIP; 压缩软件 DOS 年代已出现的ZIP压缩格式, WINDOWS 现已内含这功能.
  • Arachne;一套DOS版的网络浏览器
  • DJGPP, gcc的DOS移植版
  • 4DOS,取代原本的命令行界面的软件
  • Borland的集成开发环境,包括了Turbo Pascal、Turbo BASIC、Turbo C,以及Turbo Assembler
  • 拨接式电子布告栏 (BBS)架站软件RemoteAccess、Spitfire、Maximus、McBBS,以及TAG
  • BASIC语言工具程序BASICA以及GW-BASIC
  • 许多的第一人称射击游戏:由Id Software以及Apogee Software(后来改名为3D Realms)合资开发的德军总部3D;Id Software的Doom以及Quake;3D Realms的Duke Nukem 3D、Shadow Warrior,以及Rise of the Triad。3D Realms开发的这3套游戏使用的都是DOS上的“Build引擎”。Build引擎的作者是Ken Silverman,这个引擎也被用于Silverman的Ken's Labyrinth这个游戏上。

易用性[编辑]

用户界面[编辑]

所有的DOS均使用命令行界面。运行程序的方法是在命令行中键入程序的名称。DOS系统包含一些公用程序,也提供了一些不是以程序方式存在的命令(通常被称为内部命令)。[27]

为了提供对用户更友善的操作环境,许多的软件厂商纷纷推出各式各样的文件管理程序。这些程序通常使用菜单及图标做为界面。Microsoft Windows就是其中最有名的例子,最后发展成为完整的操作系统,取代DOS成了PC兼容机上最受欢迎的操作系统。使用文字模式的使用者界面有:Norton Commander、Dos Navigator、Volkov Commander、Quarterdesk的DESQview,以及SideKick。使用图形用户界面的程序有:Digital Research的Graphical Environment Manager(最早是写给CP/M用的)以及GEOS。

发展到最后,主要的DOS厂商开始在DOS中加入自己的环境管理程序。MS/PC-DOS 4中有DOS Shell;[28]而次年发行的DR-DOS 5则加入了以GEM为基础的ViewMAX。[29]

多任务[编辑]

在最初的设计中,DOS是一个单工的操作系统。MS/PC-DOS使用DOS shell做到任务切换的功能,[30]而DR-DOS则是在DR-DOS 6中利用TaskMAX做到类似的功能。[31] MS/PC-DOS自始至终都没有多任务的能力;[32] DR-DOS则是在DR-DOS 7中提供了这个功能(DR-DOS的DPMI必须激活)。[33]

限制[编辑]

DOS的架构有数项恼人的限制。最早的8088微处理器只能定址到1 MB的物理内存空间。由于附加的硬件设备也必须映射到这段空间,因此最高可以使用的存储器只有640 KB(被称为“传统存储器”)。在DOS的结构上,640 KB被视为最大的存储器空间,DOS无法定址更高的地址。早期避开这个问题的做法是使用扩展存储器;80286出来之后,发展出了延伸存储器。虽然这些技术提供了更多的存储器应用程序,但应用程序仍必须从传统存储器开始运行,占用640 KB中的部分空间。80386微处理器使用了重新设计的保护模式,应用程序可以通过DOS extender及DOS保护模式界面(DOS Protected Mode Interface,缩写为DPMI)等技术使用额外的存储器,也可以有多任务的功能。[34][35]

DOS还有硬盘分区大小的限制。造成这个问题的原因有两个。首先,许多DOS类的操作系统只支持到FAT16,而FAT16在设计上就不支持超过2.1 GB的硬盘分区。[36]另外,DOS访问硬盘的方式是通过INT 13这个中断调用,然后往下再利用CHS系统对应到磁盘上的数据。在这个架构下,操作系统只能看到8 GB的硬盘空间。[37]比较新的操作系统使用软件的方式(例如:32位磁盘访问)访问硬盘。

FAT16和FAT12(用于软盘)上的文件名称必须遵守“8.3命名规则”:文件的文件主名不得超个8个字符,而扩展名则不得超过3个字符。

命令集[编辑]

(部分)

命令 备注
MD 创建子目录
CD 改变当前目录
RD 删除子目录命令
DIR 示磁盘目录命令
PATH 路径设置命令
TREE 显示磁盘目录结构命令
DELTREE 删除整个目录命令
FORMAT 磁盘格式化命令
CHKDSK 检查磁盘当前状态命令
UNFORMAT 恢复格式化命令
DISKCOPY 整盘复制命令
VOL 显示磁盘卷标命令
SCANDISK 检测、修复磁盘命令
DEFRAG 重整磁盘命令
SYS 系统复制命令
COPY 文件复制命令
XCOPY 目录复制命令
TYPE 显示文件内容命令
REN 文件改名命令
FC 文件比较命令
ATTRIB 修改文件属性命令
DEL 删除文件命令
UNDELETE 恢复删除命令
VER 查看系统版本号命令
DATE 查看日期命令

参考文献[编辑]

  1. 跳转^ 参阅MS-DOS条目
  2. 跳转^ Hyde, Randall. CHAPTER EIGHTEEN: RESIDENT PROGRAMS (Part 3). The Art of Assembly Language Programming. 1996-09-30 [2008-09-02].
  3. 跳转^ Batch File Help. computerhope.com. [2008-09-10].
  4. 跳转^ Matczynski, Michael. ZINGTECH - Guide to the New Game Programmer. [2008-09-02].
  5. 跳转^ Microsoft Windows MS DOS Device Name DoS Vulnerability. [2008-09-02].
  6. 跳转^ DOS device names definition. PC Magazine. [2008-09-02].
  7. 跳转至:7.0 7.1 Drive Letter Assignment and Choosing Primary vs. Logical Partitions. The PC Guide. 2007-05-17 [2008-09-02].
  8. 跳转^ Kozierok, Charles. The DOS Boot Process. The PC Guide. 2001 [2008-09-02].
  9. 跳转至:9.0 9.1 9.2 Rolander, Tom. The rest of the story: How Bill Gates beat Gary Kildall in OS war, Part 1, (访谈).
  10. 跳转^ Bove, Tony. Just Say No to Microsoft. No Starch Press. 2005: 9-11. ISBN 159327064X.
  11. 跳转^ Bellis, Mary. The Unusual History of MS-DOS The Microsoft Operating System. [2008-09-02].
  12. 跳转^ Pollack, Andrew. Microsoft Widens Its Split With I.B.M. Over Software. New York Times. 1991-07-27 [2008-09-02].
  13. 跳转^ Brinkley, Joel. I.B.M. Executive Describes Price Pressure by Microsoft. New York Times. 1999-05-28 [2008-09-02].
  14. 跳转^ Jim Hall. The past, present, and future of the FreeDOS Project. 2002-03-25 [2008-06-14]. (原始内容存档于2012-05-29).
  15. 跳转^ Hall, Jim. History of FreeDOS. freedos.org. September 23, 2006 [2007-05-28].
  16. 跳转至:16.0 16.1 James Bannan. HOW TO: Coax retro DOS games to play on Vista. 2006-10-13 [2008-07-03].
  17. 跳转^ Finding The DOS In Windows 95. Smart Computing. 1996年3月 [2008-07-12].
  18. 跳转^ Hall, Jim. Jim Hall. 2007-07-13 [2008-06-12].
  19. 跳转^ Dell PCs Featuring FreeDOS. [2008-06-14].
  20. 跳转^ GPL'd DOS workalike adds features. 2007-04-01 [2008-06-01]. (原始内容存档于2012-05-29).
  21. 跳转^ DR DOS Embedded DOS. [2008-09-26].
  22. 跳转^ Datalight DOS Selected for Canon's New Line of Digital Still Cameras. Business Wire. 1999-08-24 [2008-09-26]. (原始内容存档于2012-07-09).
  23. 跳转至:23.0 23.1 DOSBox Information. [2008-05-18].
  24. 跳转^ DOSEMU Home. 2007-05-05 [2008-07-03].
  25. 跳转^ DOS Games on Vista. 2008-03-11 [2008-09-02].
  26. 跳转^ Darrow, Barbara. Whatever Happened To Lotus 1-2-3?. 1 February 2002 [2008-07-12].
  27. 跳转^ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books. : 7–12. ISBN 0923178023.
  28. 跳转^ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books. : 71. ISBN 0923178023.
  29. 跳转^ Dvorak, John; Nick Anis. Dvorak's Guide to DOS and PC Performance. Osborne McGraw-Hill. 1991: 442–444.
  30. 跳转^ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books. : 83. ISBN 0923178023.
  31. 跳转^ DR DOS 6.0 User Guide. Digital Research. 1991: 320–324.
  32. 跳转^ Perry, Greg; Jill Freeze. Sams Teach Yourself Windows XP Computer Basics All in One. Sams Publishing. 2003: 445. ISBN 0672325357.
  33. 跳转^ Chapter 13 Multitasking and Task Switching. Caldera DR-DOS 7.02 User Guide. Caldera Systems. 1998 [2008-09-12].
  34. 跳转^ DOS: still thriving after all these years. Software Magazine. Findarticles.com. 1990年5月 [2008-07-10]. (原始内容存档于2012-05-29).
  35. 跳转^ Duncan, Ray. Extending DOS: A Programmer's Guide to Protected-Mode DOS 2. Addison-Wesley. 1991. ISBN 0201567989.
  36. 跳转^ Mueller, Scott. Upgrading and Repairing PCs. Que Publishing. 2003: 812. ISBN 0789729741.
  37. 跳转^ The Int 13 Interface. The PC Guide. storagereview.com. [2008-07-10].

参见[编辑]

  • COMMAND.COM,DOS和Windows 9x的命令行解释器
  • MS-DOS API
  • MS-DOS
  • IBM PC-DOS
  • DR-DOS
  • FreeDOS
  • 操作系统
  • 操作系统列表
  • 微软操作系统列表

-----

微软磁盘操作系统MS-DOS英语:MicroSoft Disk Operating System的缩写,一个由美国微软公司发展的操作系统,运行在Intel x86个人电脑上。它是DOS操作系统家族中最著名的一个,在Windows 95以前,DOS是IBM PC及兼容机中的最基本配备,而MS-DOS则是个人电脑中最普遍使用的DOS操作系统。

目录

[隐藏]

  • 1概观
  • 2由来
  • 3简史
  • 4参见

概观[编辑]

MS-DOS界面

最基本的MS-DOS系统,由一个基于主引导记录(硬盘才有MBR,软盘没有MBR,引导扇区位于第0轨的扇区中,内容上与硬盘的MBR略有不同)的BOOT引导程序和三个文件模块组成。这三个模块是:输入输出模块(IO.SYS)、文件管理模块(MSDOS.SYS)及命令解释模块(COMMAND.COM),不过在MS-DOS 7.0中,MSDOS.SYS被改为启动配置文件,而IO.SYS增加了MSDOS.SYS的功能。除此之外,微软还在零售的MS-DOS系统包中加入了若干标准的外部程序(即外部命令),这才与内部命令(即由COMMAND.COM解释执行的命令)一同构建起一个在磁盘操作时代相对完备的人机交互环境。有关MS-DOS的各种命令,请参见MS-DOS命令列表。

MS-DOS用户可透过编辑两个位于开机磁盘根目录的系统档案来达到调控系统组态之目的,它们分别是CONFIG.SYS及AUTOEXEC.BAT,IO.SYS会检视CONFIG.SYS以加载指定的硬体驱动程序,而COMMAND.COM则自动运行AUTOEXEC.BAT所载的批量指令。

MS-DOS一般使用命令行界面来接受用户的指令,不过在后期的MS-DOS版本中,DOS程序也可以通过调用相应的DOS中断来进入图形模式,即DOS下的图形界面程序。

早先版本的MS-DOS为FAT12与FAT16,事实上也因为MS-DOS的流行,造成日后磁盘格式受到文件配置表影响相当巨大。从MS-DOS 7.0开始,尤其是MS-DOS 7.10版本则已全面支持FAT32、长文件名和大硬盘等。

由来[编辑]

1980年,西雅图电脑产品公司(Seattle Computer Products)的一名24岁的程序员蒂姆·帕特森(Tim Paterson)花费了四个月时间编写出了 86-DOS 操作系统。1981年7月,微软以五万美元的代价向西雅图公司购得本产品的全部版权,并将它更名为 MS-DOS。随后,IBM 发布了第一台个人计算机,当时采用的操作系统是西雅图电脑产品公司的 86-DOS 1.14,但微软很快改进了 MS-DOS,并使它成功地成为 IBM PC 采用的操作系统。并于1981年8月12日,正式发布 MS-DOS 1.0 和 PC-DOS 1.0。

西雅图电脑产品公司后来曾将微软告上法庭,指控微软在购买 86-DOS 版权时,并未透露 IBM 是其客户。微软在1986年向西雅图计算机产品公司又支付了100万美元,了结了双方之间的纠纷。

2014年3月25日,微软首次正式对外公开早期 MS-DOS 的源代码。[1]

简史[编辑]

版本 描述
MS-DOS 1.0 微软买下86-DOS(QDOS)版权,1981年7月,成为IBM PC上第一个作业系统。同时微软有为IBM PC开发专用版本PC-DOS,但与泛用版本MS-DOS相比,除了系统档名以及部分针对IBM机器设计的核心,外部命令与公用程序之外,其余代码其实差异不大。
MS-DOS 1.25 1982年6月,支持双面软盘并开始修改错误
不仅IBM,许多OEM也广泛使用
MS-DOS 2.0 1983年3月,加入UNIX式的树状档案系统与及硬盘支持,以低级的观点视之,这是第一次的DOS重大改版。这个版本除了兼容于CP/M的FCB文件系统之外,正式采用了文件配置表格式,并大量使用具有UNIX特征的Handle式文件操作方式。
MS-DOS 2.11 1984年3月,为主要的OEM版本,修正了2.01版的错误,增加了对非英语语言及其文件格式的国际性支持
MS-DOS 2.25 1985年10月,支持额外扩充的字符组(日文与韩文),还修正了旧版的错误
MS-DOS 3.0 1984年8月,引入PC/AT,它能支持1.2MB的软盘,并加入较高容量的硬盘
MS-DOS 3.1 1984年11月,加入对微软网络支持
MS-DOS 3.2 1986年1月,加入了3.5吋软盘的强化支持,并开始可以通过驱动程序使用硬件EMS。台湾的宏碁电脑在资策会与公会的支持下,与微软在MS-DOS 3.2的基础上开发了匹配财团法人中文数字化技术推广基金会标准的全中文DOS:MS-DOS 3.21,并配合当时第一代的松下汉音输入法搭载于当时宏碁的机器上,汉音输入法是台湾最早的智能中文输入法,现在则是MacOS中内置默认的中文输入法之一。由于中文内码采用公会码,与主流的大五码并不兼容,以致MS-DOS 3.21版本台湾销量并不好。但MS-DOS 3.21的技术受到广泛的使用,中文系统独立成为【宏碁中文工作室】软件,CMEX规格则成为业界中文系统标准,并在后来主要的系统厂商如倚天中文系统、微软的Windows中文版下被采用,而其内部使用的GW-BASIC后来更成为后来MS-DOS的标准软件。
MS-DOS 3.3 1987年8月,修正部分内部错误、增加了许多关于文件处理的外部命令、开始支持软盘之后,MS-DOS 3.3成为当时最稳定、畅销的版本,可以说是MS-DOS第二次的重大改版,一年后发行的4.0甚至还不如3.3普及。内部的BASIC解释器在3.x之后逐渐由BASICA改为增强绘图能力的GW-BASIC。此际倚天公司在前几版本的BASICA基础上开发了支持中文绘图模式的ETBASIC,几乎成为当时台湾学习BASIC语言的标准配备。外部命令部分最重要的则是增加了XCOPY与APPEND,增强了早就该有的文件管理能力。
MS-DOS 4.0 1988年6月,主要基于IBM的代码库,而不是微软自己的代码库。加入了最大2GB容量硬盘驱动器支持,引入EMM(软件模拟EMS)以及新规格XMS存储器技术,令MS-DOS操作系统可以使用1MB以上的存储器。开始有DOSSHELL的使用。DOSSHELL可以被视为MS-DOS的GUI界面,并有切换程序作业的能力。
MS-DOS 4.01 1988年12月,对于旧版所存在的一系列错误进行修正
MS-DOS 5.0 1991年6月,第三次重大改版,可能也是MS-DOS史上最重要的改版。这个版本继承4.0对于存储器管理的改进,是EMM规格最为稳定、普及的版本,也加入了许多存储器管理的程序,如EMM386、MEM等等,为的就是与Windows作业环境好好搭配,连带也使得MS-DOS存储器管理成为当时许多软件亟欲配合增强的方向,如何设置MS-DOS存储器配置成为热门话题。BASIC解释器改为QuickBASIC的简易版本QBASIC,内置文本编辑器则由原来的行编辑EDLIN改为全屏编辑的EDIT(其实只是对QBASIC.EXE多下一道参数而已)。减少外部命令对于版本的需求,而在千呼万唤中,终于加入DOSKEY、UNDELETE、Quick Format、UNFORMAT等能力。另一个值得一提的是,这个版本的CONFIG.SYS允许多重选项,方便用户于开机时切换不同的开机配置设置,以满足不同应用程序的需求,特别是当时一些极度耗费存储器的游戏、常驻程序以及常用的中文系统等...。
MS-DOS 6.0 1993年3月,加入了许多花俏的外部命令。系统检测程序MSD被加入。DoubleSpace压缩磁盘技术开始被使用,亦开始附上微软自家的解毒软件VSAFE以及MSAV。网络方面开始加入对LL5传输线的支持。对于磁盘,开始加入扇区整理软件DEFRAG以及磁盘缓存程序SMARTDRV。文件管理方面,以豪华的MSBACKUP取代了命令行方式的BACKUP,另外,终于加入了DELTREE与MOVE公用程序。开始正式支持光盘驱动器。存储器管理方面则加入了功能较丰富的MEMMAKER配置最优化程序。
MS-DOS 6.2 1993年11月,修正DoubleSpace之bug。
MS-DOS 6.21 1994年2月,移除DoubleSpace。
MS-DOS 6.22 1994年6月,最后一个销售版本,磁盘压缩器改版为DriveSpace重新登场。国乔(KC)获取微软与IBM授权,搭配国乔中文系统发表自己的DOS 7.0。
MS-DOS 7.0 1995年8月,Windows 95所带的版本,支持长文件名。
MS-DOS 7.1 1996年8月,Windows 95 OSR2、Windows 98、Windows 98SE所带,加入对大硬盘和FAT32分区的支持等。
MS-DOS 8.0 2000年9月,MS-DOS的最后一个版本,Windows ME所带,取消了部分功能,例如不再支持SYS命令、打印机操作。
MS-DOS 8.0(NT) 如上,Windows 2000以上的系统所带。(COMMAND.COM)

参见[编辑]

  • PC-DOS
  • MS-DOS命令列表

----

转载于:https://www.cnblogs.com/pppjjjccc/p/6798140.html

windows命令提示符相关推荐

  1. windows命令提示符_如何个性化Windows命令提示符

    windows命令提示符 Command line interfaces can be downright boring and always seem to miss out on the fres ...

  2. 在命令提示符输出c语言代码_您可以在Windows命令提示符中更改输出缓冲区的大小吗?...

    在命令提示符输出c语言代码 If you are someone who loves using the Windows Command Prompt, you may have found your ...

  3. 在 Windows 命令提示符下启动 MySQL:net start mysql 发生系统错误 5。 拒绝访问。解决方式小结

    文章目录 一.错误描述 二.错误产生场景 三.产生错误原因 四.解决方式 一.错误描述 我们可能有时候需要通过 Windows 命令提示符来启动 MySQL 服务,但是如果你不注意的话,可能就会报以下 ...

  4. 如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样)

    如何在Python脚本中调用外部命令(就像在linux shell或Windows命令提示符下输入一样) python标准库中的subprocess可以解决这个问题. from subprocess ...

  5. Windows命令提示符中的别名

    本文翻译自:Aliases in Windows command prompt I have added notepad++.exe to my Path in Environment variabl ...

  6. 如何用Windows命令提示符(cmd.exe)进入指定目录

    如何用Windows命令提示符(cmd.exe)进入指定目录 一.Windows命令提示符是什么? Windows 命令提示符(cmd.exe)是 Windows NT 及以后的 Windows 系统 ...

  7. windows 命令提示符 修改/prompt

    windows 命令提示符 常常是这样的,太丑了我们修改一下 (暂时修改) 目录 1. 命令:  PROMPT 2.  举例: PROMPT  参数 可以看出已经发生改变 3. 自定义提示符 4. 恢 ...

  8. c语言 输出定向到文件 命令提示符窗口也能看见,关于cmd:显示Windows命令提示符输出并将其重定向到文件...

    如何在Windows命令提示符下运行命令行应用程序并同时显示输出并重定向到文件? 例如,如果我要运行命令dir > test.txt,则会将输出重定向到名为test.txt的文件而不显示结果. ...

  9. linux ftp cmd被动模式,如何在Windows命令提示符下使用被动FTP模式?

    如何在Windows命令提示符下使用被动FTP模式? 在Ubuntu quote pasv中,被动模式可以正常工作. 在Windows中我该如何做? 我尝试使用quote pasv,但出现以下错误: ...

  10. Windows命令提示符大全

    Windows命令提示符大全 winver---------检查Windows版本 wmimgmt.msc----打开windows管理体系结构(WMI) wupdmgr--------windows ...

最新文章

  1. sklearn 套件的主要内容_sklearn-roc_curve
  2. 大厂与小厂工作的选择
  3. How is application controller loaded by UI5 framework
  4. springboot转发http请求_如何实现Http请求报头的自动转发
  5. 吉林农业科技学院计算机大师,吉林农业科技学院
  6. WebForm页面间传值方法(转)
  7. 看完数据分析师一天的工作,才明白为什么人家年薪50W
  8. Vue在HTML模板中插入JS数据
  9. C++--第9课 - 构造与析构 - 上
  10. 教你正确说话的6个玄机
  11. JVM虚拟机第八章:堆
  12. 指纹识别 java_指纹识别代码示例java
  13. 树莓派 pico pio 可编程io
  14. 这名程序猿吐了一管口水,便迎来了人生的四大暴击…
  15. linux双系统安装
  16. 低学历者已经月入万元是为什么
  17. 【力扣时间】【807】【中等】保持城市天际线
  18. Win8.1系统所有的路径都无法更改文件夹名称
  19. “艺工交叉”--达芬奇的人生密码
  20. vue实现select下拉显示隐藏功能【详细功能拓展】

热门文章

  1. DRM in Android详解--转
  2. 全球5G发展洞察2022(上)
  3. 玩真的了!深度解读拒不履行信息网络安全管理义务将入罪
  4. 2021工作总结, 展望2022
  5. 正确使用RecyclerView分割线
  6. CSP考试 2016年04月第3题 路径解析 C++实现
  7. Ajax读取本地html文件
  8. 全国计算机二级重难点,计算机二级office重难点.doc
  9. python 自动换ip_python实现自动更换ip的方法
  10. 重构改善既有的代码设计(代码的坏味道)