为什么 Xorg 占用这么多内存和 CPU?

Phi*_*son 36 xorg cpu-load compiz fglrx 11.04

我最近在一次大规模硬盘故障后重新安装了 Ubuntu 11.04 Natty。

现在,出于某种原因,compiz 和 Xorg 认为开始吃掉我的 RAM 和 CPU - GB 一 GB 是一个有趣的主意。以正常数量开始,但很快膨胀到 1-2+GB 并开始使用我的大部分 CPU。这以前从未发生过,但我的硬件都没有真正改变。唯一的区别是我干净地安装了 11.04,而在我从 10.10 升级之前。

例如:昨晚重新启动了我的电脑。只有程序运行是传输。今天早上回来 - Xorg 使用 1.5GB RAM 和超过 50% 的 CPU。没有其他东西正在运行或安装。我根本没有激活任何花哨的 Compiz 插件。是什么赋予了?

我在带有 8GB RAM 的 4x AMD Athlon(tm) II X4 640 处理器上运行 11.04。我将集成的 ATI Radeon HD3300 GPU 与 AMD Catalyst 11.5 驱动程序一起使用 - 但这个问题也出现在 11.4 和内置 fglrx 驱动程序中。

如果需要,我可以提供任何其他日志或系统信息。

小智 10

TL;DR 尝试拔下您的 USB 集线器(可能还有其他 USB 设备)

我的 Xorg 没有消耗大量 CPU,但在计算机启动后大约一天内,它的内存膨胀到 1.2 GB。解决此问题的唯一方法是硬重启。在尝试禁用 NVidia 驱动程序、切换到 cinnamon、切换到 gdm 并最终踢出该死的东西(这只是为了让我感觉更好)后,我注意到当我切换到控制台 tty(ALT + F1 或 F2,... , F6 ) 在某些 gdm/lightdm 服务重新启动期间,屏幕向下滚动时会出现很多错误消息。请注意,我只切换到 ALT + F1,我还没有登录。

消息报告我的 USB 电视调谐器卡未正确初始化。这些消息不断滚动,好像系统陷入无限循环,试图不断初始化电视卡(当然每次都失败)。正如预期的那样,一旦我断开 USB 电视卡的连接,消息就停止了,但令我惊讶的是,Xorg 也停止了膨胀。只是为了确定一下,我重新连接了 USB 电视调谐器,然后出现了错误消息,然后 Xorg 再次开始像 SUV 在加油站加油一样大吃大喝。

但是,就在村民(又名 ubuntu 用户)即将粉碎他们功能失调的 USB 设备并砸碎功能失调的 USB 设备供应商之前,情况突然发生了转变。实际上,导致所有这些麻烦的并不是 USB 电视卡。电视卡只是症状,而不是问题的根源。情节变厚了...

之前使用过这张电视卡,没有发生任何事故,我仔细查看了抱怨电视卡的错误消息。还有另一条线路抱怨 USB 集线器的 USB 端口,我在那里插入了电视卡。嗯,我刚买了这个集线器。然后我尝试将电视卡直接插入主板上的 USB 端口。一切正常!没有错误消息,也没有 Xorg 膨胀。所以最后实际的问题是这样的:

由于 USB 设备的初始化错误,Xorg 正在消耗内存(在我的书中,这是一个严重的错误)。由于很多人报告ubuntu 12.04中Xorg的问题,我建议你也看看你的usb设备。我的电视卡在插入我的新 USB 集线器时无法初始化,这导致了问题。把它放在主板上一个单独的 USB 端口解决了这个问题。

PS USB 集线器很可能与 linux 不兼容,或者应该由具有自己的电源适配器而不是由计算机的 USB 总线供电的适配器替换(请参阅USB 集线器无法正常工作 Ubuntu 12.04)。当我将其插入集线器时,我的网络摄像头也无法工作。如果插入主板上的 USB 端口,它确实可以工作。但是请注意,当我将其插入 USB 集线器时,dmesg报告网络摄像头已被正确识别和初始化(虽然只cheese给我一个黑色图像),并且由于没有错误消息,Xorg 不会填满计算机的内存.

PPS 我邀请心烦意乱的村民聚集在独眼蒂姆的谷仓外面,将他们功能失调的 USB 集线器扔进节日的大型篝火中。当火势蔓延时,我们也将投入 USB-hub 供应商。每个人都可以免费喝啤酒!呜哈哈哈哈(低沉的声音笑)

:-)

  • 如果您可以在文本的开头包含一个摘要段落来总结所有内容,那就太好了。谢谢 (3认同)

小智 1

我在 Kubunutu 11.10 中也遇到了类似的问题。我通过禁用奇特效果解决了这个问题。我还添加了一个用于 xorg 更新的 ppa(https://launchpad.net/~ubuntu-x-swat/+archive/x-updates),但这对我来说没有什么区别。

我的问题可能是由于 11.10(以及内核版本 3)不支持 Matrox 驱动程序。


Mar*_*mo- 0

您的 xorg 中存在内存泄漏,如果您不发布 /var/log/ 中的 xorg 日志以及主文件夹中的用户 xorg 错误(使用显示隐藏文件来查找它),则很难准确判断问题所在。

我能给你的最好建议是重新安装一个可以运行的 Ubuntu 版本。首先尝试使用 USB 记忆棒或 CD ROM,并让它运行一段时间。尝试找到最佳点并坚持下去。