由于内存不足,我的电脑经常死机。我希望这种情况少发生。我知道,处于这种高内存使用率状态的系统在技术上仍在通过使用 SSD 或其他方式解决问题,但我不能等上几个小时让系统解决问题。我正在运行最新的 16.04,我需要这个版本的 Ubuntu。
请注意,我的电脑并不是特别旧,都是最近三年内购买的,并且至少有 8 GB 的 RAM。我怀疑这个内存问题是由大量 Electron 应用引起的。
我运行后indicator-sysmonitor
会显示使用了多少 RAM 内存,并且可以看到内存使用情况显然是问题所在,因为在情况变糟之前,当内存使用率显示为 97% 左右时就会发生冻结。
因此,Ubuntu/GNU/Linux 中内置的当前解决方案对我来说不起作用。
- 有哪些解决方案可能更适合我?
现在我想象创建一个程序黑名单(例如 Firefox、Chromium、Signal、Riot),如果系统总内存使用量接近 97%,则用一个小程序按内存使用量的顺序杀死这些列入黑名单的程序。
- 存在这样的解决方案吗?
- 如何在我的系统上启用它?
编辑:我已在下面添加了交换详细信息:
$ swapon --summary
Filename Type Size Used Priority
/dev/sda5 partition 12469244 0 -1
$ free -h
total used free shared buff/cache available
Mem: 11G 1.9G 5.8G 943M 3.9G 8.4G
Swap: 11G 0B 11G
编辑:正如一些人所建议的那样,这与限制单个进程的内存过程完全无关(如这里所述)这是关于全部的内存使用情况,然后逐步针对黑名单程序采取行动,作为紧急措施阻止计算机冻结。下面介绍了一种解决方案。请回答是否有更好的方法。