寻求Linux内核开发相关函数、宏、数据类型的类man手册及Emacs方案
解决方案:Linux内核符号的命令行与Emacs便捷查询方法
命令行类man页查询方式
- 内核自带man页:Arch Linux下安装
linux-docs包,内核API的文档会被归类到man的第9节。直接通过以下命令查询目标符号:- 查看函数:
man 9 proc_create - 查看宏:
man 9 __init - 查看结构体:
man 9 proc_dir_entry
- 查看函数:
- kernel-doc工具:利用内核源码自带的注释提取工具,直接从头文件生成可读文档。例如查询
proc_fs.h中的相关内容:
也可以精准过滤目标符号:kernel-doc -man /usr/src/linux/include/linux/proc_fs.h | man -l -
注意需要先安装kernel-doc -man /usr/src/linux/include/linux/init.h | grep -A15 -B5 "__init" | man -l -linux-headers包获取内核头文件。
Emacs内集成方案
- 直接调用man页:使用Emacs内置的
man命令,按下M-x man,输入9 proc_create即可在Emacs缓冲区中查看内核man页,无需切换到终端。 - 内核符号补全与文档提示:从MELPA安装
company-kernel包,配置后在编写内核模块代码时,输入符号即可触发补全,同时显示对应的文档摘要,提升开发效率。 - 快速查看符号定义与注释:使用
ggtags配合global工具生成内核源码标签,按下M-x ggtags-find-tag-at-point可直接跳转到符号的定义处,查看源码中的注释说明。若需轻量化方式,也可使用etags生成标签文件后,通过M-x find-tag跳转。
补充提示
- 确保系统安装了
linux-docs、linux-headers和kernel-doc包,这些是获取内核文档的基础依赖。 - 内核源码中的注释本身就是最权威的文档,若man页信息不够详细,可通过上述Emacs的标签跳转功能直接查看源码注释。
内容的提问来源于stack exchange,提问作者user129393192
相关产品推荐
相关产品推荐

