📅  最后修改于: 2023-12-03 15:02:44.562000             🧑  作者: Mango
在 Linux 系统中,想要了解当前内存使用情况,可以使用 free
命令和 top
命令。下面分别介绍这两个命令的使用方法。
free
命令用于显示系统中空闲和已用的物理内存、交换内存以及缓冲区内存的情况。可以使用下面的命令来显示当前内存使用情况:
free -h
输出结果如下:
total used free shared buffers cached
Mem: 7.8G 3.2G 4.6G 949M 206M 1.9G
-/+ buffers/cache: 1.1G 6.7G
Swap: 0B 0B 0B
上面的输出结果中,第一行显示了系统中所有物理内存和交换内存的总量。第二行中,used
列显示了已用内存的总量,free
列显示了空闲内存的总量,buffers
列显示了缓冲区占用的总量,cached
列显示了已缓存的页面数据和文件系统信息使用的总量。
使用 -h
参数可以让 free
命令输出更加易读的格式。
top
命令用于实时显示系统中进程的状态和资源占用情况,同时也可以用来查看当前系统的内存使用情况。可以使用下面的命令来启动 top
命令:
top
输出结果如下:
top - 18:23:37 up 85 days, 22:03, 1 user, load average: 0.00, 0.00, 0.00
Tasks: 78 total, 2 running, 76 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 8169388 total, 4808756 free, 2220268 used, 1148364 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 5081432 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
783 root 20 0 0 0 0 S 0.3 0.0 210:43.24 jbd2/sda4-8
1 root 20 0 168832 11612 8408 S 0.0 0.1 9:40.70 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.16 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 52:35.06 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 1:00.10 kworker/0:0H
6 root 80 0 0 0 0 S 0.0 0.0 6:03.70 kworker/u2:0
7 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/u2:0H
在 top
的输出结果中,第一行显示了当前的系统时间、运行时间和平均负载情况。第四行显示了系统的内存使用情况,包括内存总量、空闲内存量、已用内存量和缓冲区/缓存量。其中,buff/cache
列表示缓冲区和缓存的总量之和。
此外,top
还会实时显示系统中运行的进程的详细情况,包括进程 ID、用户、占用 CPU 的百分比、占用内存的百分比等。
本文介绍了在 Linux 系统中如何使用 free
命令和 top
命令来了解当前的内存使用情况。free
命令主要用于查看系统中各种内存的使用情况,而 top
命令则可以实时查看系统的内存使用情况和进程状态等信息。熟练掌握这两个命令的使用方法,有助于程序员更好地管理系统资源,提高程序的运行效率。