如何 开源/自由软件社区 为不提供文档的产品开发驱动程序?

有帮助吗?

解决方案

如何对某些东西进行逆向工程?

  • 您观察输入和输出,并开发一组描述对象操作的规则或模型。

例子:

假设您想要开发一个 USB 摄像头驱动程序。“黑匣子”是软件驱动程序。

  1. 开发操作系统和/或驱动程序的挂钩,以便您可以看到驱动程序的输入和输出
  2. 生成典型输入并记录输出
  3. 分析输出并综合描述输入和输出之间关系的模型
  4. 测试模型 - 将其代替黑盒驱动程序,然后运行测试
  5. 如果它满足了您需要的一切,那么您就完成了,如果没有冲洗并重复

请注意,这只是一个常规的问题解决/科学过程。例如,天气预报员做同样的事情 - 他们观察天气,根据模型测试当前状况,预测未来几天会发生什么,然后将模型的输出与现实进行比较。当不匹配时,他们会返回并调整模型。

这种方法比净室逆向工程稍微安全(合法),净室逆向工程是有人实际反编译代码,或拆解产品,彻底分析它,并根据他们所看到的内容制作模型。那么模型(仅此而已)被传递给开发人员复制产品的功能。然而,拆开原始代码的工程师不能参与,因为他可能会带来代码/设计的受版权保护的部分,并无意中将它们放入新代码中。

但是,如果您从不拆卸或反编译该产品,那么您应该处于合法的安全水域 - 剩下的唯一问题是专利问题。

-亚当

其他提示

通常通过对代码进行逆向工程。不过,在某些国家/地区可能存在法律问题。

这是一个相当模糊的问题,但我想说 逆向工程. 。他们如何进行这取决于它是什么类型的设备以及它可以使用什么。在许多情况下,该设备可能具有与另一台设备相似的核心芯片组,可以进行修改以使其工作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top