我正在考虑将 Windows 驱动程序迁移到 OS X。现在我刚刚开始四处看看有什么可用的,并且有很多关于 Objective C 和可可的内容。似乎该语言和 cocoa 框架是高级 API,我的假设正确吗?

我有很强的 C++ 技能,我用它们来开发内核,我可以用同样的技能来开发 Mac 驱动程序吗(我想答案是肯定的)。Macintosh 是否有用于构建驱动程序的任何类型的应用程序/开发环境?

有帮助吗?

解决方案

Apple 硬件和驱动程序页面 有大量有关 Mac 驱动程序开发的信息。这应该足以让您开始。一些亮点:

  • 入门 - 为刚接触 Mac OS X 的硬件和驱动程序开发人员提供的指导学习路径。

  • 构架 - 按框架组织的 API 参考。

  • USB 示例代码 - 用于开发 USB 设备和访问它们的软件的资源。

  • FireWire 示例代码 - 用于开发 FireWire 设备和访问它们的软件的资源。

其他提示

从这里开始 http://developer.apple.com /documentation/Darwin/Conceptual/KernelProgramming/About/About.html

Mac开发通常使用Xcode完成,因为它处理各种特定于Mac的概念,如bundle和frameworks。你最有可能在纯C中工作。你不会使用Cocoa进行驱动程序开发,因为那是一个面向应用程序的框架。

首先,C ++工作得很好,尽管Objective C并不是那么难学。如果您有Windows驱动程序的背景知识,那么您需要了解一些基本要素 - 内存管理至关重要,时间至关重要等等。

您可能正在使用IOKit。我建议从这里开始一个好的,一步一步的介绍让驱动程序工作。

内核扩展

有一些东西似乎没有像他们说的那样工作,我试图弄清楚是否真的不可能在一台机器上调试驱动程序,但它比大多数都好Apple文档。

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