我有Ubuntu
18.04
例如,如果 Ubuntu 刚启动时Memory Ram
有 2.0 GB,如果我打开Firefox
组件,它就会增加(这是预期的),比如说增加到 2.5GB。如果我关闭 Firefox ( Ctrl + Q
),我预计该值会返回到 2.0GB。然而,事情并没有按预期发生,例如:它Memory Ram
返回到 2.2GB(而不是 2.0GB)。
除 之外,我使用其他程序时也遇到此行为Firefox
。
是否有一个命令可以让我释放所有的memory ram
?执行命令后,至少根据操作系统本身释放到最佳可接受的最小值。
目标是在运行一些“重型”软件开发工具和服务器之后(因此在它们刚刚关闭时),释放这两个组件的最佳资源量。
笔记:不确定是否Kernel
也有这种行为(例如Kernel Task
)MacOS
,这是因为两者都是基于 Unix 的
答案1
当程序终止时,该程序使用的 RAM 将被释放。如果没有其他程序使用该库,则共享库使用的内存将被释放。
如果数据读取和写入磁盘,则如果有可用 RAM,它将被缓存。此缓存将保留,直到新数据替换它,或者程序需要它而不是缓存。
查看信息,free -m
将为您提供信息。
$ free -m
total used free shared buff/cache available
Mem: 5950 2292 1444 9 2213 3358
Swap: 4084 350 3734
在这种情况下,RAM 总量为 5950MiB,其中 2292MiB 实际已使用,1444MiB 未使用。此外,2213MiB 用于缓存。缓存和空闲内存可立即使用,总可用内存为 3358MiB。
退出程序时,您会看到已使用的内容减少,但buff/cache
列没有变化。不过,这没关系,因为用于缓存的内存随时可用。
简而言之:让 Linux 管理您的内存。无需手动操作。