一般我们都知道用man手册去查看libc库的API的用法,例如man strcpy、man stat ...其实内核里的一些API也可以编译到man手册中,
这样对于学习内核的,也无疑是一种很好的资料。
----------------------------------------------------------------------------------
1,编译内核API到man手册。下载一个内核版本,然后在顶层目录执行如下
命令:make installmandocs 执行该命令,人家会提示你缺少一个依赖xmlto,
接下来就安装依赖,ubuntu下面:sudo apt-get install xmlto 把依赖安
装好了然后再次执行上次的命令。make installmandocs。
----------------------------------------------------------------------------------
2,上面的命令执行完后,将会把一些内核API的信息安装到 /usr/local
/man/man9下面。那目录下就有内核API的查阅信息。内核的哪些函数可
以查得到,可以先到那个目录下去看。----------------------------------------------------------------------------------
3,实例:(man copy_to_user)
- COPY_TO_USER(9) Memory Management in Linux COPY_TO_USER(9)
- NAME
- copy_to_user - Copy a block of data into user space.
- SYNOPSIS
- unsigned long copy_to_user(void __user * to, const void * from, unsigned long n);
- ARGUMENTS
- to
- Destination address, in user space.
- from
- Source address, in kernel space.
- n
- Number of bytes to copy.
- CONTEXT
- User context only. This function may sleep.
- DESCRIPTION
- Copy data from kernel space to user space.
- Returns number of bytes that could not be copied. On success, this will be zero.
- COPYRIGHT
- Kernel Hackers Manual 2.6. August 2012 COPY_TO_USER(9)
---------------------------------------------------------------------------------------
4,个人感觉。
缺点:1,显示的API信息比较“简陋”,没有像libc的解释那么详细。
2,有些内核API查不到,还需去查源码。
优点:1,很权威。我觉得这些东西很可能是这些函数的作者编写的解释。
2,相对于看源码,这还是方便点。----------------------------------------------------------------------------------------
阅读(673) | 评论(0) | 转发(0) |