救命!Linux 确实占用了我的内存

救命!Linux 确实占用了我的内存

首先,我知道 Ubuntu 系统监视器中显示的内存使用情况并不确定。我读了所有类似这样的内容。但请考虑一下:

  • 我在 MacBook Pro 上安装了 Ubuntu 16.04 双启动作为主操作系统
  • MBP 有 8GiB 内存(准确地说是 7.7GiB)
  • 每隔一天,我的笔记本电脑就会卡住,直到没有任何反应,我只能以每英寸几分钟的疯狂延迟移动光标(换句话说;完全冻结)

自从发生这种情况以来,我一直打开系统监视器,每次系统冻结都是因为内存使用率高达 99.99%。

我尝试使用诸如此类的命令sync && echo 3 | sudo tee /proc/sys/vm/drop_caches和 Chrome 扩展程序来更好地管理进程和内存使用情况。大多数时候我都会运行 5 个窗口:

  • Chrome 浏览器
  • Sublime Text 编辑器
  • Nylas 邮件客户端
  • Spotify
  • 终端窗口

正如我所说的,我密切关注内存使用情况,当我注意到内存使用率 > 90% 时,我会不时重新启动,但经常会发生某个进程(主要是 Chrome)意外地承受一些压力,如果发生这种情况,我可以叹气,强制退出我的机器,然后重新启动它。

一天下来,内存使用量似乎越来越大,唯一能清除内存的方法就是重启。启动时,内存使用量通常为 40~45% (+- 3,5GiB)。此时,我在 chrome 中打开了 4 个选项卡,有一个终端窗口,后台有 Nylas 和 spotify,内存为 5.5GiB。我已经感觉到内存即将再次堵塞的紧张感。

Ubuntu 安装非常干净和新颖;开箱即用,内部没有进行任何疯狂的操作;只是以普通用户的身份使用它。

现在我不知道这是因为它在 MBP 上运行并且没有针对它进行优化,或者我可以调整操作系统以在其上更好地运行(即我似乎没有任何可用的交换),但我认为将内存使用率限制在 95% 是一个好主意,就像电池充电不超过 90% 一样;以防止达到 100%。

但我不是高级用户。我也不怕深入研究系统并调整一些东西(这就是我想使用 Ubuntu 的原因),但目前我不确定在哪里寻找解决方案,如果有的话。我读过关于在容器中启动某些进程(如浏览器)并将其限制为一定内存量的文章,但我也读到过这是一个“愚蠢的想法”,因为“它不起作用”。

那么我该怎么办?我读过这些 问题,但尚未得到令人满意的答案。

我目前的流程列表供参考:

当前流程列表供参考

编辑:根据 Duncans 的建议,以下是启动过程列表。据我所知,没有什么太奇怪的。

初始化列表

indicator-application start/running, process 1923
unicast-local-avahi stop/waiting
update-notifier-crash stop/waiting
upstart-udev-bridge start/running, process 1678
update-notifier-hp-firmware stop/waiting
xsession-init stop/waiting
dbus start/running, process 1687
no-pinentry-gnome3 stop/waiting
update-notifier-cds stop/waiting
gnome-keyring-ssh stop/waiting
gnome-session (Unity) start/running, process 1848
ssh-agent stop/waiting
unity7 start/running, process 1881
upstart-dbus-session-bridge start/running, process 1761
gpg-agent start/running
indicator-messages start/running, process 1884
logrotate stop/waiting
indicator-bluetooth start/running, process 1888
unity-panel-service start/running, process 1851
hud start/running, process 1839
im-config start/running
unity-gtk-module stop/waiting
session-migration stop/waiting
upstart-dbus-system-bridge start/running, process 1764
at-spi2-registryd stop/waiting
indicator-power start/running, process 1889
update-notifier-release stop/waiting
indicator-datetime start/running, process 1894
indicator-keyboard start/running, process 1895
unity-settings-daemon start/running, process 1841
indicator-sound start/running, process 1898
upstart-file-bridge start/running, process 1768
bamfdaemon start/running, process 1753
gnome-keyring stop/waiting
window-stack-bridge start/running, process 1699
indicator-printers start/running, process 1901
re-exec stop/waiting
upstart-event-bridge stop/waiting
unity-panel-service-lockscreen stop/waiting
indicator-session start/running, process 1902

在启动应用程序中仅运行 flux、GNOME 软件、Nylas、SSH Key Agent 和 StackStorage。

相关内容