30多年前曾被Windows与Linux击败的操作系统,开源了!

电子工程世界 2024-05-30 07:03

▲ 更多精彩内容 请点击上方蓝字关注我们吧!


最近,EEWorld网友发帖表示,曾被Windows与Linux“灭掉”的微软操作系统——MS-DOS 4.0 竟然开源了,还将代码发布在了 GitHub 上(https://github.com/microsoft/MS-DOS),以供大家研究学习。你用过它吗?
原贴地址:https://www.eeworld.com.cn/aebvvrT

 36 年后,微软将 MS-DOS 4.0 开源 


关于这个系统,估计现在很多程序员都不知道了,或者只在古老的教科书上看过这玩意儿。

MS-DOS,全称为Microsoft Disk Operating System,是一款由微软开发的操作系统。它主要用于个人计算机,并且在1981年至1990年代早期成为了最流行的操作系统之一。MS-DOS的历史与早期个人计算机的发展紧密相关,具有重要的历史意义。

因为MS-DOS操作系统主要是由汇编语言编写的,虽然是16位实模式时代的汇编,但对程序员们,尤其是在校的大学生们来说,仍然是学习计算机的宝贵学习资料。

这一次 MS-DOS 4.0 得以开源,很大程度上要归功于前微软首席技术官 Ray Ozzie 和一位名叫 Connor(Starfrost)Hyde 的年轻英国研究员之间的通信。
对此,微软开发者社区副总裁 Scott Hanselman 和微软开源项目办公室负责人 Jeff Wilcox 还特地发布了一篇《开源 MS-DOS 4.0》的公告进行了介绍。
公告指出,相较之下,DOS 4.0 版本背后有着一段复杂而迷人的历史,微软与 IBM 合作开发了部分代码,但也创建了一个名为“多任务 DOS”(MT-DOS)的 DOS 分支,但并未广泛发布。
不久前,这位研究员 Connor(Starfrost)Hyde 和微软前首席技术官 Ray Ozzie 就自己手头收藏的一些软件进行了交流。在收藏的软盘中,Ray Ozzie 惊讶地发现了一些未发布的 DOS 4.0 测试版二进制文件。
基于此,研究员 Starfrost 联系了微软开放源代码计划办公室 (OSPO),希望他们能够发布 DOS 4 的源代码,因为他正在研究记录 DOS 4、MT-DOS 和 IBM的 OS/2 之间的关系。这些多任务 DOS(MT-DOS)二进制文件的一些后期版本可以在互联网上找到,但这些新的多任务 DOS beta 版二进制文件似乎更早,尚未发布,而且还包括 ibmbio.com 源代码。 
在了解这些信息之后,微软开发者社区副总裁 Scott Hanselman 在互联网档案管理员和爱好者 Jeff Sponaugle 的帮助下,对这些原始磁盘进行了成像,并仔细扫描了“Ozzie Drop”中的原始印刷文件。微软和 IBM 研究员都认为,这是操作系统历史上值得分享的精彩片段。 
随后,微软开源项目办公室负责人 Jeff Wilcox 去了微软档案馆(Microsoft Archives),但是他们没能找到 MT-DOS 的完整源代码,却发现了 MS-DOS 4.0,这才有了如今的开源。
微软表示,“如果你想亲自运行 MS-DOS 4.0 软件并进行探索,我们已经成功地在原始 IBM PC XT、较新的 Pentium 电脑以及开源 PCem 和 86box 模拟器上直接运行了该软件。 ”
  • GitHub 地址:https://github.com/microsoft/MS-DOS

 MS DOS 源码陆续发布中 


这并不是微软第一次发布 MS-DOS 源代码。
十年前,微软将 MS-DOS 1.25 和 2.0 的源代码发布到计算机历史博物馆,而后在 2018 年于 GitHub 上重新开源了 MS-DOS(https://github.com/microsoft/MS-DOS)。这段代码在历史上占有重要地位,对于仅 45 年前完全用 8086 汇编代码编写的操作系统而言,具有非常好的研究意义。
多年来,其他 DOS 版本也已开源。PC-MOS/386 是总部位于佐治亚州诺克罗斯的 The Software Link 公司推出的多用户 MS-DOS 克隆版,于 2017 年开源(https://github.com/roelandjansen/pcmos386v501)。它可以运行大多数标准 DOS 和 386 的保护模式应用程序。

 回看 DOS 发展史 


事实上,现在的 MS-DOS 4.0 并不能称之为是更好的 DOS 操作系统。回看 DOS 发展历史,这款操作系统也曾引起巨大争议。

据小枣君的文章中介绍,1975年初,MITS电脑公司推出了基于Intel 8080芯片的Altair 8800微型计算机。这是人类历史上第一台PC(个人电脑),具有重要意义。

Altair 8800

1976年,美国的Digital Research公司(以下简称DR公司),成功研制出一套名为CP/M(Control Program/Monitor,控制程序/监控)的操作系统,专门用于搭载了8080芯片的微型计算机(包括Altair 8800)。

后来,到了1980年,IBM公司也秘密搞起了自己的PC项目。

这个被命名为“国际象棋”的项目,由唐·埃斯特里奇(Don Estridge)负责领导,旨在开发一款价格足够低廉的微型计算机产品,面向小企业和家庭用户市场。

为了给这款新PC搭配合适的操作系统,他们找到了微软公司的比尔·盖茨 (Bill Gates)。

之所以找比尔·盖茨,主要有两个方面的原因:

一,微软公司此前开发了一款让CP/M在Apple II上运行的Z-80 SoftCard产品,所以,IBM以为微软拥有CP/M。

二,比尔·盖茨的妈妈——玛丽·麦克斯韦尔·盖茨 (Mary Maxwell Gates),在担任全美联合劝募协会执行理事会主席期间,与IBM的首席执行官约翰·埃克斯(John Fellows Akers)共事,所以做了牵线搭桥。

比尔·盖茨和IBM团队进行洽谈后,表示自己并不拥有CP/M,建议他们直接去找DR公司。

因为签订了严格的保密协议,比尔·盖茨在和DR公司负责人加里·基尔代尔(Gary Kildall)说明此事时,并没有直接点明是IBM要找他们,而是说:“有人来看你了。好好对待他们,他们是重要的人。”

加里·基尔代尔,传奇程序员,他还发明了BIOS

但是,基于种种原因,DR公司和IBM公司没有谈拢,双方不欢而散。(一种说法是:IBM一见面就让加里签严格的保密协议,让加里很不爽。也有一种说法是,DR公司想打包卖,而IBM想按单台授权买。)

看到这个情况,比尔·盖茨觉得,这是一个巨大的商业机会,一定不能错过。

经过一番调查,比尔·盖茨得知,SCP(西雅图计算机产品)公司有一个名叫蒂姆·帕特森(Tim Paterson)的24岁程序员,花了四个月的时间,写了一个QDOS系统(Quick and Dirty Operating System,快速和肮脏的操作系统,后来觉得名字不太好听,改成86-DOS)。这个系统是CP/M系统的变种,貌似能够满足IBM的需求。

蒂姆·帕特森,DOS之父

一开始,比尔·盖茨只是花了2.5W美元,买了86-DOS的授权。后来,考虑到IBM这个项目的巨大商业潜力,比尔·盖茨直接掏了5-7W美元,一口气买断了版权。

为了更好地对86-DOS进行改造,比尔·盖茨还把蒂姆·帕特森直接挖了过来,让他加入了微软。

1981年7月27日,微软正式推出了MS-DOS系统(MS是MicroSoft的意思,DOS是Disk Operating System,磁盘操作系统)。

要知道,在 Windows 出现之前,从 1981 年到 1995 年的 15 年间,DOS 在 IBM PC 兼容机市场中占有举足轻重的地位。

1980年代初期:IBM计划推出其第一台个人计算机,即IBM PC。IBM最初没有自己的操作系统,因此与微软达成协议,由微软提供操作系统。微软当时并没有自己的磁盘操作系统,因此它从另一家公司Seattle Computer Products购买了一个名为86-DOS的系统,这个系统由Tim Paterson开发,最初被称为QDOS(Quick and Dirty Operating System)。


1981年:微软将QDOS改良后,重新命名为MS-DOS,并授权给IBM。IBM将其与IBM PC一同发布,并将其命名为PC-DOS。


MS-DOS是一个命令行界面的操作系统,用户需要通过键入命令来执行操作。它支持基本的文件管理、内存管理和程序执行功能。


1980年代:MS-DOS随着IBM PC的普及而迅速扩展,成为当时市场上的主导操作系统。微软随后推出了多个版本,逐步增加了更多功能,如高级文件系统支持、网络功能和国际化支持等。


1990年代:随着图形用户界面的兴起,尤其是微软自己的Windows操作系统的普及,MS-DOS的重要性开始下降。Windows最初作为运行在MS-DOS之上的图形界面程序推出,但逐渐发展成为完全独立的操作系统。


距离 1988 年首次发布,MS-DOS 4.0 至今已有近 36 年的历史,此次微软开源的 MS-DOS 4.0 项目是在 MIT 许可下发布,具体包含了源代码、二进制文件、磁盘映像和文档等内容,允许修改、发布。

这段历史,从上文提到的那位年轻的英国研究员 Starfrost 的叙述中可见一斑:
微软公司于 1975 年由比尔·盖茨和保罗·艾伦创立,为 MITS Altair 8800(最早的个人电脑之一)开发 BASIC 解释器。最初版本的产品在 30 天内开发完成,并成功地向 MITS 创始人(被誉为个人电脑之父)进行了演示。接下来的事情便不展开细说。
从根本上说,在短短几年内,微软就成为了最受欢迎的 BASIC 解释器开发商,并拥有大量其他产品——这是一家相当成功的工具和语言公司,尽管他们也销售各种“SoftCards”,以允许计算机运行针对其他架构的程序,因为在这一时期,个人电脑行业远未实现标准化。
到 1980 年,微软公司的收入达到了几百万美元,但这与后来的发展相比简直是小巫见大巫——公司真正的“重大突破”是在 1980 年。那时,科技巨头 IBM 拟定一份合同,想要一次性支付约 8 万美元,从微软手中购买 MS-DOS 操作系统的永久使用权,用于即将推出的个人电脑。IBM 还获得了微软的 BASIC 编程语言、该公司的所有其他语言以及一些新开发的应用程序的使用权。聪明的做法应该是盖茨坚持收取专利使用费,这样他的公司就可以从 IBM 出售的每台个人电脑中赚取一小笔钱。
通过一系列争论激烈的事件,盖茨“不太聪明”地拒绝了这一合同。
他坚持将 MS-DOS 授权给任何需要的人,微软总共为收购 MS-DOS 支付了 75,000 美元,其中 25,000 美元用于授权,50,000 美元用于直接购买,再加上 IBM PC 的开放式结构,MS-DOS 几乎立即被克隆,成为个人电脑的事实标准。这使得微软从 OEM 收入中获得了无限的印钞机,尽管这在几年内还不会显现出来。
事实证明,这是一次极其幸运的运气,再加上一些精明的商业洞察力,最终使微软公司成为世界上最大的公司之一,比尔·盖茨也多年来一直是世界上最富有的人。
虽然 MS-DOS 让微软赚得盆满钵满,但问题是,即使以当时的标准来看,它也很糟糕。
由于 Tim Paterson 当时是为了满足迫切的需求而匆忙推出的 QDOS 系统,从字面理解 QDOS 就是“快速而肮脏的操作系统”的意思,即使以当时有限的标准来看,该操作系统也缺少了许多基本功能,如缺少子目录、设备驱动程序、硬盘支持等等。
1983 年,微软对 MS-DOS 进行了全面重写,发布了 MS-DOS 2.0,新增了不少功能,还允许 160KB 和 320KB 软盘变为 180KB 和 360K。由于增加了急需的功能,这次更新受到了普遍欢迎,但也有一些人批评它增加了内存使用量。
然而,随着技术的发展,用户仍然需要更多功能。他们想在当时功能强大的新电脑上同时做多件事,因此需要一个操作系统来实现,而 MS-DOS 这个单一任务的操作系统根本无法胜任。此外,自 MS-DOS 1.x 发布以来,微软公司就承诺在未来对 MS-DOS 进行扩展--多用户、网络、多任务。
于是,微软于 1983 年 1 月召集了一些最优秀的程序员,旨在开发新版的 MS-DOS 3.0(MS-DOS 2.5 作为临时版本在同一代码库中同时开发,目的是为微软和 IBM 的网络产品增加基本的网络重定向器支持),它将是一个真正的多任务操作系统,具有抢占式优先调度程序、多线程、命名管道、sempahores、会话管理用户界面和许多其他功能。
然而,编写一个与已有的为单任务环境编写的成千上万个应用程序兼容的操作系统难度实属不易。Starfrost 对此剖析道:
许多 MS-DOS 应用程序,由于 API 缺陷,会进行一些诸如直接写入显示内存的操作——这在多任务处理的操作系统上是无法完成的,因为用户可以选择显示哪个应用程序,并且“屏幕”随时可以改变。
由于新操作系统将被抢占式地进行多任务处理,任何应用程序都可能在任何时间被操作系统抢占进行上下文切换;许多 DOS 应用程序在这方面的兼容性表现不佳。应用程序还会直接从外围设备进行写入和读取,如果操作系统正在等待这些设备的数据,这在多任务处理环境中可能是致命的。
也许是由于这些复杂性等原因,当时 MS-DOS 3.0 被迅速推迟了很长时间。后来,MS-DOS 4.0 又进一步地进行了改进,甚至突破了 640KB 的内存限制,并且支持 32MB 以上的硬盘空间,还增加了支持鼠标的目录界面。
不过,MS-DOS 4.0 与很多知名程序不兼容,有些漏洞甚至会导致用户数据被破坏。
对此,也有不少用户吐槽,当时流行的程序,比如 WordPerfect 5.1、Lotus 1-2-3 和 Doom,在 MS-DOS 4.0 上总是出问题。你可能正在做任务,突然间,程序可能就完全卡住了。在我们了解和讨厌 Windows 的蓝屏死机之前,MS-DOS 4.0 就已经让 PC 用户感到恐慌了。
至于其中缘由,外媒 ZDNET 称,这主要是因为 MS-DOS 4.0 使用了 92KB 的内存。但在当时高端 PC 只有 640K 内存时,这是一件大事,MS-DOS 4.0 使用的内存比以往任何版本的 DOS 都多。
甚至这一版的大跌的口碑让很多使用 DOS 系统的开发商避之不及,当时数字研究公司开发了一款名为 DR-DOS 的 DOS 操作系统,自其发布以来,其版本号最初是模仿 MS-DOS 版本号的,以显示前者将与后者一样工作。但是本来到了发布 DR-DOS 4.0 版本时候,数字研究公司在 1989 年将其新版本命名为 DR-DOS 5.0,以防止任何人认为它与 MS-DOS 4.0 有任何关系。
所以,即使是在 DOS 4.0 发布后一年,软件零售商 Egghead Software 的数据仍然显示,DOS 3.3 的销量为 DOS 4.0 的 2 倍。
事实上,也许 1991 年这么多人准备尝试一种新的类 Unix 操作系统 Linux 的原因之一是 MS-DOS 4.0 惹恼了这么多用户。
后来,微软推出了 Windows 操作系统,尤其是 Windows 95 的发布标志着微软向图形用户界面(GUI)的转变,导致 MS-DOS 走向了灭亡。
曾经这款 MS-DOS 4.0 虽然备受争议,但是如今其带来的开源还是让不少操作系统爱好者感到兴奋,截至目前,这一仓库已经获得了 26.2k 个 star 数,Fork 数达到了 3.6k。

感兴趣的网友已经早早开始研究起了源码,亮点不少,比如这个:

来源:CSDN技术社区等网络内容综合

参考文献

https://cloudblogs.microsoft.com/opensource/2024/04/25/open-sourcing-ms-dos-4-0/

https://starfrost.net/blog/001-mdos4-part-1/index.html

https://www.zdnet.com/article/its-baaack-microsoft-and-ibm-open-source-ms-dos-4-0/

https://mp.weixin.qq.com/s/DgTXatjKTcoBoYlu3W3cRg

https://mp.weixin.qq.com/s/fxvzcYrILrrSLIKCraH9xQ



· END ·



电子工程世界 关注EEWORLD电子工程世界,即时参与讨论电子工程世界最火话题,抢先知晓电子工程业界资讯。
评论
  • 光耦合器作为关键技术组件,在确保安全性、可靠性和效率方面发挥着不可或缺的作用。无论是混合动力和电动汽车(HEV),还是军事和航空航天系统,它们都以卓越的性能支持高要求的应用环境,成为现代复杂系统中的隐形功臣。在迈向更环保技术和先进系统的过程中,光耦合器的重要性愈加凸显。1.混合动力和电动汽车中的光耦合器电池管理:保护动力源在电动汽车中,电池管理系统(BMS)是最佳充电、放电和性能监控背后的大脑。光耦合器在这里充当守门人,将高压电池组与敏感的低压电路隔离开来。这不仅可以防止潜在的损坏,还可以提高乘
    腾恩科技-彭工 2024-11-29 16:12 119浏览
  • 在电子技术快速发展的今天,KLV15002光耦固态继电器以高性能和强可靠性完美解决行业需求。该光继电器旨在提供无与伦比的电气隔离和无缝切换,是现代系统的终极选择。无论是在电信、工业自动化还是测试环境中,KLV15002光耦合器固态继电器都完美融合了效率和耐用性,可满足当今苛刻的应用需求。为什么选择KLV15002光耦合器固态继电器?不妥协的电压隔离从本质上讲,KLV15002优先考虑安全性。输入到输出隔离达到3750Vrms(后缀为V的型号为5000Vrms),确保即使在高压情况下,敏感的低功耗
    克里雅半导体科技 2024-11-29 16:15 119浏览
  • 艾迈斯欧司朗全新“样片申请”小程序,逾160种LED、传感器、多芯片组合等产品样片一触即达。轻松3步完成申请,境内免费包邮到家!本期热荐性能显著提升的OSLON® Optimal,GF CSSRML.24ams OSRAM 基于最新芯片技术推出全新LED产品OSLON® Optimal系列,实现了显著的性能升级。该系列提供五种不同颜色的光源选项,包括Hyper Red(660 nm,PDN)、Red(640 nm)、Deep Blue(450 nm,PDN)、Far Red(730 nm)及Ho
    艾迈斯欧司朗 2024-11-29 16:55 157浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 57浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 65浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 63浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 88浏览
  • By Toradex胡珊逢简介嵌入式领域的部分应用对安全、可靠、实时性有切实的需求,在诸多实现该需求的方案中,QNX 是经行业验证的选择。在 QNX SDP 8.0 上 BlackBerry 推出了 QNX Everywhere 项目,个人用户可以出于非商业目的免费使用 QNX 操作系统。得益于 Toradex 和 QNX 的良好合作伙伴关系,用户能够在 Apalis iMX8QM 和 Verdin iMX8MP 模块上轻松测试和评估 QNX 8 系统。下面将基于 Apalis iMX8QM 介
    hai.qin_651820742 2024-11-29 15:29 151浏览
  • 国产光耦合器正以其创新性和多样性引领行业发展。凭借强大的研发能力,国内制造商推出了适应汽车、电信等领域独特需求的专业化光耦合器,为各行业的技术进步提供了重要支持。本文将重点探讨国产光耦合器的技术创新与产品多样性,以及它们在推动产业升级中的重要作用。国产光耦合器创新的作用满足现代需求的创新模式新设计正在满足不断变化的市场需求。例如,高速光耦合器满足了电信和数据处理系统中快速信号传输的需求。同时,栅极驱动光耦合器支持电动汽车(EV)和工业电机驱动器等大功率应用中的精确高效控制。先进材料和设计将碳化硅
    克里雅半导体科技 2024-11-29 16:18 161浏览
  • 国产光耦合器因其在电子系统中的重要作用而受到认可,可提供可靠的电气隔离并保护敏感电路免受高压干扰。然而,随着行业向5G和高频数据传输等高速应用迈进,对其性能和寿命的担忧已成为焦点。本文深入探讨了国产光耦合器在高频环境中面临的挑战,并探索了克服这些限制的创新方法。高频性能:一个持续关注的问题信号传输中的挑战国产光耦合器传统上利用LED和光电晶体管进行信号隔离。虽然这些组件对于标准应用有效,但在高频下面临挑战。随着工作频率的增加,信号延迟和数据保真度降低很常见,限制了它们在电信和高速计算等领域的有效
    腾恩科技-彭工 2024-11-29 16:11 106浏览
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 75浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 62浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦