怎么查找关于内核参数和函数的说明文档

Linux内核源代码释出时会包含有一些关于内核参数(如sysctl.conf中的参数)和函数的说明文档,在CentOS/RedHat系统中,kernel-doc软件包里面打包的就是这些文档(也可以从官网https://www.kernel.org/下载内核源码包,里面就会有这些文档)。

?

安装kernel-doc软件包:


[[email protected] ~]# yum install kernel-doc

安装好kernel-doc软件包后,可以使用下面的命令查看它将文档安装在哪里了。可以看到,文档在两个位置:


[[email protected] ~]# rpm -ql kernel-doc | awk -F "/" ‘{print "/"$2"/"$3"/"$4"/"$5}‘ | uniq

/usr/share/doc/kernel-doc-2.6.32

/usr/share/man/man9

?

1、 第一个位置的完整的路径是/usr/share/doc/kernel-doc-2.6.32/Documentation,里面包含的是关于内核参数等的txt说明文档,可以直接使用grep命令查找你想要了解的内核参数,比如,我想要了解/etc/sysctl.conf里面net.ipv4.ip_forward这个参数的含义,那么我可以执行:


[[email protected] ~]# cd /usr/share/doc/kernel-doc-2.6.32/Documentation

[[email protected] Documentation]# grep -ir --color ‘ip_forward‘ ./*

输出结果如下图。其中,networking/ip-sysctl.txt文件里面的就是关于net.ipv4.ip_forward这个参数的说明。

需注意的是,这些文件里面其实只是对内核参数的简要说明。对一些简单的内核参数来说,看这里面的说明是没有问题的;但对于复杂的内核参数来说,可能还需要你有更综合的知识才行。

?

2、 第二个位置/usr/share/man/man9里面是内核使用的函数的man说明文档,使用man命令可以查看它们的内容。比如,里面有一个syscall_get_arguments.9.gz文件,实际来说,syscall_get_arguments就是一个函数来的,文件里面就是关于这个函数的说明信息。要查看文件内容,需使用man命令:


[[email protected] ~]# man syscall_get_arguments

这有什么用呢?在一些涉及到内核函数的地方可能会派上用场。比如,查看Linux内核源代码时(当然,Linux内核源代码我看不懂,但我这只是举个例,对嘛),或者,在使用strace追踪程序调用内核函数的情况时(这就有可能用上了)。

原文地址:http://blog.51cto.com/techsnail/2137310

时间: 2024-11-23 13:23:02

怎么查找关于内核参数和函数的说明文档的相关文章

linux内核参数注释与优化

转自:http://yangrong.blog.51cto.com/6945369/1321594 目录 1.linux内核参数注释 2.两种修改内核参数方法 3.内核优化参数生产配置 参数解释由网络上收集整理,常用优化参数对比了网上多个实际应用进行表格化整理,使查看更直观. 学习linux也有不少时间了,每次优化linux内核参数时,都是在网上拷贝而使用,甚至别人没有列出来的参数就不管了,难道我就不需要了吗? 参考文章: linux内核TCP相关参数解释 http://os.chinaunix

Linux TCP/IP调优-Linux内核参数注释

固定文件的内核参数 下列文件所在目录: /proc/sys/net/ipv4/ 名称 默认值 建议值 描述 tcpsyn_retries 5 1 对于一个新建连接,内核要发送多少个SYN连接请求才决定放弃.不应该大于255,默认值是5,对应于180毫秒左右时间.(对于大负载而物理通信良好的网络来说,这个值偏高,可以修改为2.这个值仅仅是针对对外的连接,对进来的连接,是由tcp_retries1决定) tcp_synack_retries 5 1 对于远端的连接请求SYN,内核会发送SYN+ACK

技巧-Linux内核参数调整办法

技巧 -Linux内核参数调整办法 ulimit设置 ulimit -n 要调整为100000甚至更大. 命令行下执行 ulimit -n 100000即可修改.如果不能修改,需要设置 /etc/security/limits.conf,加入 * soft nofile 262140 * hard nofile 262140 root soft nofile 262140 root hard nofile 262140 * soft core unlimited * hard core unli

Linux内核源码分析--内核启动之(5)Image内核启动(rest_init函数)(Linux-3.0 ARMv7)【转】

原文地址:Linux内核源码分析--内核启动之(5)Image内核启动(rest_init函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.chinaunix.net/uid-25909619-id-4938395.html 前面粗略分析start_kernel函数,此函数中基本上是对内存管理和各子系统的数据结构初始化.在内核初始化函数start_kernel执行到最后,就是调用rest_init函数,这个函数的主要使命就是创建并启动内核线

Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7)【转】

原文地址:Linux内核源码分析--内核启动之(4)Image内核启动(setup_arch函数)(Linux-3.0 ARMv7) 作者:tekkamanninja 转自:http://blog.chinaunix.net/uid-25909619-id-4938393.html 在分析start_kernel函数的时候,其中有构架相关的初始化函数setup_arch. 此函数根据构架而异,对于ARM构架的详细分析如下: void __init setup_arch(char **cmdlin

[php-src]理解Php内核中的函数

内容均以php-5.6.14为例. 一. 函数结构 内核中定义一个php函数使用 PHP_FUNCTION 宏 包装,扩展也不例外,该宏在 main/php.h 第343行定义: 有着一系列类似以 PHP 命名的 Zend 宏包装器,它们是: /* PHP-named Zend macro wrappers */ /* 以PHP命名的Zend宏包装器 */ #define PHP_FN ZEND_FN #define PHP_MN ZEND_MN #define PHP_NAMED_FUNCTI

nginx防盗链和内核参数优化

防盗链:防止别人直接从你网站引用图片等链接,消耗了你的资源和网络流量.有几种解决方法:1,水印,品牌宣传,带宽,服务器足够.2,防火墙,直接控制,前提是知道ip来源.3,防盗链策略下面的方法直接给与404错误提示 location ~* ^.+\.(jpg | gif | png | swf | flv | wma | wmv | asf | mp3 | mmf | zip | rar)$ { if ($invalid_referer) { #retrun 302 http://www.tanh

内核参数优化之2-1 tcp/ip 标志位报文解析

以下内容纯属虚构,切勿轻易相信! 众所周知,tcp/ip三次握手和四次挥手,均由syn/ack/fin三个标志位报文决定,但是这三个标志位报文,并不是说在构建连接的时候只发送一次的,因为协议不知道网络状况. 故而就存在了以下参数,可以调节发送次数 net.ipv4.tcp_syn_retries 这个参数从字面上来看就是syn标志位报文的重试次数,什么时候发送syn标志位呢?三次握手中,请求端第一次构建连接的时候,默认是5次,但是对于一个处于网络状况好的请 求端,5次显然是多了,因此,我们来个2

IRQL和内核字符串处理函数

内核字符串处理函数和IRQL --by 张佩 系统中断级(IRQL) 借助于IRQL机制,系统实现了任务抢占功能.高中断级任务可以任意抢占低中断级任务的系统执行权,而低中断级任务必须等待所有高中断级任务都完成后,才能获取执行机会和相应系统资源.在单核系统中,系统中断级还被用做实现系统同步机制的手段,因为一颗核心的CPU在同一时刻,仅能运行一个线程,所以只要把当前正在使用Critical资源的线程IRQL提高到更高Level上,就可以避免其他线程和抢占自己的可能性. 系统功能被细分为许多系统模块,