由于NTFS是微软创建的专有文件系统,ntfs-3g开发人员是如何在不引用NTFS源代码的情况下创建NTFS驱动程序的开源版本的?还是与微软达成了某种协议??
发布于 2014-02-26 10:00:44
ntfs-3g是1995年马丁·冯·L( Martin Wis)创建的第一个NTFS驱动程序的后续版本。
驱动程序大多是逆向工程,即通过观察和分析数据结构,并找到正确处理的方法。
根据原工程场地
方法大致是: 1使用十六进制editor 2查看卷,执行一些操作,例如创建file 3,使用十六进制编辑器查找changes 4分类并记录changes 5重复步骤1-4。
经过长时间的开发和艰苦的工作,根据2006年的第一次发行说明 of ntfs-3g,从NTFS创建了一个叉子:
你好,作为libntfs项目的一部分,我很高兴地宣布我对ntfsmount和libntfs的贡献,这导致了ntfs-3g,一个读写的ntfs驱动程序,能够无限地创建和删除文件。
我希望这个部分的回答能帮助你了解这是如何诞生的,以及它是如何继续离开的。
值得注意的是,今天这个驱动程序是由图瑟拉维护的,不再是一个业余产品。
发布于 2014-02-26 22:27:07
没错。逆向工程。
逆向工程基本上是研究特定行为和预期结果的模式,并以一种无需查看代码就可以再现它的方式记录它们。
例如,对于用于CIFS/SMB的windows兼容性网络层(早期版本的NetBIOS,AKA作为窗口共享),Samba项目开发人员使用网络嗅探器和数据包分析器的方式记录了这些网络包在某些操作中包含的内容(比如向端口发送请求以列出共享),然后模拟相同的操作,但必须使用自己的代码实现,只要网络数据包数据发送的内容与windows服务器所期望的兼容。
所以NTFS-3g也是一样的,但是看看硬盘的行为和结果,而不是网络。
https://unix.stackexchange.com/questions/117006
复制相似问题