xorg内存泄漏


12

在我的桌面上,Xorg泄漏了大量内存。我过去常让这台机器运行数天(数周,数月……),但是我每周大约不得不重启一次xorg,因为它占用了太多内存。

我是唯一受此问题影响的人吗?为什么会这样呢?
是Xorg被窃听还是其他问题(也许是一些xorg模块)?
我可以做些什么来避免它?


更多信息:

我使用的是ArchLinux,内核2.6.36,NVIDIA驱动程序260.19.36,gnome 2.32.1。

无论如何,我已经有很多年了,比如一年多。


这是经过大约9天的正常运行时间后,Xorg流程在顶部显示的方式...

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
1591 root      20   0  278m 229m 9364 S    2 11.8 244:38.73 Xorg

我只有几个打开的窗户。229MB的常驻内存对我来说似乎很多(随着时间的推移,它将不断增长)。重新启动Xorg后,我还将在其生命之初添加进程统计信息。


这是我的Gnome桌面启动后立即出现的情况:

 PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1573 root      20   0 89508  43m  11m S    1  2.2   0:03.53 Xorg

@jsbillings:top显示Xorg即使我关闭了所有X11应用程序(但Gnome应用程序),该过程也占用了大量内存(例如300m)。
peoro 2011年

非专有驱动程序会发生此问题吗?
mattdm 2011年

并且,Xorg内存使用量会增加还是以这种方式开始?
mattdm 2011年

@mattdm:我没有使用非专有驱动程序进行测试,因为我时不时需要3D图形加速(性能好!)。Xorg内存使用量随时间增长。
peoro 2011年

我建议尝试使用开源驱动程序,看看问题是否存在。这将缩小问题范围。如果应归咎于专有驱动程序,则只有nvidia可以为您提供帮助。
mattdm 2011年

Answers:


8

X服务器中的某些内存泄漏是应用程序的错误;如果他们创建服务器端Pixmaps并且不自己清理,它们将永远存在。(这是一项功能,因此GNOME可以一次安装一组标准Pixmaps,然后通过将其传递给其他程序来使用它们XID作为优化。) xrestop可以用来跟踪这些标准。


还有xrestop无法显示的其他资源吗?目前,xrestop向我显示总共45990K,而顶部向X显示具有11.9g RES(12.4g VIRT)的X。这比我预期的要大得多……
aij 2018年


0

我有同样的问题和类似的操作系统。内存泄漏可能是侏儒。当我使用applet更改监视器分辨率时,我在Xorg内存空间中发生大量内存泄漏。我不知道问题出在哪里,但如果您将禁用此applet,则不会再出现内存泄漏。


-2

我对此并不陌生,这是我为避免该问题所做的工作:

  1. 我切换到主控制台Ctrl- Alt-F3
  2. 以管理员身份登录
  3. 类型:

    exit
    
  4. 切换回桌面与Ctrl- Alt-F2

    所有阻塞的内存都已被释放,就像刚刚启动系统一样。

我正在使用尾巴3.1

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.