最近经常需要分析Linux系统的一些系统信息,这里整理一些常用的:
1. /proc目录介绍
linux并没有类似windows的任务管理器,linux将系统中的任务信息都放在/proc文件夹下,所以我们可以通过查看/proc文件夹下的内容获取系统的信息。在linux的/proc目录下,通过ls 命令查看文件夹内容:

/proc文件夹内容如下:
| 数字* |
每一个数字都代表一个进程号(PID) ,每一个进程都对应着一个目录, 记录着进程的所有信息 |
| self |
该文件是一个软链接,指向了当前进程的目 录,通过访问/proc/self/目录来获取当前 进程的信息,就不用每次都获取pid |
| thread-self |
该文件也是一个软链接,指向了当前线程 ,访问该文件,等价于访问“当前进程 pid/task/当前线程tid”的内容。。 一个进程,可以包含多个线程, 但至少需要一个进程, 这些线程共同支撑进程的运行。 |
| version |
记录了当前运行的内核版本 ,通常可以使用“uname –r”命令查看 |
| cpuinfo | 记录系统中CPU的提供商和相关配置信息 |
| modules | 记录了目前系统加载的模块信息 |
| meminfo |
记录系统中内存的使用情况 ,free命令会访问该文件, 来获取系统内存的空闲和已使用的数量 |
| filesystems |
记录内核支持的文件系统类型 ,通常mount一个设备时, 如果没有指定文件系统并且它无法确定 文件系统类型时,mount会尝试包含在该文件 中的文件系统,除了那些标有“nodev”的 文件系统 |
查看CPU:

查看内核版本
使用命令 cat /proc/version 查看内核版本信息

另外,也可以通过 uname -a 命令查看内核版本:

使用命令 cat /proc/meminfo 查看内存信息

在实际应用中,我们是通过 free 命令读取内存信息:

使用命令 cat /proc/partitions 查看flash存储器容量信息

以mmcb开头的都是eMMC的数据块,那么我的eMMC的容量就是:
(7634944 + 512000 + 7020544 + 512 + 4096 + 4096) (block)
= 15176192 * 512 (byte)
= 5176192*512/1024/1024/1024 (GByte)
= 7.2 GByte
我的eMMC标称值为8G
本文主要介绍了如何在Linux系统中获取系统信息,包括通过/proc目录了解系统状态,使用cat /proc/version查看内核版本,用uname -a命令辅助,通过cat /proc/meminfo获取内存详情,以及利用cat /proc/partitions来分析存储器容量。
85

被折叠的 条评论
为什么被折叠?



