从源 .c文件1 直接解析内容(另请参见this):
为了提供Linux内核中的函数和数据结构的嵌入式,“ C”友好,易于维护但一致且可提取的文档,Linux内核采用了一致的样式来记录函数及其参数,结构及其变量。成员。
该文档的格式称为内核文档格式。它记录在此Documentation / kernel-doc-nano-HOWTO.txt文件中。
此样式使用一些简单约定将文档嵌入源文件中。脚本/内核文档perl脚本,文档/文档簿中的某些SGML模板以及其他工具都了解这些约定,并用于将嵌入式文档提取到各种文档中。[...]
开头的注释标记“ / **”保留给内核文档注释。内核文档脚本将只考虑标记为注释的注释,并且标记为注释的任何注释都必须采用内核文档格式。
这意味着只能以这种方式提取此类格式化的注释,并且您可以利用该流程使用的Perl脚本:kernel-doc
make
kernel-doc [ -docbook | -html | -html5 | -text | -man | -list ]
[ -no-doc-sections ]
[ -function funcname [ -function funcname ...] ]
c file(s)s > outputfile
因此,您不仅限于mandocs 目标:
安装后,“ make psdocs”,“ make pdfdocs”,“ make htmldocs”或“ make mandocs”将以请求的格式呈现文档。
内核存储库/源中也有特定于驱动程序的文本文件。通常,可以下载其Linux手册页项目(man1至man8)。最后,kernel.org还维护一些输出文档。
1.内核不是使用这种技术生成联机帮助页的唯一情况。GNU coreutils就是这样一种情况。它的大多数联机帮助页都是使用实用工具源文件(1 2)的使用功能中的内容输出生成的。command --help