kernel-extension

    0热度

    1回答

    我正在尝试创建一个新的Dictionary并将其注入到IORegistry中。我设法注入简单的字符串或数据值,但多数民众赞成在它。 我的方法是通过修改的IOPCIFamily.kext,它不是为了特定的目的,而是为了学习。 我1个值的代码是这样的 if (product == id){ setProperty("test", "test") } 和另一种方法 if (product == id

    0热度

    2回答

    我想使用内核控件将内核扩展中的消息发送到用户态程序中。致电ctl_enqueuedata时,我遇到了EINVAL错误。 我已经成立了一个内核控制,我想通过它使用ctl_enqueuedata发送消息。传递给ctl_register,其中,the documents建议之前,我设置 ep_ctl.ctl_flags = 0 ,应导致ctl_unit被自动设置。 引述kern_control.h:

    0热度

    1回答

    我将不胜感激任何帮助,并承认我现在正式在我的头上。 我迫切需要一个无代码kext,以防止USB设备被邪恶的Apple通用驱动程序占用。我已经阅读了所有可以找到的问题和任何建议,甚至通过苹果文档进行了检查,如果我知道自己在做什么,这些文档将非常棒,但是我不知道。 我把我的kext文件放在/ system/library/extensions,chown,chmod,然后是kextcache -e。

    2热度

    1回答

    观察到有vn_xxx apis对文件执行操作,例如vn_rdwr(...)。从网络搜索看来,不推荐使用vn_rdwr(...)。大约在同一 几个疑问: 这是vn_xxx对面的Mac OS X版本的API不兼容? 使用它不安全吗?有什么我可以参考的例子,看看如何使用vn_rdwr? 除了将文件I/O延迟到守护进程之外,还有其他选择吗? 如果有人能提供意见和建议,那将会很棒!

    0热度

    1回答

    我正在AIX 6.1上使用内核扩展构建一个示例程序。 其实,我做了一个扩展文件,但我不知道如何导入它。 通常使用IBM C编译器的人可以使用“-bI:test.esp”导入它。 当我使用这个选项来测试程序。我得到了以下错误。 bash# gcc -o test_prog -bI:import test_prog.c test_prog.c: In function 'main': gcc: u

    2热度

    1回答

    我正在为Mac编写一个定制的大容量存储内核扩展,从IOSCSIPeripheralDeviceType05逻辑单元驱动程序继承而来。我已经编译了一个.kext文件,它通过了kextutil -n -t ...,但我无法加载它进行测试。 我在的.plist非零IOKitDebug场和GetDeviceConfiguration看起来是这样的: IOReturn com_MyCompany_driv

    0热度

    2回答

    我试图调试一个设备驱动程序,它使用运行gdb的远程机器(尝试遵循指令here)在Mac上崩溃内核。两台机器都通过以太网连接到同一网络(甚至是同一台路由器,都可以访问网络)。我也对目标设置了nvram boot-args="debug=0x144"并重新启动。 然后像往常一样在目标上加载内核扩展。在主机上我启动gdb这样的: $ gdb -arch i386 /Volumes/KernelDebug

    0热度

    1回答

    我正在为IOSCSIPeripheralDeviceType00子类别编写一个SCSI传递设备驱动程序,用于USB连接的大容量存储设备。设备拦截固件中某些特定于供应商的SCSI命令并作出适当回复,以及响应“正常”SCSI命令。 我已经在this Wagerlabs code的风格实施了很多驱动器。 init()和probe()方法基本上是空的,只是做一些日志记录和调用重复的超类功能。这些似乎工作正

    1热度

    1回答

    当试图打开驾驶员服务(以每SimpleUserClient example用户客户端)我写这封信,IOServiceOpen返回0x10000003(MACH_SEND_INVALID_REQUEST): mach_port_t machPort = mach_task_self(); kern_return_t kernResult; io_service_t service; clas

    0热度

    1回答

    在文件修改或文件复制期间,观察到FWRITE或KAUTH_FILEOP_CLOSE_MODIFIED在操作KAUTH_FILEOP_CLOSE中未被一致设置。 我的用例是 - 我想弄清楚被关闭的文件是修改文件还是新创建的文件。我想忽略未修改的文件。 根据文档,当文件操作是KAUTH_FILEOP_CLOSE时,我正在检查KAUTH_FILEOP_CLOSE_MODIFIED标志。大多数情况下,我观