> - klibc
> Portability can be achieved through using the kernel unistd.h file
> for the syscall logic, and having a very small _start function
> written. For an example of this kind of code, see the initramfs
> patches from Al Viro on his ftp site:
> ftp://ftp.math.psu.edu/pub/viro/
> This would involve writing/porting a lot of the basic library
> functions. They could be copied from the existing libc
> implementations, but this would be a separate project, requiring
> maintenance over time, and people willing to do the work.
Note: said patches are against relatively old 2.4 trees. They demonstrate
that quite a few things can be moved to userland, however it's mostly
proof-of-concept stuff. In particular
* in the final variant we let the loader to leave archive(s)
in core, rather than linking them into the kernel image.
* nfsroot.c is *crap*
* quite a few things are currently done better (modulo moving
init/do_mounts.c code in userland process). IOW, reduction to syscalls
could be (and already is) done better than in these patches.
I'll put current version of that stuff for public testing, but that
will happen after the current mess with kdev_t/struct block_device *
will be resolved...
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/