I would like to restart the gtk-window-decorator process, because it takes up 600MB memory. Will that affect other processes? From my experiences, after killing it, all other programs will lose their window frames, but after I run it again, the other programs will have their window frames back, and the gtk-window-decorator process will take much less memory.

If I rerun it in a shell session in background, I will kill it if I forget about it and accidentally close the shell session. How can I run it like the OS does?

I am running Ubuntu 12.04. Thanks.

  • Is that 600MB VIRT or RSS? There's a significant difference: unix.stackexchange.com/questions/64964/… and it's most likely the former, in which case it isn't really using that much and you don't need to worry about it. – goldilocks Jul 25 '14 at 16:08
  • Top shows 114m 36m 13m for VIRT RES SHR respectively, and System monitor shows 563MiB for X Server memory, and almost 600MiB for "Memory". What relations are between these memories? – user66259 Jul 25 '14 at 16:16
  • As per the link, virtual address space (the VIRT score) is not real memory; the best common metric for actual RAM used is "residential set size" (the RES score). So 36 MB is not so bad. When in doubt, trust tools that report both these numbers, as opposed to something which gives you an ambiguous "Memory" total. – goldilocks Jul 25 '14 at 16:24
  • Thanks. What is "X Server memory" that gtk-window-decorator takes up so much? – user66259 Jul 25 '14 at 16:30
  • It could be a total for various things that are part of the GUI. There's probably a process X which takes a good 100 or so MB RES. If you press capital F in top, select RES (via arrows), then s to set this as the sort criteria and Esc to return to the normal view, the biggest consumers of memory will be kept at the top. This will probably include a browser and various GUI bits and pieces (the DE executable, etc). That should give you an idea of what's actually using what. – goldilocks Jul 25 '14 at 16:43

That's an ugly bug, but no, there is no danger. As you said, this is just the window decorator, you can kill it and run it again and everything is fine.

As for running it, you can probably just run

gtk-window-decorator &

And then exit the terminal by hitting Ctrl + D or typing exit. Just don't close by clicking on the X.

Alternatively, you could run it with nohup:

nohup gtk-window-decorator &

Or launch normally and disown the process:

$ gtk-window-decorator &
$ disown 1234

Here, the 1234 is the PID of the backgrounded process, the actual number will be different on your system.

  • System Monitor provides two options to terminate the process: "kill the process" and "end the process". From command line, how do you do those respectively? Which one is better? – user66259 Jul 25 '14 at 16:19
  • It depends, and that it a whole different question. You might want to have a look here for a list of the different signals. My guess is that "Terminate" sends a SIGTERM while "kill" sends SIGKILL but the details depend on how the system monitor is implemented. Anyway, from the commandline, just run killall gtk-window-decorator. – terdon Jul 25 '14 at 16:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy