C 如何与自制的OSX内核扩展交互?

C 如何与自制的OSX内核扩展交互?,c,macos,kernel,communication,inter-process-communicat,C,Macos,Kernel,Communication,Inter Process Communicat,如何与自制的OSX内核扩展交互 我找到了以下关于创建扩展的教程: 这很好地工作,但我找不到一种方法如何发送命令到我的扩展 如果有人能给我举个例子就好了:) 甚至可以举一个简单的例子:) 我为什么要问 我知道几乎所有东西都在用户空间中工作。夏天快到了,屋檐下的房间温度越来越高,看着我的MacBook Air电脑慢慢沸腾,我真的很伤心。但是我偶然发现了这个github.com/nanoant/DisableTurboBoost.kext。它似乎起作用了。但除了手动加载和卸载kext之外,没有其他方法

如何与自制的OSX内核扩展交互

我找到了以下关于创建扩展的教程: 这很好地工作,但我找不到一种方法如何发送命令到我的扩展

如果有人能给我举个例子就好了:)

甚至可以举一个简单的例子:)

我为什么要问

我知道几乎所有东西都在用户空间中工作。夏天快到了,屋檐下的房间温度越来越高,看着我的MacBook Air电脑慢慢沸腾,我真的很伤心。但是我偶然发现了这个github.com/nanoant/DisableTurboBoost.kext。它似乎起作用了。但除了手动加载和卸载kext之外,没有其他方法可以根据需要启用或禁用。我真的很想有一个小应用程序发送我的扩展命令设置或取消涡轮增压位

在对
http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf
我发现有很多有趣的函数可以使用。但是我不知道如何从我的分机中收集信息。。。你能给我举个例子吗?还是一本有用的书


由于只有kext可以使用内核框架,我没有其他选择直接写入CPU寄存器。。。还是我??你能给我举个例子吗?还是一本有用的书?

通常,用户很少(有意地)与内核模块进行交互

考虑一般的内核模块,如LAN驱动程序、磁盘驱动程序、文件系统驱动程序等。实际上,用户一直与这些内核扩展交互;但他们不知道

这是一个与“用户空间”截然不同的环境。一般来说,没有标准数据、标准数据和标准数据流;在这里,您可以从键盘向内核扩展输入命令,并在屏幕上查看结果

内核扩展可以使用多种方式与用户交互(在用户空间中)。这些措施包括:

  • 系统调用
  • ioctl
  • 虚拟文件系统
  • 共享内存
  • TCP套接字或连接
  • 文件系统事件
它归结为:内核扩展的目的是与内核交互,而不是直接与用户交互


内核扩展与内核交互的方式有很多种;但是对于内核扩展来说,与用户直接交互是一个陌生的概念。

通常,用户很少(有意地)与内核模块交互

考虑一般的内核模块,如LAN驱动程序、磁盘驱动程序、文件系统驱动程序等。实际上,用户一直与这些内核扩展交互;但他们不知道

这是一个与“用户空间”截然不同的环境。一般来说,没有标准数据、标准数据和标准数据流;在这里,您可以从键盘向内核扩展输入命令,并在屏幕上查看结果

内核扩展可以使用多种方式与用户交互(在用户空间中)。这些措施包括:

  • 系统调用
  • ioctl
  • 虚拟文件系统
  • 共享内存
  • TCP套接字或连接
  • 文件系统事件
它归结为:内核扩展的目的是与内核交互,而不是直接与用户交互


内核扩展与内核交互的方式有很多种;但是,对于内核扩展来说,与用户直接交互是一个陌生的概念。

您打算如何处理内核扩展?我在原始帖子中添加了我想要的内容:)这本书包含了您需要了解的所有内容:这也是一个很好的附带内容:有实际操作的示例吗?或者一些在线阅读的东西?你想用内核扩展做什么?我在原始帖子中添加了我想要的:)这本书有你需要知道的一切:这也是一个很好的附属品:有实际的例子吗?或者在线阅读?我知道几乎所有东西都在用户空间中工作。夏天快到了,屋檐下的房间温度越来越高,看着我的MacBook Air电脑慢慢沸腾,我真的很伤心。但后来我偶然发现了这一点。它似乎起作用了。但除了手动加载和卸载kext之外,没有其他方法可以根据需要启用或禁用。我真的很想有一个小应用程序来发送我的扩展命令,以设置或取消涡轮增压位。在爬网后,我发现了很多有趣的功能使用。但是我不知道如何从我的分机中收集信息。。。你能给我举个例子吗?或者是一本有用的书?因为只有kext可以使用内核框架,所以我没有其他选择直接写入CPU寄存器。。。还是我??你能给我举个例子吗?还是一本有用的书?我知道几乎所有的东西都在用户空间中工作。夏天快到了,屋檐下的房间温度越来越高,看着我的MacBook Air电脑慢慢沸腾,我真的很伤心。但后来我偶然发现了这一点。它似乎起作用了。但除了手动加载和卸载kext之外,没有其他方法可以根据需要启用或禁用。我真的很想有一个小应用程序来发送我的扩展命令,以设置或取消涡轮增压位。在爬网后,我发现了很多有趣的功能使用。但是我不知道如何从我的分机中收集信息。。。你能给我举个例子吗?或者是一本有用的书?因为只有kext可以使用内核框架,所以我没有其他选择直接写入CPU寄存器。。。还是我??你能给我举个例子吗?还是一本有用的书?