8

我想收集一些关于解决以下问题的想法。我有一个 TOF 相机,它的驱动程序适用于 linux x86/64。它工作正常。但事实上,如果可能的话,相机将用于基于 ARM 的嵌入式设备。

问题:

  • 我是否必须反编译驱动程序二进制文件并使用 ARM 编译器重新编译?有没有可用的反编译工具?
  • 有没有可用的 ARM>>x86 模拟器?
  • 还有其他想法吗?

ps:纯源很贵,反正我也不喜欢买:)

4

4 回答 4

3
  1. AFAIK,截至今天,没有这样的反编译器可以从机器代码生成可编译代码。您将不得不手动修复(通常是很多修复)生成的代码。您可以检查这个问题以了解 Linux 反编译器。
  2. 检查QEmu。只要您可以执行底层架构,它就无关紧要;)
  3. 除了你说的以外,没有太多。

您正在尝试的是(部分)逆向工程。RE 是一个复杂的过程,需要对你试图扭转的事情有丰富的知识;在您的情况下,相机驱动程序。如果您有这方面的知识,请继续。如果你不这样做,我不会浪费我的时间(或先获得知识;))

于 2013-01-08T16:50:07.830 回答
0

最近创建的 Eltechs ExaGear Server可在ARM as A Service上使用,可在 ARM 设备上运行 x86 应用程序。

它是新的和专有的,但它确实存在。

于 2013-09-14T02:41:17.147 回答
0

如果您的驱动程序是内核对象,则没有模拟器(据我所知)能够在 ARM 内核中运行 x86 内核代码。如果您的“驱动程序”实际上是在通用驱动程序(v4l2 等)之上入侵的用户空间库,那么您可能对这里提到的 QEMU 或 Exagear 感到幸运。附带说明一下,您可能最终也会使用 x86 应用程序软件,因为 QEMU 或 Exagear 开箱即用不支持从 ARM 代码调用 x86 库。

于 2015-03-09T13:11:05.673 回答
0

有关详细信息,请参阅以下答案。它列出了尝试自动执行此类翻译时可能遇到的一些问题:

将目标文件转换为另一个架构

于 2013-01-08T21:04:01.733 回答