我的记忆已满,但进程列表中没有繁重的程序!
总内存为 4GB,但只有 400MB 可用:

htop:排序时%MEM-> 繁重的程序只使用 1% 的内存!
哪个进程填满了我的 RAM?

我的内存已满,但进程列表中没有重型程序!
这是因为内存充满了由内核缓存的文件系统元数据(又名“缓冲区”)和文件内容(又名“缓存”)。
由于程序/用户在短时间内多次访问此类资源是很常见的,并且不使用内存是一种浪费,因此内核会缓存它们,以便比从磁盘再次读取它们更快地访问它们。
缓存数据的确切数量在第 5 列和第 6 列中报告:
缓存的已用空闲共享缓冲区总数 内存:3838 2895 942 120 461 947 -/+ 缓冲区/高速缓存:1487 2350 兑换:4394 615 3779
由于如果内存需要用于其他用途,则可以立即删除缓存的数据,因此缓存的数据并未真正被获取,并且实际上可供程序使用。
第三行报告了“实际”(缓冲区/缓存数据的净值)已用/可用内存(“-/+缓冲区/缓存:”):
缓存的已用空闲共享缓冲区总数 内存:3838 2895 942 120 461 947 -/+ 缓冲区/高速缓存: 1487 2350 兑换:4394 615 3779
为了方便起见,您可以添加几个别名来仅打印“真实”已用/可用内存~/.bashrc:
total used free shared buffers cached
Mem: 3838 2895 942 120 461 947
-/+ buffers/cache: 1487 2350
Swap: 4394 615 3779