kernel-extension

    4热度

    1回答

    我写了一个热插拔SCSI设备的驱动程序kext,基于Wagerlabs code(使用驱动程序 - 用户客户端 - 应用程序模型),并且一切正常。唯一剩下的问题是,驱动程序看起来并不总是被释放,特别是如果应用程序崩溃。例如,当我尝试卸载kext时,即使设备断开连接并关闭应用程序,仍然存在驱动程序和用户客户端的突出实例(驱动程序通常数量超过用户客户端)。 我已经登录驱动程序的功能,如free(),当

    2热度

    1回答

    我知道PackageMaker现在已被弃用。我们现在应该使用pkgbuild/productbuild。 但是,我似乎无法找到为kext创建安装程序的示例。我希望能够将该包构建为我的kext Xcode项目构建步骤的一部分。所以任何bash /脚本文件都会很棒。

    3热度

    1回答

    我正在为MacOSX(Windows已经运行)的虚拟USB总线驱动程序通过网络连接一个Linux机箱。它可以在10.6和10.7以下使用大容量存储设备和鼠标或键盘等HID设备。 但是由于剩下一个实例(保留计数在分离后不会降为零),因此在10.7(.5)下的HID设备 删除设备(拔出)或更简单的卸载kext失败。 我的10.6和10.7测试环境与MacBooksPro 8.2 i7完全相同。 有时过

    1热度

    2回答

    我的应用程序希望访问我插入的HID设备,但声称该设备不工作,因为它已被IOHIDDevice驱动程序声明。 为了防止我学到了,我应该为mac(OSX 10.8.2)创建并安装无代码kext驱动程序 ,以将我的设备从beeing加载到黑盒子。 我已经呆了两天了,到目前为止我还没有成功。 在我的测试用例,你可以找到从USB探测器 登录 我无代码内核扩展模块 从名为ioreg 输出,当我的设备连接 看来

    1热度

    1回答

    我希望在OS重新启动之间保存kext设置。由于我需要在kext被立即加载后的设置,我不能等待管理守护进程启动。这是一种从kext或其他方式来读/写kext plist文件的方法吗?

    1热度

    1回答

    我想在Mac OS上的kext和应用程序之间实现IPC。当我尝试将数据从应用程序传输到kext时,我遇到了一些问题。 在互联网上的一些例子需要更多的系统功能来实现Mac上的Mach IPC编程,例如设置Server(bootstrap_create_service)或获取Server端口(bootstrap_look_up)。但是我不能使用除kernel.framework之外的其他框架或系统标准

    2热度

    1回答

    我正在写一个套接字过滤器kext,我想忽略作为根作出的任何连接。 OS X Lion中之前,下面的代码工作得十分完美: static boolean_t is_root() { proc_t p = proc_self(); boolean_t isRoot = proc_suser(p); proc_rele(p); return isRoot; }

    0热度

    2回答

    我正在为OS X编写kext驱动程序,并希望使用库libpcap.dylib中的函数。 Libpcap.dylib位于OS X的/ usr/lib目录下,可以在内核空间使用吗?如何使用Xcode从kext中使用libpcap.dylib? 我设法编译 - (-lpcap apears的链接选项),但: 通过连接在"unexpected dylib"得到了一个警告。很明显,它以某种方式错位。 kex

    9热度

    1回答

    我正在为音频设备驱动程序(它是软件,但模拟硬件设备)编写OSX内核扩展。 在开发过程中,完全卸载现有的旧版本然后从头开始构建和安装新版本会很方便。但是,如果没有系统重启,偶尔会出现这种情况。 程序本身未运行,源文件已从/System/Library/Extensions/目录中删除。 但kextstat揭示了一个实例: $ kextstat | grep 'com.foo.driver.bar'

    3热度

    1回答

    我正在使用IOKit/kext/KextManager.h的一些函数以编程方式加载内核扩展,并遇到新的错误值。例如: OSReturn osr = KextManagerLoadKextWithIdentifier(...); // => -603947004 我怎么能翻译此值以人类可读的定义之一libkern/OSReturn.h发现了什么?