dos系统时代
1、蒂姆·帕特森 是 “洁净室”方法吗 还是IBM一、帕特森开发86-DOS不是“洁净室”而是“直接参考”帕特森在1980年开发86-DOS最初叫QDOS时并没有采用“洁净室”这种规避侵权的合法逆向工程方法。实际上他的做法简单直接得多他手边有一本公开出版的CP/M手册CP/M是基尔代尔开发的行业标准操作系统他从手册中直接复制了CP/M的API接口定义和系统调用编号然后自己重新编写代码来实现这些功能简单说就是“接口照着抄代码自己写”。这是一种常见的兼容性做法但它在法律上存在风险——因为接口设计本身也可能被视为受保护的智力成果。这也解释了为什么后来西雅图计算机产品公司SCP会起诉微软最终微软支付了100万美元和解。二、IBM改造DOS也不是“洁净室”而是“常规开发”你之前问到的“洁净室”在IBM和微软这次合作中根本没有使用。根据历史资料IBM PC的DOS开发过程是这样的微软已经买下了86-DOS的完整版权1981年7月5万美元帕特森本人被挖到了微软1981年4月离开SCP5月加入微软IBM和微软的工程师是“并肩作战”的——双方人员在西雅图的一间小办公室里一起工作用IBM提供的原型机进行开发和调试这种模式恰恰是“洁净室”方法最反对的——洁净室的核心要求就是“分析组”和“实现组”严格隔离不能有任何交流。而IBM和微软的做法是原代码作者帕特森直接参与改造IBM工程师随时介入配合。三、“洁净室”真正用在哪儿了这个方法是后来才被广泛使用的最有名的案例是时间案例说明1980年代初IBM克隆基尔代尔的BIOS用洁净室方法独立写出与CP/M BIOS功能兼容的代码1988年Digital Research开发DR-DOS为了兼容MS-DOS采用洁净室逆向工程Digital Research基尔代尔的公司开发DR-DOS时为了确保不与MS-DOS产生法律纠纷正是采用了洁净室方法一组人反汇编MS-DOS、写功能文档另一组人完全隔离、只看文档重写代码。这成了一个历史性的讽刺基尔代尔发明的CP/M被帕特森“参考”了但没走洁净室流程后来基尔代尔自己的公司为了兼容对手的系统反倒严格遵守了洁净室规范。四、总结对比事件使用洁净室吗实际做法帕特森开发86-DOS❌ 否直接参考公开的CP/M手册复制API接口IBM微软改造PC-DOS❌ 否原代码作者帕特森直接加入项目双方工程师合作开发IBM克隆基尔代尔BIOS✅ 是用洁净室方法规避侵权Digital Research开发DR-DOS✅ 是用洁净室方法兼容MS-DOS一句话总结帕特森是直接“参考”了CP/MIBM和微软是“拿来改造”——两者都没有用“洁净室”。这个方法后来主要被想兼容别人系统但怕被告的公司使用比如IBM自己克隆BIOS时和Digital Research开发DR-DOS时。参考部分https://retrocomputing.stackexchange.com/posts/26541/revisionshttps://retrocomputing.stackexchange.com/posts/26541/revisionsFrom https://en.wikipedia.org/wiki/DR-DOS DR-DOS (written as DR DOS, without a hyphen, in versions up to and including 6.0) is a disk operating system for IBM PC compatibles. Upon its introduction in 1988, it was the first DOS attempting to be compatible with IBM PC DOS and MS-DOS (which were the same product sold under different names). DR-DOS was developed by Gary A. Kildalls Digital Research and derived from Concurrent PC DOS 6.0, which was an advanced successor of CP/M-86. As ownership changed, various later versions were produced with names including Novell DOS and Caldera OpenDOS. Though DR-DOS was a descendentdescendant of CP/M (and indeed MS-DOS started life as QDOS, a clone of CP/M), achieving full compatibility with MS-DOS in the late eighties was nontrivial; applications depended on all sorts of quirks of the system. Some of these were documented in a book called Undocumented DOS, but this was only published in 1990. It seems to me therefore that DR, to achieve full compatibility without legal vulnerability, must have used clean room reverse engineering: one team disassembles MS-DOS and fully documents their findings, another never looks at the MS-DOS code, but writes DR-DOS based on the documentation. (This would be similar to the way IBM-compatible BIOSes were written, but with the difference that IBM published the source code for their BIOS, so in that case, the first team didnt need to use a disassembler.) Are there historical records confirming that this was done, and giving any details of the process, like how long it took, and who worked on each team? Became Hot Network Question occurred Mar 1, 2023 at 0:56 1 Source Link asked Feb 28, 2023 at 16:56 rwallace 65.7k 20 266 631 Did DR cleanroom MS-DOS? From https://en.wikipedia.org/wiki/DR-DOS DR-DOS (written as DR DOS, without a hyphen, in versions up to and including 6.0) is a disk operating system for IBM PC compatibles. Upon its introduction in 1988, it was the first DOS attempting to be compatible with IBM PC DOS and MS-DOS (which were the same product sold under different names). DR-DOS was developed by Gary A. Kildalls Digital Research and derived from Concurrent PC DOS 6.0, which was an advanced successor of CP/M-86. As ownership changed, various later versions were produced with names including Novell DOS and Caldera OpenDOS. Though DR-DOS was a descendent of CP/M (and indeed MS-DOS started life as QDOS, a clone of CP/M), achieving full compatibility with MS-DOS in the late eighties was nontrivial; applications depended on all sorts of quirks of the system. Some of these were documented in a book called Undocumented DOS, but this was only published in 1990. It seems to me therefore that DR, to achieve full compatibility without legal vulnerability, must have used clean room reverse engineering: one team disassembles MS-DOS and fully documents their findings, another never looks at the MS-DOS code, but writes DR-DOS based on the documentation. (This would be similar to the way IBM-compatible BIOSes were written, but with the difference that IBM published the source code for their BIOS, so in that case, the first team didnt need to use a disassembler.) Are there historical records confirming that this was done, and giving any details of the process, like how long it took, and who worked on each team? historyms-dosreverse-engineering