
On Thu, Jan 15, 2009 at 9:53 AM, Rob OpenSuSE <rob.opensuse.linux@googlemail.com> wrote:
2009/1/15 Matt Sealey <matt@genesi-usa.com>:
On Wed, Jan 14, 2009 at 2:33 PM, Stanislav Visnovsky <visnov@suse.cz> wrote:
One thing I have a serious problem with, which is totally unfixable in Linux if only because it is too much work on thousands of applications, is the fact that every dependency has to be a hard one, enforced at link time of the application.
If you have an image viewer with GIF, JPEG or PNG support, it has to be linked against these and all of them are pulled in by ldso when the application is started.
The dynamic linking finds w here the library is, but the code isn't loaded until page fault occur.
It's still parking a page for it. The library is basically mmap'd in, which takes up no real physical memory, but for example if you don't have enough virtual address space to do it, it will fail. This would be an extreme case for it, but let's give a simple example; when X starts it mmaps the entire graphics card memory. On our 128MB systems with a 128MB graphics card, without the swap enabled, it fails absolutely, every time. And let's be honest here, and remind you, that on our specific system, disk access is NOT desired because it is so slow. That it's "not taking up physical memory!!!" is moot when it's taking up space on a far, far slower medium (not of the order of 100MB/s slow compared to 2GB/s slow, but 1MB/s to 2GB/s slow, perhaps even worse than that since the disk may also be in use doing something else) On a thin client with X, it means you have to have enough memory in the system, plus swap on NFS or so, to map the entire graphics card memory into the address space of the driver process. Having an 8MB graphics card on a 128MB system is great, but we can't find those, and neither can many other people :) -- Matt Sealey <matt@genesi-usa.com> Genesi, Manager, Developer Relations -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org