Linux下获取内核版本号的函数q
2016-12-09 16:20
330 查看
man 2 uname
NAME
uname - get name and information about current kernel
SYNOPSIS
#include <sys/utsname.h>
int uname(struct utsname *buf);
使用方法:
struct utsname kernel_info;
int ret = uname(&kernel_info);
if (ret == 0) {
printf("release--%s\n", kernel_info.release);
printf("version--%s\n", kernel_info.version);
printf("machine--%s\n", kernel_info.machine);
char kversion[100] = { 0 };
strncpy(kversion, kernel_info.release, strlen(kernel_info.release));
} else {
printf("get kernel version fail: %s\n", strerror(errno));
}
utsname结构体的定义为
struct utsname {
char sysname[]; /* Operating system name (e.g., "Linux") */
char nodename[]; /* Name within "some implementation-defined
network" */
char release[]; /* Operating system release (e.g., "2.6.28") */
char version[]; /* Operating system version */
char machine[]; /* Hardware identifier */
#ifdef _GNU_SOURCE
char domainname[]; /* NIS or YP domain name */
#endif
};
在Andrid手机上输出信息为
release--4.4.8-perf+
version--#1 SMP PREEMPT Wed Nov 16 22:42:06 CST 2016
machine--aarch64
NAME
uname - get name and information about current kernel
SYNOPSIS
#include <sys/utsname.h>
int uname(struct utsname *buf);
使用方法:
struct utsname kernel_info;
int ret = uname(&kernel_info);
if (ret == 0) {
printf("release--%s\n", kernel_info.release);
printf("version--%s\n", kernel_info.version);
printf("machine--%s\n", kernel_info.machine);
char kversion[100] = { 0 };
strncpy(kversion, kernel_info.release, strlen(kernel_info.release));
} else {
printf("get kernel version fail: %s\n", strerror(errno));
}
utsname结构体的定义为
struct utsname {
char sysname[]; /* Operating system name (e.g., "Linux") */
char nodename[]; /* Name within "some implementation-defined
network" */
char release[]; /* Operating system release (e.g., "2.6.28") */
char version[]; /* Operating system version */
char machine[]; /* Hardware identifier */
#ifdef _GNU_SOURCE
char domainname[]; /* NIS or YP domain name */
#endif
};
在Andrid手机上输出信息为
release--4.4.8-perf+
version--#1 SMP PREEMPT Wed Nov 16 22:42:06 CST 2016
machine--aarch64
相关文章推荐
- Android版本与Linux内核的关系及代码获取
- Linux内核监控模块-2-系统调用表地址的获取(Linux内核版本3.13)
- 远程批量获取Linux和Windos操作系统版本(内核)
- Linux 内核、系统 版本信息 获取
- linux 的学习(1)——获取所需版本内核代码
- linux中查询cpu型号、内核版本
- GIT-Linux 内核开发的版本控制工具
- 查询Linux内核版本命令
- 查看linux系统版本,内核,CPU,MEM,位数的相关命令
- 察看linux 内核版本
- 如何升级linux内核到更新的版本
- Linux 2.6版内核中通过模块获取sys_call_table地址的方法
- Linux2.6内核epoll介绍(0.1版本) (转)
- 编译了下linux的版本为2.6.18的内核——今天的进展
- 获取三大主流Linux最新版本安装文件
- 【Linux】查看系统内核版本
- Linux2.6版本内核下驱动程序移植参考
- 解析Linux内核获取当前进程指针的方法
- Linux 内核的版本历史
- 查看Linux内核、CPU、内存及各组件版本的命令和方法