当前位置: 技术问答>linux和unix
请教:如何取得Linux内核版本信息!!!
来源: 互联网 发布时间:2017-04-10
本文导语: 搜了好久也没有搜到!!! 真心请教: 如何通过函数调用(不是通过命令行)获得Linux内核版本信息!!! | 通过strace我们留意到有一个系统调用叫uname。可以看一下它的用法 man 2 uname。 OK,很简单...
搜了好久也没有搜到!!!
真心请教: 如何通过函数调用(不是通过命令行)获得Linux内核版本信息!!!
真心请教: 如何通过函数调用(不是通过命令行)获得Linux内核版本信息!!!
|
通过strace我们留意到有一个系统调用叫uname。可以看一下它的用法 man 2 uname。
OK,很简单,代码如下:
#include
#include
void prt_knl_ver(void)
{
struct utsname u_name;
uname(&u_name);
printf("System: %sn"
"Release: %sn"
"Version: %sn"
"Machine: %sn",
u_name.sysname, u_name.release,
u_name.version, u_name.machine);
}
int main(void)
{
prt_knl_ver();
return 0;
}
$ ./a.out
System: Linux
Release: 3.2.0-38-generic
Version: #61-Ubuntu SMP Tue Feb 19 12:20:02 UTC 2013
Machine: i686
|
latelee@latelee:~$ cat /proc/version
Linux version 2.6.35-22-generic (buildd@rothera) (gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu4) ) #33-Ubuntu SMP Sun Sep 19 20:34:50 UTC 2010
读取文件即可。
缺点:版本信息较多。
Linux version 2.6.35-22-generic (buildd@rothera) (gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu4) ) #33-Ubuntu SMP Sun Sep 19 20:34:50 UTC 2010
读取文件即可。
缺点:版本信息较多。