DOS的成长历程
一、个人计算机
好多人都应该使用过多种操作系统,当面对现今漂亮的Windows界面时,请不要忘记DOS的功绩:大家必须知道,DOS是至今个人电脑上使用时间和使用率最高的操作系统,而且,没有DOS的发展,也就不可能有Windows系列操作系统今天的辉煌。
DOS是“磁盘操作系统”的简称,但DOS并不是个人电脑上的第一个操作系统,当然更不是惟一的。其前身是蒂姆·帕特森编写的SCP-DOS,由于它是为英特尔公司的8086芯片写的操作系统,因此也叫86-DOS。当时的个人电脑发展非常迅速,逐渐成为广泛的消费市场。由于个人电脑尤其是苹果电脑的成功,电脑界的巨头IBM公司坐不住了。1980年,IBM决定开发自己的个人计算机系统,并命名为Personal Computer,中文意思就是“个人电脑”,也就是我们现在常说的PC机。
时间就是金钱,为缩短开发周期,IBM决定找一家现有的开发个人电脑操作系统的软件公司,与之合作开发PC机的操作系统。这家幸运的小公司就是Microsoft公司,也就是现在的微软公司。微软公司以5万美元价格从西雅图的一位程序编制者蒂姆·佩特森手中买下了一个 X86操作系统软件的使用权,再将其改写成为公司的磁盘操作系统软件(MSDOS)。
这给了微软迅速发展的机会,微软公司对86-DOS进行了较大的改进,并改名为MicroSoft-DOS,也就是现在我们常说的 MSDOS。1981年,随着 IBM的 IBM PC机的正式发布,微软的 MSDOS 1.0也诞生了。当时的MSDOS远不如现在的强大,可用的命令也很少,甚至连目录的概念也不支持。但对比当时的个人操作系统,已经是非常先进的。而且最重要的是,DOS从一开始就是全开放的系统,这为第三方厂商开发的应用程序提供了方便可靠的接口,又由于有IBM的强大后盾,吸引了越来越多的开发商投入到DOS应用程序的开发中来,而这以后的DOS获得了空前的发展,成为PC机的绝对主流操作系统。
在DOS发布之后的十几年中,微软公司不断推出DOS的新版本,到目前为止,MSDOS的最高版本是70。由于Windows操作系统的成功,微软今后将不再对DOS升级。
下面是各个DOS版本的主要功能:
DOS 10:以单面软盘为基础的第一个操作系统;
DOS 11:支持双面软盘并可实现错误定位,该系统可支持兼容机;
DOS 20:支持带硬盘的PC/ XT机并从UNIX操作系统中吸收了许多功能;
DOS 211:改进了国际支持,对错误的定位更加准确;
DOS 30:支持以80286为CPU的PC/ AT机,支持12M软盘及更大容量的硬盘;
DOS 31:支持Microsoft网络,并扩展了错误检测功能;
DOS 225:增加了扩展的字符集并加入了新的错误检查;
DOS 33:是应用相当广泛的一个系统,增加了一些新命令,支持高密3英寸盘;
DOS 331:COMPAQ机器用,允许硬盘容量超过32M;
DOS 40:增加DOS SHELL,可管理大于32M的硬盘;
DOS 50:支持288M软盘,增加了任务切换和全屏幕编辑器Editor,扩充了DOS的外部命令;
DOS 60:增加了磁盘压缩增容工具DoubleSpace,提供了防病毒程序。Configsys具有多重配置块命令,提供了系统内存管理优化程序;
DOS 62:增加了拷贝文件的安全性;由于专利原因, DoubleSpace改名为Drive Space,并增强了Edit全屏幕编辑的功能;
DOS 621:增强了Drive Space,完善了TSR管理等功能;
DOS 622:最后一个独立存在的MS-DOS版本,支持中文内码,加强了Drive Space功能;
DOS 70:它不是单独存在的,它实际是Windows 95/98的底层引导程序。微软为了推进Windows产品的发展,已经公开表示不再对DOS的版本进行升级,尽管Windows 98下的DOS与Windows 95下的DOS并不完全相同。
二、软件版本号的说明
软件的版本号为XXX,其中小数点之前的数字为其主版本号,当该数字增加时表示该软件有了重大改进,例如 DOS50与DOS40;而小数点后第一位数字为其次版本号,当该数字增加时,表示软件增加了一些新的功能,比如 DOS31与DOS30。小数点后的第二位数字的改变也表示软件内容有一定更新。
三、DOS之父帕特森
DOS(Disk Operation System的简称)在今天也许会被认为是古老的操作系统,但对于老资格的发烧友和电脑爱好者们来说再熟悉不过了。MS-DOS曾是美国微软公司操作系统的拳头软件产品,长期统治着个人电脑操作系统软件市场。虽然现在的微软“视窗”操作系统已经逐渐成为新一代操作系统软件行业标准,但DOS的功劳不可磨灭。
谁都知道MS-DOS是美国微软公司的产品,而且正是MS-DOS使微软公司实现了从一个不知名的软件开发公司向全球最具实力的软件公司的第一次飞跃。但DOS的真正主人帕特森的名字可能并不为每个人所知道。
帕特森为什么被人称为“DOS之父”呢?他是一位高智商的软件大师,曾任西雅图电脑制造公司副总裁。这家公司以出售主机为主,由于用户的要求,当时一直渴望有一套操作系统。
帕特森曾多次找当时专门从事开发操作系统的数据研究公司寻求帮助,均无结果,于是自己动手花了半年时间成功地推出了自己的操作系统,命名为SCP-DOS,本意为“快而粗糙的磁盘操作系统”。这个SCP-DOS便是现在DOS的前身。这个系统推出之后,应用效果不错,曾被数据研究公司指责剽窃了他们的当时颇受欢迎的CP/M操作系统。帕特森为自己做了辩护,称:“我从未抄袭任何人”。这两个操作系
统确实有相似之处,不过 SCP-DOS在储存数据、组织文件等方面与CP/M有极大的不同。那么后来SCP-DOS如何成为MS-DOS呢?那还得从国际商用机器公司(IBM)的“西洋棋方案”说起。
1980年,有“蓝色巨人”之称的IBM公司意识到个人电脑市场的重要性,决心开发自己的个人电脑。为迅速占领已看好的微电脑市场,IBM制定了“西洋棋方案”。他们需要找一家软件公司合作开发一套个人电脑操作系统。当时的微软为了不错过这个千载难逢的发展机会,向IBM称自己有软件操作系统;而实际上,虽然微软公司在软件行业已有一席之地,但依靠的却是其程序语言,并无现成操作系统。为与IBM公司合作,当IBM要求微软迅速拿出这套操作系统时,微软不得不想到了帕特森。
微软公司迅速找到了帕特森,仅以25000美元的转让价格便获得了SCP-DOS的使用权。而老实的帕特森对这次交易还比较满意。至于这笔交易意味着什么,他却没有想到。微软呢当然更是满意:花了不算多的钱为自己节省了一年时间。而且 SCP-DOS虽比较粗糙,但已经具有了雏形,只要在其基础上进行加工,搞出合乎要求的操作系统比自己搞要容易得多。事实上,对微软更重要的是,在此之前,IBM对微软是否有现成的操作系统心存疑虑,而到底采用CP/M还是微软的系统还没有决定。现在的SCP-DOS使IBM公司放弃了CP/M转而与微软合作。这时的帕特森对IBM公司与微软公司的合作一无所知。
1981年4月,“DOS之父”帕特森离开了西雅图电脑制造公司,投到微软公司门下。这时才知道自己的操作系统被微软拿来作为IBM公司合作的产品之一。他当时非常恼火和后悔,不过也无可奈何:自己的成果虽然潜力无限,但在西雅图电脑制造公司无法得到推广,难以在大公司心目中树立良好信誉。而由微软公司代替去开发、发展完善,总比埋没了要好。
FreeDOS简介
本书系统地介绍了计算机操作系统的发展历史,使您能够更加全面,更加详细地了解计算机,了解信息技术。
大家都知道,微软在开发出Win95后停止了DOS的独立发展。但是,在Win95出现之前,微软已经明显地加强了Windows的开发而减慢了DOS的发展,并在Windows中采取一些不光彩的手段去排斥打击其他的DOS系统,如DR-DOS等,以确保MS-DOS的统治地位,维护自己的商业利益。比如当您在DR-DOS中运行Win3x时,肯定不时会出现所谓的“错误”信息。
微软的专横做法当然引起了许多人的不满,许多团体甚至个人,包括大名鼎鼎的IBM公司都纷纷投入到开发兼容DOS的行列这中,意图打破微软对DOS的垄断局面。同时由于DOS的开放性和大家对DOS强大实用的功能的认识,DOS的种类不断增加,目前至少有20种,如PC-DOS、ROM-DOS、PTS-DOS、FreeDOS等,而新的功能,新的理念更是层出不穷。这里我们就为大家介绍一下最具代表性的FreeDOS。
FreeDOS工程(The FreeDOS Project)建立于1994年,由著名程序员Jim发起,并很快得到了众多使用者和程序开发者的响应。FreeDOS工程的目标是建立一个完整的、自由开放的并且与MS-DOS完全兼容的新型DOS操作系统,这个DOS系统属于全人类。由于它是建立著名的GNU GPL(GNU通用公共许可证)协议下的自由软件,得到来自世界各地众多优秀程序员的支持,现在一直在不断的发展着,而且参加的人越来越多,通过互联网联合起来朝着他们的目标去努力,充分体现了自由开放和团结的精神。目前为FreeDOS设计的DOS软件正在源源不断的推出和发展,不仅有各种外部命令,还有许多其他的增强程序和附件,而且质量既高也很实用,往往超过MS-DOS中的同类命令。例如在它上面开发的Cute Mouse,就是目前DOS下最好(体积最小,功能最强)的鼠标驱动程序。而ATTRIB、XCOPY等众多外部命令,不仅比MS-DOS的同类命令效率要高,而且体积不到后者的二分之一甚至几分之一。尤其重要的是,作为自由软件,它的源代码是完全公开的,显然对于需要学习和借鉴的国人,这是最好不过的事了。
FreeDOS与MS-DOS是完全兼容的,因此为它开发的软件基本上都可以直接移植过来在MS-DOS等DOS下使用。而我们国内外已经开发的绝大多数DOS软件也可以在它上面正常的运行。它的功能也十分强大,比如同样支持FAT32分区和大硬盘,部分功能已经远远超过MS-DOS。还有许多其他非常实用的功能,如内置DOSKEY支持、支持极大的内存(最大高达4G)等。至于更多的功能,如长文件名功能等等,现在正在大家不断的努力下开发着,相信不久后就会成为现实。不仅如此,它的系统启动文件也比MS-DOS等小巧得多。它的核心文件只有一个,再加上一个SYS文件和一个命令处理器COMMANDCOM文件,总共才130K,放在启动盘中是十分合适的。
不过,与MS-DOS等DOS一样,上面介绍的FreeDOS是16位的。由于现在32位的操作系统逐渐成了大势所趋,因此,为了跟上时代的发展,人们又开发了32位的FreeDOS操作系统,即内核为32位的FreeDOS版本FreeDOS32,并再次得到了众多的支持。虽然目前它还不是很成熟,但它一直在发展着,而且毫无疑问,32位的FreeDOS有着划时代的意义,标志着DOS逐渐向32位的内核的方向发展了。
尤其是在国外,不少人认为,FreeDOS将为DOS带来新的生机和气象,因此对此感兴趣和参加的人越来越多。无数的优秀程序员投入其中不断为FreeDOS的发展添砖加瓦。目前,自由的FreeDOS越来越受到人们的关注,比如著名的Dell电脑公司就即将为它生产的部分电脑直接提供FreeDOS操作系统。
DOS的应用
一、设备出错信息
设备出错信息是指当DOS读写设备出错时,提示用户出错,然后系统暂停等待用户响应。如果用户知道出错发生的原因,那么可在选择响应时采取正确的行动。在用户响应之后,系统才继续工作。
系统提示响应的方式如下: Abort, Retry, Ignore
通常,应按以下次序给予回答:
R重试操作。这可能不再发生错误。
A中止退出。系统迫使读写请求结束。
I忽略错误。系统继续运行(可能丢失数据,故要特别小心)。
下面具体说明各种出错信息的含义和应采取的措施:当读写设备(磁盘驱动器、打印机)出错时,DOS用下列格式显示出错误信息:
(type) error reading (device)Abort, Retry, Ignore
或者
(type) error reading (device)
Abort, Retry, Ignore?
上述信息中,(device)是出错的设备名,而(type)是下面列出错误类型之一:
Bad call format(错误调用格式)解释:传给磁盘驱动程序1个错误长度的I/O请求头。措施:R重试; A终止; I忽略。
Bad Command(命令错)解释:磁盘驱动程序向(device)发了1条非法命令。措施: R重试; A终止; I忽略。
Bad unit(设备出错)解释:设备驱动程序传送了1个无效的设备部件号。措施:R重试; A终止; I忽略。
Data (数据错)解释:DOS无法正确读写数据。该信息表明磁盘上有坏道。措施:R重试; A终止; I忽略。
FCB unavailable(文件控制块不够)解释:在网络下,因装入文件共享支持程序,企图打开的文件控制块数超出了由FCBS=命令所指定的个数。措施:选择响应方式A,然后用“FCBS=”命令增加文件控制块数。
General failure(一般性错误)解释:遇到别处未说明的错误。措施:首先选择R重试,若错误还在,然后选择A中止,判断程序有无问题。