我的代码是在hackintosh上运行的吗?

时间:2011-08-17 13:17:43

标签: macos testing kernel hackintosh

我正在为客户开发一个内核驱动程序,该客户端将其出售给将其销售给最终客户的客户。最终客户不仅在合同中被移除了3次,而且还有数千英里和十几个时区。因此,我无法直接访问他们的测试环境。

在我正在测试的几台机器和几个不同版本的OS X上,一切都正常测试,我无法复制它们似乎遇到的一些问题。

我怀疑他们可能正在测试hackintosh,虽然我正在从他们的测试设置正确的角度处理他们报告的问题,但我想通过添加代码让我怀疑休息下一个版本将帮助我了解它们是否在真正的Apple硬件上运行。

现在我正在收集系统配置文件,kernel.log,console.log和USB配置文件。如果答案可以在其中一个中找到,那就更好了,但我认为它不会那么简单。

  • 我有什么选择来确定我的驱动程序运行的计算机是否包含真正的Apple硬件?

同样,我在用户空间和内核中都有代码,因此我可以完全访问该机器,但我更喜欢用户空间解决方案。用户空间代码以root身份运行,并在Apple徽标显示之前开始在启动时运行。虽然支持OS X的多个版本会很好,但10.6.8是我需要为此案例定位的特定版本。

1 个答案:

答案 0 :(得分:1)

我正在收集每个错误报告中的system_profiler输出,我可以将报告的硬件与the list at EveryMac进行比较。

如果有更好的答案可以在没有编译我自己的Mac硬件数据库的情况下在软件中做到这一点会很好,但这可能是在软件中完成此任务的最全面的方法。可能最简单的方法是询问IO注册表中的几个关键硬件(视频卡,处理器等),然后一旦数据返回,就会在本地软件上对照已知Apple硬件配置的数据库进行检查。

现在我正在手动检查系统配置文件输出。