> well, 'free' divides it into 'total, used, free, shared, buffers, cached': > it's the last 3 columns which i don't fully understand. > 'shared' is always 0 , so it mb used only on multi-user systems;
I've been on Linux systems where shared is not always zero. I would think that maybe it's not being reported correctly, actually. One would think shared is any memory that's being used for multiple things, so for instance libc, since nearly everything uses uses parts of libc on a shared basis. And Linux is a multi-user system, even if you're the only user, in which case we have several instances of you using the system, or the degenerate case of only one user on the system, which is only during single-user mode. And if you have multiple users (even multiple isntances of you) you have multiple instances of shells running, possibly multiple editors, multiple getty processes and so forth running. A fair amount (actually, anything that doesn't change) of that should be shared. As a rule, then, data and stack pages aren't typically shareable, since they change for each user and/or instance. But code pages are usually shareable, since they don't change. > 'buffers, cached' seem to make use of otherwise empty space, > as the 'used' figure is usually close to 'total'. buffers seem to be self-explanatory, i.e., buffers allocated to disks etc. cached would be everything else. For instance, if you plan on doing a lot of compiling, there would be instances where lots of the same code gets reused - for instance, between subsequent invocations of gcc. I would think that the system would get those pages from cache rather than have to reload pages from the gcc binary for each compile. >
Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
