I must first apologize for the short span of silence over the last few days; the end of the month brought a few real-life issues that needed resolved.
When last I typed, I mentioned that python script that encapsulates the memory usage for a machine, organizing it into a neat bundle. As someone mentioned, and as htop confirms for me, memory use by X is exceptionally slender for this machine — topping out around 1Mb or so.
I don’t know why that is, but I do have some theories … none of which I am in a position to authoritatively prove or disprove. My own observations though, tell me a few things.
First, the size and weight of X is going to change with each distro, since the method for building it is going to differ with each. That’s sort of a “cop-out” answer, if I am correctly paraphrasing some of my American friends, but it is probably a safe bet that Xorg in Crux is probably going to be less demanding than in Ubuntu, just as an example.
And I can probably suggest that compiling a custom version of X, with flags appropriate to the hardware (which is what I usually do) is going to run easier than a generic one too. That might be a bit weak for a reason, but you never know. Or at least, I never know.
But also keep in mind that X in that post is a year-old version. Over the past year, X has incurred a lot of bloat — or what I would call bloat — and that too can come into play. It’s almost preferable to me to run an outdated version of X than to put up with hal and dbus and so forth, on an old machine.
After that, I should probably mention that I comment out some of the modules from my xorg.conf file, although I don’t know what effect that has on the running size of X. A 13-year-old graphics card doesn’t have much use for things like glx, so I take those out of play.
In addition, I know that the memory footprint for X differs from machine to machine, which says to me that hardware comes into play too. The amount of space taken up by X on my Inspiron is quite a bit more than the Pentium, although it can do more too.
But if hardware is a factor, so is how you use the hardware; a screen resolution of 800×600 seems to require less space than one twice as large. That was one of the things I tried as a test measure a few months ago, when I originally noticed the ultralight X in action.
And I suppose if all of those other things can influence the size of X, then perhaps the driver you use, and even the kernel you build could likewise be factors. I don’t doubt for a second that the proprietary nvidia driver on my Inspiron is chunkier than any of the open-source ones, and whether or not my custom kernel comes into play … I can’t be sure.
Like I said: I am no expert, and I’m not in a position to test or even troubleshoot any of these theories. (And to be honest, I’m only obliquely interested in finding out the answers.) There is a chat channel for X at #xorg on freenode, as well as the hardware-specific driver channels at #ati and #nvidia. And of course, the mailing lists are an option too. Anyone who answers will be far more qualified than me.
But if you do find out how X can squeeze into 1Mb, please explain. I have some floppy discs in the closet, and I find it amusing that they could apparently hold graphical system on them, with space left over.