X programs are much more resource intensive than character-based programs.
X programs need to do more work than most character-based programs. This is because X programs are graphical. While character-based programs are limited to telling the terminal what characters to display where, X programs might tell the terminal to draw a picture of a paint brush in the upper-right corner, a little arrow icon beneath it in a shadowed box, etc. Even a character isn’t just a character: X programs have many different fonts available to them, which can be displayed at different sizes.
Also, since windows can be moved easily, or can be obscured by other windows and then uncovered again, X programs have to redraw their windows all the time. When you move even one window in X, several programs have to do work:
The program that lets you move windows and keeps track of where your windows are (your window manager ) needs to know that you’re moving a window.
The window manager tells the program that controls the window that’s being moved that it needs to redraw.
The window manager tells any programs controlling windows that were obscured by the first window that they need to redraw those portions that are now visible.
For example, suppose you have a calculator window hiding behind several xterm windows. ...