开发者

Read linux kernel version using C?

I am using Ubuntu and I want to read the version of its kernel. I found a file named version in /开发者_如何学Goproc/ that records the version of the current kernel.

If I dont want to read file, is there any other way, like built-in function in C, that I can read the version in C?

Thanks


You can use the uname() system call.


Check the uname function. It gives you a lot of information without the need to parse output of some linux executables.


You might want to try using the uname function.


This should do:

system("uname -r");

EDIT: type man uname in a terminal to get the list of options you can use with uname


Or you can read /proc/version, but this is not as good as calling uname(2) directly. uname(2) is more natural to C.


Look at this article for the shell based way of getting kernel information. You can suitably run all of this using the system() call. But I am assuming that wouldn't be enough in your case. You'd need someway to parse the shell output. Hence make use of popen() call.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜