内核版本号

来源:互联网 发布:js冒泡排序算法 编辑:程序博客网 时间:2024/06/07 15:52

上层界面“Setting” -> “Device information”会显示 Kernel version:

怎么来的呢?


cat /proc/version

Linux version 2.6.35.7-g02ddeae-dirty (hostname@rdjdz110043) (gcc version 4.4.3 (GCC) ) #2 PREEMPT Fri Oct 19 14:03:35 CST 2012


static int version_proc_show(struct seq_file *m, void *v) {    seq_printf(m, linux_proc_banner,        utsname()->sysname,        utsname()->release,        utsname()->version);    return 0;}const char linux_proc_banner[] =    "%s version %s"    " (" LINUX_COMPILE_BY "@" LINUX_COMPILE_HOST ")"    " (" LINUX_COMPILER ") %s\n"; 

        proc中的version信息, 是在fs/proc/version.c的version_proc_show()显示的linux_proc_banner[], 这个数组定义在kernel/init/version.c里面有UTS_RELEASE,UTS_RELEASE之外,还包含UTS_MACHINE,UTS_VERSION等,

这个生成的文件是在include/generated/compile.h,它是由init/Makefile调用script/mkcompile_h来生成的。

mkcompile_h中对上述几个宏进行赋值。

编译后会自动生成include/generated/compile.h  utsrelease.h



原创粉丝点击