网络第5域

MS-DOS 4.00源代码公开过程中的Git转储失误会破坏构建并删除元数据

字号+作者: 来源:cnBeta.COM 2024-05-01 00:59 评论(创建话题) 收藏成功收藏本文

微软公司开源了MS-DOS4.00的源代码,揭示了计算机历史上的一个重要里程碑,这值得称赞。但这家科技巨头在发布过程中的失误,可能会给渴望研究几十年前代码的'...

微软公司开源了MS-DOS4.00的源代码,揭示了计算机历史上的一个重要里程碑,这值得称赞。但这家科技巨头在发布过程中的失误,可能会给渴望研究几十年前代码的历史学家和档案保管人员带来不必要的麻烦。vkm品论天涯网

vkm品论天涯网

正如OS/2博物馆的软件策展人MichalNecasek所指出的那样,正确的做法是将源代码转入Git仓库,而不是提供原始存档。他提出了一个很好的观点:"历史悠久的源代码应该以ZIP、tar或7z等文件归档的形式发布,并保留所有时间戳和每个字节的原样。Git根本就不是一个合适的工具"。vkm品论天涯网

将源代码扔进Git后,微软可能以多种方式破坏了文件,例如,Git忽略了原始时间戳,带走了关于每个文件最后修改时间的潜在有价值的元数据。更糟糕的是,UTF-8编码的转换把一些代码变成了乱码,破坏了构建过程。vkm品论天涯网

正如Necasek所强调的,几十年前的源代码不仅仅是文本,它本质上是二进制数据,需要完全保存,不能做任何修改。重新编码会导致程序崩溃,因为像MASM5.10和MicrosoftC5.1这样过时的工具自然无法处理像UTF-8这样的Unicode格式,而当时还不存在这种格式。vkm品论天涯网

vkm品论天涯网

虽然MS-DOS4.00代码的可用性对于研究从MS-DOS到Windows发展历程的软件历史学家来说无疑是一个福音,但GitHubbing方法可能会不必要地破坏将代码作为真实档案材料进行构建和分析的努力。vkm品论天涯网

不过,一位用户名为"starfrost"的评论者声称,他们与微软合作发布了这一版本,并在原文中表示,他们有可能获得原始ZIP文件。不过可能无法获得时间戳,因为"数据保护法规定源文件必须匿名"。vkm品论天涯网

此外,Necasek还表示,他可以通过将代码复制到PCDOS2000虚拟机并在其中运行构建过程来成功构建整个代码。因此,如果你想构建代码,这是一个不错的选择。vkm品论天涯网

微软更明智的做法是直接从内部备份中以干净的ZIP或7z压缩包形式提供源代码,并进行适当编码,以原始形式保留每个字节。计算机的遗产对于业余爱好者来说实在是太珍贵了。vkm品论天涯网

值得称赞的是,微软还额外提供了来自RayOzzie档案的测试版二进制文件、原始文档和磁盘映像,以方便用户进行仿真。vkm品论天涯网

本网除标明“PLTYW原创”的文章外,其它文章均为转载或者爬虫(PBot)抓取; 本文只代表作者个人观点,不代表本站观点,仅供大家学习参考。本网站属非谋利性质,旨在传播马克思主义和共产主义历史文献和参考资料。凡刊登的著作文献侵犯了作者、译者或版权持有人权益的,可来信联系本站删除。 本站邮箱[email protected]