[nzlug] machine pre loaded with linux

Daniel Pittman daniel at rimspace.net
Wed Feb 7 20:19:08 NZDT 2007


Volker Kuhlmann <hidden at paradise.net.nz> writes:
> On Tue 06 Feb 2007 22:10:00 NZDT +1300, Michael Adams wrote:
>
>> Some comment here seem to suggest you are seeing it as a full computer.
>> It is not. It is a thin client.
>
> Yes sure, but you still need to run an X server on that. What is a
> realistic memory requirement for an X server these days? Is 128MB
> enough? (I haven't run X11 on a box with that little in donkeys
> years.)

Around 8MB plus pixmap memory; the later can be stored on the card in
some cases.  A 32MB machine can run a 2.6 Linux kernel, networking and
an X server, and 64MB is more than enough for a thin client.

Much of the supposed "bloat" comes from the use multiple (very) large
mapped copies of the frame buffer memory into the process space of the X
server.[1]

For example, on my system I have 84MB of mapped DRI and physical memory
space in the X server process, 62MB of anonymous memory and stack, and
1.2MB of shared memory.  

The remainder, 11.8MB, represents the total space used by shared
libraries and code segments -- of which ~ 3MB is represented by libc and
friends, libraries that are shared between all processes.


I should also note that this is a large X server that has been running
for quite a long while now.  I have a 1600x1200 screen with multiple
virtual desktops and plenty of pixmap memory used by an intensely
graphical desktop -- some 42MB in total, in fact.

Using a less resource heavy desktop environment and selecting less
graphically intense themes for my applications and window decoration
would, together with eliminating desktop backgrounds could trivially
reduce that by a third, at least.


So, for my system where I tried to keep use levels down a bit I would
suggest this is a reasonable estimate:

  X server code:  12MB, 3MB shared libc
      heap, etc:  33MB
  -------------------------
          total:  45MB, of which 3 are shared with other code
    plus kernel:  21MB  (tuned for 1GB of RAM)
  -------------------------
    grand total:  66MB

In other words: yes, a 128MB machine could *comfortably* run an X server
with plenty of space left over for local applications, let alone only
running them remotely.

64MB would require a little swapping -- all my code is mapped in,
without swap in use -- but should be quite comfortable.

Regards,
        Daniel

Footnotes: 
[1]  To reproduce my results on your own system you can use the pmap(1)
     tool, part of the procps bundle.  No special privileges required.

-- 
Digital Infrastructure Solutions -- making IT simple, stable and secure
Phone: 0401 155 707        email: contact at digital-infrastructure.com.au
                 http://digital-infrastructure.com.au/




More information about the NZLUG mailing list