前些天,微软开源了DOS4.0,这其实算不上什么大新闻,因为:
1. 这是个非常古老的,没人用的操作系统;
2. 这不是DOS第一次开源了,1.25版,2.0版在6年前已经开源了
有意思的是,网友发现,开源以后,一个叫做mzbik的人心急火燎地修改了其中一行代码的注释:
这个注释的意思是:“脑子有问题的Tim Patterson......”
mzbik把Tim Patterson改成了缩写TP,其他保持不变。
这就有意思了。
Tim Patterson是谁?为啥脑子有问题?
mzbik又是谁?他为啥要这么做?
1
上世纪七十年代末,八十年代初,正是个人电脑开始爆发的前夜。
美国华盛顿州的西雅图,有个叫西雅图计算机产品(简称SCP)公司决定采用Intel的8086来组装个人电脑,但是却没有合适的操作系统可用。
于是公司的蒂姆·帕特森 (Tim Paterson)写了一个操作系统,名称叫做QDOS,意思是Quick and Dirty Disk Operating System,Quick and Dirty,这名称,公司竟然叫得出口。
QDOS是仿照流行的PC操作系统CP/M编写的,二者非常相似,这样CP/M上的软件就可以轻松移植到QDOS。
1980年7月,0.1版本完成。
如果QDOS就这样发展下去的话,应该也不会差。
但是它的命运却被微软和盖茨彻底改变了。
1981年,盖茨抓住了一个千载难逢的机会:为蓝色巨人IBM的PC提供操作系统。
这时候的盖茨绝对是空手套白狼,他连操作系统都没有,就敢和IBM签合同。
微软和同在西雅图的SCP公司之前有业务往来,这时候盖茨就发现了QDOS,他非常果断,立刻用5万美元买断QDOS,并且把作者蒂姆·帕特森也挖了过来,让他把QDOS移植到配有8088 CPU的IBM PC上。
当然,不能叫QDOS这么难听的名字了,新名字叫MS-DOS。
商业天才盖茨认为将来肯定有其他厂商去模仿IBM PC,一定会用他的MS-DOS, 所以坚决禁止IBM买断DOS,一定要保留权利将MS-DOS授权给其他计算机厂商。
这可能是微软历史上最有影响力的决定,盖茨抓住了个人电脑爆发的风口。
随后,在每一台PC兼容机上,MS-DOS几乎是唯一的操作系统,微软帝国成型了。
MS-DOS的作者Tim Paterson自然功不可没,不过Tim有点不“安分”,曾经三进宫微软,第一次是1981年5月到1982年四月,开发出第一版的MS-DOS后就离开创业了。
他离开后,Mark Zbikowski成为DOS的开发主管,接手了DOS的开发工作,从DOS2.0一直干到DOS4.0。
Mark Zbikowski在微软也是一个传奇程序员,他给DOS贡献了分层目录结构,和可安装设备驱动(后来成了即插即用),后来参与了Windows NT的开发,是文件系统架构师和开发经理。
就像PK把自己的名字雕刻在Zip文件格式中一样,Mark Zbikowski 也把自己的名字刻在了DOS可执行文件里,这种文件的Magic Number是:4D 5A ,即MZ。
Mark Zbikowski 是“从一而终”的典范, 这位哈佛的高材生被鲍尔默招募后,一口气在微软工作了25年,成为继比尔·盖茨和史蒂夫·鲍尔默之后,第三位达成这个成就的人。
2
眼尖的同学可能已经发现,Mark Zbikowski 就是GitHub上的mzbik !
很明显,mzbik对40多年前的这条注释印象极为深刻,弄不好就是他自己写的 :-)
所以DOS4.0一开源,他立刻就想起了这件事,心急火燎地把它改掉了。
如果不是有个叫OwnedByWuigi用户手快,fork了最早发布的DOS4.0代码仓库,我们可能永远都不知道有这回事儿。
https://github.com/OwnedByWuigi/DOS/blob/ffd70f8b4fb77e2e6affbf1fad2fd8c349f0369f/v4.0/src/DOS/STRIN.ASM#L70
程序员经常在代码注释中看到脏话,比如:
之前我还写过一篇文章《脏话越多,代码越好》
但这些脏话一般是骂代码烂,不会骂人,在DOS源码中这么指名道姓地骂Tim Patterson,说人家脑子有问题就太过分了。
Mark Zbikowski 也是,把Tim Patterson改成TP,这不是欲盖弥彰,更加引发大家的好奇吗?难道Mark就是为了吸引大家的注意力?
Tim Patterson被骂的原因,恐怕只有当事人才能说清楚了。
3
微软开源了DOS,但它们是最不重要的几个版本,最流行的3.x、5.x、6.x版本却没有开源。
另外,国外网友Bryan Lunduke(前微软员工)特别指出,微软这次开源DOS4.0,很多科技媒体争相报道,但是它其实根本无法编译!你根本无法构建一个可以工作的MS-DOS 4.0。
这样的开源相当于把自家不用的,破旧的老古董拿出来晒了晒,这样的开源又有什么意义上呢?
微软号称拥抱了开源,拥抱了Linux,自家也确实有不少产品开源,最著名的就是VS Code,但是在自家操作系统的开源上,它是非常保守的。
我的新书《码农翻身2》近期正式出版,这本书开启了5折优惠,全彩印刷,用故事给技术加点料,原价118元,现在仅需59元。
《码农翻身》1和2 是我一二十年经验的总结,现在只要花几十块就可以买到一二十年积累的精华,很划算啊!
这本书有两大特色:
1. 用故事讲解技术,好玩有趣
从封面的两幅漫画就能看出来,一幅是Java派人到Python王国进行渗透,被抓起来了。一幅是一队JavaScript士兵,张牙舞爪地对后端王国进攻。
书中每一篇都是一个独立的小故事,读起来毫无负担,可以放在床头,当做睡前故事,不知不觉间就把技术给掌握了。
2. 直击最重要的技术本质,酣畅淋漓。
不用担心被软件的琐碎细节给绊住,每一个故事都会给主人公设置难题,不断地挑战他,等他解决一个,就再设置一个,这样一层层剥下去,最后就把软件的本质给暴露出来。
读完以后让你有种“原来如此”的快感,非常过瘾。
如果没有看过码农翻身1的话,强烈建议半价入手1+2套装,都是半价!