为什么操作系统占用了这么多的 RAM?

为什么操作系统占用了这么多的 RAM?

我执行了该free -m命令并得到了以下输出:

             total       used       free     shared    buffers     cached
Mem:          7842       2443       5398        205        167       1631
-/+ buffers/cache:        645       7197
Swap:         8048          0       8048

它说我目前正在使用 2443 mb 的 RAM。

之后我执行了以下命令,列出了使用最多内存的进程:

ps aux --sort=-%mem | awk 'NR<=10{print $0}'

并得到以下输出:

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      1346  3.6  2.0 623124 162464 tty7    Ssl+ 22:46   0:17 /usr/lib/xorg/Xorg -core :0 -seat seat0 -auth /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
ionut     2810  2.8  1.2 1005224 98508 ?       Ssl  22:46   0:13 compiz
ionut     3232  0.0  0.6 879364 50680 ?        Sl   22:46   0:00 /usr/lib/evolution/evolution-calendar-factory
mysql     6267  2.6  0.6 550068 48648 ?        Ssl  22:54   0:00 /usr/sbin/mysqld
ionut     3115  0.1  0.5 1358024 46932 ?       Sl   22:46   0:00 nautilus -n
root      4351  0.3  0.5 526508 46888 ?        Ssl  22:46   0:01 /usr/bin/dockerd --raw-logs
ionut     3084  0.0  0.5 614568 42808 ?        Sl   22:46   0:00 /usr/bin/python3 /usr/bin/indicator-stickynotes
ionut     2801  0.0  0.4 646080 35132 ?        Ssl  22:46   0:00 /usr/lib/x86_64-linux-gnu/hud/hud-service
ionut     4761  1.4  0.3 616304 31388 ?        Sl   22:47   0:06 gnome-terminal

这些进程使用的 RAM 似乎与输出中显示的已用 RAM 不一致free -m

答案1

一切都很好,你只是看到了错误的价值观。

您的应用程序“真正使用”的只有 645 MB RAM(-/+ b/c:已使用),还有 7197 MB(-/+ b/c:可用)仍然可供应用程序使用。

2443 MB(Mem:已使用)是系统正在使用的总 RAM 量,但包括磁盘缓存和其他可立即丢弃以支持应用程序(如果需要)的内容。这些类型的缓存可加快磁盘访问速度,而不会影响应用程序可用的 RAM 量。

另一方面,那 5398 MB(内存:可用)确实未被使用。甚至可以说它们目前毫无用处。

更多信息请访问https://www.linuxatemyram.com/

相关内容