文档章节

创建Linux内核函数的Man手册

wuqingyi
 wuqingyi
发布于 2017/07/07 22:20
字数 459
阅读 31
收藏 0
点赞 0
评论 0

【前言】
    编写驱动程序的时候,一般情况下使用的都不是 C标准库的函数,而是 Linux内核中的函数。所以即使用 man命令 也找不到很多函数的帮助信息,这很不利于 Linux内核的学习。
    好在 Linux内核虽然没有直接提供手册,却提供了创建手册的工具。我们 可以手动生成 Linux内核的 Man手册

【创建步骤】
    1、下载一个稳定版本的内核,例如:linux-4.4.8。
        一般情况下用 Linux系统自带的源码不行,建议到官方网站下载最新版本:http://kernel.org/

    2、在顶层目录下执行 make mandocs 创建 Man手册。 这一步很费时间

    3、再执行 sudo make installmandocs 进行安装。

    4、现在可以使用 man命令 查看内核函数了。

【注意事项】
    1、如果 make mandocs 命令执行失败,可能是没有安装 Sphinx和xmlto 导致的,可以使用命令sudo easy_install Sphinx和 sudo apt-get install xmlto 进行安装。

    2、 可以将创建好的 Man手册文档 复制到别的设备上进行安装,从而避免了非常费时的创建过程
        创建好的 Man手册 存放于 /linux-4.4.8/Documentation/Docbook/man/ 目录下,将该目录中各子目录及其包含的 *.9.gz 文件复制到需要安装手册的设备的相同目录下(如果没有就创建一个)。
        然后以 root权限运行以下命令进行手册的安装:
        mkdir -p /usr/local/man/man9
        install Docbook/man/*.9.gz /usr/local/man/man9

        命令执行成功后就可以在目标设备上同样使用 Man命令 查看内核函数的帮助文档了。

【参考文献】
    [1] 博客 雪夜流星
    [2] 博客 star_shining的博客

本文转载自:http://blog.csdn.net/qidi_huang/article/details/51277935

共有 人打赏支持
wuqingyi
粉丝 0
博文 27
码字总数 19055
作品 0
厦门
程序员
Linux下man page 详解

经常用man查各种函数和指令,也经常遇到明明是要找函数结果显示了指令或者关键字,很是郁闷,索性对man研究了一番。 比如我需要看看exit函数怎么使用,以及用什么头文件 是不是想着直接:,看...

qq_38646470 ⋅ 04/30 ⋅ 0

Linux C/C++编程手册查阅方法

Linux Programmer's Manual & User Commands https://www.kernel.org/doc/man-pages/ 搜索框输入epoll调用搜索引擎查找 在线搜索查看man手册(比如查epoll),可以直接收藏,方便下次点击搜索: h...

eechen ⋅ 2014/03/08 ⋅ 3

Linux环境下纯Python无第三方库读写Netlink

原文地址:http://shajunxing.tpddns.cn:8888/web/blog/2018-03-28-Linux环境下纯Python无第三方库读写Netlink/index.html 基础知识 Netlink使用套接字的方式提供了应用程序和内核之间信息交...

shajunxing ⋅ 03/30 ⋅ 0

Linux系统基础知识-嵌入式迅为4412开发板学习笔记

1. 什么是Linux系统编程 详情了解:http://topeetboard.com 更多了解:https://arm-board.taobao.com Linux系统编程分为三个部分:系统调用、C库和C编译器。 系统调用系统编程的基础是系统调...

qq58c201976f8b2 ⋅ 2017/03/10 ⋅ 0

嵌入式4412开发板学习知识-Linux系统基础知识

本文转自迅为iTOP-4412开发板实战书籍:http://www.topeetboard.com 1. 什么是Linux系统编程 Linux系统编程分为三个部分:系统调用、C库和C编译器。 系统调用系统编程的基础是系统调用,也结...

歌之王子殿下 ⋅ 2016/07/05 ⋅ 1

Linux-进程间通信(二、消息队列)

LINUX进程间通信(一、命名管道与匿名管道) 消息队列概述 消息队列是消息的链接表,存放在内核中并由消息队列标识符表示。主要涉及到msgget(),msgsnd(),msgrcv(),msgctl()四个函数,在具...

sssssuuuuu666 ⋅ 2017/12/22 ⋅ 0

将内核API编译为man手册

一般我们都知道用man手册去查看libc库的API的用法,例如man strcpy、man stat ...其实内核里的一些API也可以编译到man手册中, 这样对于学习内核的,也无疑是一种很好的资料。 ------------...

ustbgaofan ⋅ 2014/09/09 ⋅ 2

linux的运维管理UNIT3

man命令 man------查看命令的帮助 man:即 manual,操作说明 例如: man man ##查看man命令的帮助## man passwd ##查看passwd命令的帮助## man命令的参数 -a ##在所有的man帮助手册中搜索## ...

季凉末一 ⋅ 2017/02/27 ⋅ 0

用brk实现sbrk,关于brk的返回值

首先我们已经知道linux下,malloc最后调用的是sbrk函数,而sbrk是对brk的简单封装。 用sbrk模仿malloc很简单,sbrk(0)得到当前breakpoint,再调用sbrk(size)即可。(PS:breakpoint表示堆结束地...

不写可以么 ⋅ 2013/07/25 ⋅ 0

Hey 老司机,知道eventfd吗?

最近在学习Linux原生支持的异步IO机制(libaio)时又接触到了一个新伙伴 --- "eventfd", 不由得再次感叹写内核的那帮哥们真的是这个世界上最富有创造力和想象力的一群人了。 eventfd()系统调...

nodouble ⋅ 2016/04/25 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Spring Cloud构建微服务架构—创建“服务注册中心”

创建一个基础的Spring Boot工程,命名为eureka-server,并在pom.xml中引入需要的依赖内容: <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-par......

itcloud ⋅ 11分钟前 ⋅ 0

拖动

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>event</title> <style> #box { width: 100px; height: 100px; background-color: aquamarine; position: absolute; } </style......

fyliujj ⋅ 14分钟前 ⋅ 0

es6 polyfill array

polyfill之javascript函数的兼容写法——Array篇 1. Array.isArray(obj) if (!Array.isArray) { Array.isArray = function(arg) { return Object.prototype.toString.call(arg) === '[objec......

球球 ⋅ 16分钟前 ⋅ 0

kibana启动异常

检查一下:kibana.yml 每一对key:value中,冒号之后应有空格。

增删改查1 ⋅ 18分钟前 ⋅ 0

js修改img的src属性刷新图片时的图片缓存问题

问题:上传一张图片,通过js更新src属性刷新图片使其即时显示时, 当img的src当前的url与上次地址无变化时(只更改图片,名称不变,不同图片名称相同)图片不变化(仍显示原来的图片) 但通过...

HaierBrother ⋅ 18分钟前 ⋅ 0

Mysql

1.Jdbc Url 设置allowMultiQueries为true和false mysql的批量更新是要我们主动去设置的, 就是在数据库的连接url上设置一下,加上* &allowMultiQueries=true *即可。 参数名称 参数说明 缺省...

瑟青豆 ⋅ 21分钟前 ⋅ 0

mysql导出导入表结构与数据

当我们需要进行数据迁移时,mysql自带的mysqldump会是最好的方式。 1.导出某张表的结构和数据 首先,我们应当使用服务器,打开终端,连接到所需要导出的表所在的服务器上。执行命令: mysqld...

hengbao5 ⋅ 21分钟前 ⋅ 0

世界杯也走向“比拼”大数据的时代

《日本经济新闻》6月19日报道称,俄罗斯足球世界杯已于6月14日揭开战幕。作为第21次举办的足球世界杯,如何活用大数据有可能成为决定各支球队胜负的重要因素。从对阵球队的分析到战术建议,还...

加米谷大数据 ⋅ 22分钟前 ⋅ 0

金额转为千分制,金额转中文大写

金额转关为大写 js /** 数字金额大写转换(可以处理整数,小数,负数) */ function digitUppercase(n){ if(!n) reutrn "" let fraction = ['角', '分']; let digit = ['零', '壹', '贰', '叁', ...

YXMBetter ⋅ 24分钟前 ⋅ 0

开发利器JRebel部署SpringBoot项目

不要以为年纪轻轻就跌倒了人生谷底,未来还有更大的下降空间等着你。 idea下载和安装JRebel 激活JRebel 访问https://my.jrebel.com/ 使用facebook或twitter登录 勾选 Build project automati...

郑龙飞 ⋅ 30分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部