我刚刚打开电脑,有两个应用程序正在运行:Thunderbird 和 Firefox。其他正在运行的程序都是 Ubuntu 功能集的一部分(还有一些指示器)。
这种情况已经持续了数周,所以我不确定这是否是正常行为。
现在,我的内存使用指示器显示 Ubuntu 占用了我 6GB RAM 的 41%。我甚至还没有打开 Gimp 或其他日常程序。本周我将再购买 6GB RAM,这样在使用 Gimp 或 Openshot 等程序时就不会耗尽内存。
我正在运行的应用程序概览显示 Nautilus 占用最多资源,但它甚至没有打开。这似乎有点过分,还是我遗漏了什么?
答案1
free -m
尝试在终端中运行该命令,然后查看第二行。它显示内存使用量减去用于缓存的内存。例如,我的地下室服务器的内存使用量如下:
total used free shared buffers cached
Mem: 2003 1663 340 0 601 462
-/+ buffers/cache: 599 1404
Swap: 9536 21 9515
我的服务器使用 1663Mb 内存,但只有 599Mb 分配给进程。其余内存由内核用作缓存,因此 1404Mb 可自由使用。请记住,完全未使用的内存是浪费的内存。如果进程不使用内存,则应将其用于缓存磁盘等。例如,如果您关闭 Firefox,则程序可以保留在内存中,以便下次需要时启动速度更快。如果应用程序需要内存,则将分配内存而无需将其交换到磁盘。
您的屏幕截图没有告诉您的另一件事是共享库、同一程序的不同进程之间共享的代码等使用了多少内存。例如,不同的gwibber-service
进程可能共享大量内存。如果您想要了解整个情况,您需要查看虚拟内存、常驻内存、共享内存等(可在首选项中找到)。
只要您没有感觉到机器将内存交换到磁盘的迟缓,您就根本不必担心。
答案2
nautilus 处于打开状态的最可能原因是它用于绘制桌面 - 桌面上的所有图标以及壁纸(我认为)都由 nautilus 处理。但是,它的内存使用量似乎相当高。所有其他服务似乎或多或少都在正常范围内,尽管我不确定为什么会有这么多 gwibber 进程。
您是否将桌面设置为执行一些不寻常的操作,例如显示主文件夹的内容或使用某种动画背景?如果您killall nautilus
在终端中运行 nautilus 进程,会发生什么情况?它重新启动时是否消耗相同的内存量?