【问题标题】:Device driver development设备驱动开发
【发布时间】:2011-04-30 08:32:50
【问题描述】:

Objective C 是否用于任何设备驱动程序的开发? 现在我是一名ios开发人员。有这种经验是否可以在任何其他领域工作

【问题讨论】:

  • 我不知道最后一句话是什么意思。你的意思是一个问题吗?或者作为您作为 iOS 开发人员工作的原因。
  • 这是一个问题....我在 c++ 和 c 方面有经验...但我得到了一份 ios 开发人员的新工作 ....所以现在正在学习 Objective C..我在想我的未来

标签: objective-c macos network-programming device-driver


【解决方案1】:

由于您已将问题标记为 ,我假设您的意思是 Mac OS X 的设备驱动程序。在这种情况下,它们是用 C++ 开发的并使用 I/O Kit。更多信息here 和here。

【讨论】:

    【解决方案2】:

    我来自内核级编程,现在从事 iphone 和 android 开发..我会根据我的经验告诉你,相反(应用程序编程到系统级。)就像攀登珠穆朗玛峰......没有什么可以比较的两个..

    99% 的系统级编码发生在 C 中,对于内核编程,使用最纯粹的 C 形式。在那里调试非常困难,应用程序编程中的分段错误是内核恐慌(唯一的解决方案是重新启动)内核编程..这不是必须重新启动,但在重新启动时我们会丢失整个信息(有关我们失败项目的崩溃信息),因此很难调试..当然内核编程和设备驱动程序开发更具挑战性..

    【讨论】:

    • 我知道 C 和 C++.... 现在正在学习 Objective C .. 我是 Objective C 和 Xcode 的初学者
    • “内核编程和设备驱动程序开发肯定更具挑战性”。它可能更具挑战性,但它并不需要您在应用程序开发级别所需的创造力。 DD 开发的挑战在于,我们拥有这些基于单片内核的操作系统,这些操作系统是在较早的计算时代设计的,在 DD 开发期间,您将与内核 API 等作斗争,而不是您自己的驱动程序逻辑
    • 我同意你的观点..你总是在与内核本身作斗争..在应用程序级别工作的人很难理解..你有更多机会被卡住了,更多的机会撞到你的头..而且最重要的是,当你被卡住时寻求帮助更加困难..
    【解决方案3】:

    设备驱动程序开发是一个非常具体的领域。如果您是一名应用程序开发人员,即使您知道一种支持驱动程序开发的编程语言,也不会只是简单地切换到驱动程序开发,因为它将包含不同的概念、API 等,您需要学习并获得良好的持有,因为当驱动程序(内核模式)崩溃时,它会导致整个系统崩溃。我不认为 Objective-C 用于驱动程序开发。该区域适用于 C 或在某些情况下适用于 C++。我已经进行了一些驱动程序开发,并且觉得应用程序开发比驱动程序开发更有趣,因为在驱动程序开发中,您将编写与硬件对话的代码,仅此而已,只需在硬件和操作系统之间来回传递数据,就像在应用程序开发中一样你可以做很多令人惊奇的事情,你的想象力是唯一的限制:)

    【讨论】:

    • 我知道 C 和 C++.... 现在正在学习 Objective C .. 我是 Objective C 和 Xcode 的初学者,我是 iphone 开发
    猜你喜欢
    • 1970-01-01
    • 2012-07-30
    • 1970-01-01
    • 2011-11-23
    • 1970-01-01
    • 2017-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多