当前位置:  开发笔记 > 运维 > 正文

开发没有信息的驱动程序

如何解决《开发没有信息的驱动程序》经验,为你挑选了1个好方法。

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



1> Adam Davis..:

你如何逆向工程?

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

例:

假设您想开发USB相机驱动程序."黑匣子"是软件驱动程序.

    开发OS和/或驱动程序的钩子,以便您可以看到驱动程序的输入和输出

    生成典型输入,并记录输出

    分析输出并合成描述输入和输出之间关系的模型

    测试模型 - 将其放在黑盒驱动程序的位置,然后运行测试

    如果它能完成你需要的一切,那么你就完成了,如果没有冲洗并重复

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

这种方法比洁净室逆向工程更安全(合法),在那里有人实际反编译代码,或者反汇编产品,彻底分析它,并根据他们看到的内容制作模型.然后将模型(AND NOTHING ELSE)传递给开发人员,复制产品的功能.然而,将原版拆开的工程师无法参与,因为他可能会带有受版权保护的代码/设计部分,并无意中将它们放入新代码中.

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

-亚当

推荐阅读
ar_wen2402851455
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有