将内核模块头导出到用户空间

发布于 2024-11-09 22:21:46 字数 166 浏览 2 评论 0原文

我正在编写一个Linux内核模块,需要将一些头文件导出到用户空间。

我想知道是否有任何标准方法使用内核包来完成所需的标头清理(例如“$(MAKE) -C $(KERNELDIR) M=$(PWD) headers_install”(如果存在))。

我应该手动处理标题吗? 有什么建议吗?

I am writing a Linux kernel module which need to export some header files to userspace.

I am wondering if there is any standard method which use Kernel package to do required sanitation of headers (For example something like "$(MAKE) -C $(KERNELDIR) M=$(PWD) headers_install" if exist).

Should i take care of headers manually?
Any suggestion?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

鹿童谣 2024-11-16 22:21:46

没有这样的开箱即用的功能,因为大多数需要类似功能的内核模块都附带一个额外的“devel”包,其中包含(清理后的)头文件,可能还有一个与模块通信的共享库。

至于清理头文件,我建议将头文件分成通用部分(您导出的)和内部部分(只有内核模块可以看到)。 typedef 是你的朋友。

There is no such functionality out of the box because most kernel modules which need something like that come with an extra "devel" package which contains the (cleaned) header files and probably a shared library to talk to the module.

As for cleaning your headers, I suggest to split the header files into a generic part (which you export) and an internal part (which only the kernel module can see). typedef is your friend.

好听的两个字的网名 2024-11-16 22:21:46

您可以通过将 'header-y=' 添加到 /include/uapi 下的 Kbuild 之一来完成此操作

You can do it by adding 'header-y=' to one of the Kbuild under /include/uapi

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文