Re: dso loading question

Jakub Jelinek (jj@sunsite.ms.mff.cuni.cz)
Mon, 31 May 1999 14:32:06 +0200


> Putting all the above into the kernel would reduce overall bloat.
> Think about it. Every damn executable has the same startup code.
> We'd save a page (few pages?) of code and data on every executable,
> as well as all the system calls:

Wonder which bloat you're talking about. That code is in the dynamic linker,
which is of course shared among applications, so you would not save a page or
a few pages per executable.
I don't see your arguments about syscalls being "junk". If you move it into
the kernel, you'll have to do the same inside the kernel, like the open()/close() stuff,
etc. As you probably know, Linux syscalls have very fast prolog/epilog code, so you'd
just save a few ticks and making at the same time kernel stuck to a
particular version of libc and bloating the kernel with things which really
don't belong there.
If you look deeper into glibc's dl, you'll see many things are already
optimized (e.g. stuff like uid/gid are passed by the kernel on the stack).
And if you want to know how to boost dynamically linked process startup,
have a look at SGI's QuickStart. I think some people are already
implementing something similar for Linux.

Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
UltraLinux | http://ultra.linux.cz/ | http://ultra.penguin.cz/
Linux version 2.2.9 on a sparc64 machine (1343.49 BogoMips)
___________________________________________________________________

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/