andersee is currently certified at Master level.
Name: Erik Andersen
Member since: 2001-03-20 03:42:34
Last Login: N/A
I'm just some guy. I have been hacking Linux since 1996, when I became a Debian developer and took over maintaining the Linux kernel CD-ROM subsystem. Ever see the Uniform CD-ROM driver when you boot up linux? Well I'm the one that made it be uniform (and in fact, I'm the one that wrote that particular boot message). See back then, there were 68 flavors of strange cdrom drivers, all different. I established the current cdrom.h header file that defines exactly how cdrom drives operate under Linux, I adjusted the work-in-progress cdrom.o driver, then I went through and ported the various wierd cdrom drivers to all go through the uniform driver. The funny thing is, I don't even have very many CDs. I only got into the job bacuse I made the mistake of buying a 4 slot cdrom changer that was badly supported. So I started downloading specs and hacking the kernel and pretty soon I was maintaining things. Eventually, I ended up getting really sick with cancer, and I gave up the cdrom stuff to Jens Axboe, who has now been doing the job for a couple of years.
Anyways, fortunately, I got better. Since I no longer maintained the cdrom drivers for the kernel I was free to work on other things for the first time in a few years. I spent a while hacking 3D stuff and doing VRML, but that got boring. So then I began working on GnomeHack, a port of the venerable, but still wonderful role-playing game of nethack to the Gnome windowing system and the Gtk toolkit. This has now been integrated into the mainline nethack source tree.
These days, my major project is BusyBox, a GPLed suite of tiny UNIX utilities that provides a pretty complete POSIX environment in a very small package. I have rewritten most of it, and added tons of functionality (all optional of course). It was originaly written for the Debian boot-floppies by Bruce Perens, but really makes an excellent base for small or embedded systems.
Over the past year, I did a port of uClinux for the Atmel at91 series arm7tdmi cpus. I have adopted the orphaned uClibc C library for embedded systems. I initially did an x86 and an ARM port and I've recently made it work as a shared library. My work on uClibc has now become the One True Source Tree(tm), and it now lives at cvs.uclinux.org.
In the April Embedded Systems Conference, in San Francisco, I will be presenting a paper on "Rolling your own Embedded Linux Distribution", where I will walk people through the process of making their own embedded Linux distribution. The cool thing is that the entire user space on this embedded distro, based on Busybox and the uClibc, shared library is maintained by me. And what is even more cool is that it all weighs in at only 350k. Not too bad I think.
Recent blog entries by andersee
Well, I've got the new ld.so working very nicely now in
uClibc. Also some nice news -- I've put together a quite
complete math library and checked that in yesterday. I
think uClibc is just about ready for some heavy duty
industrial use (which is exactly what I am working on next).
I got the uClibc shared library loader working today. Much
of the initial porting effort was done by Manuel. I am not
very happy with the way multiple architectures are supported
with ld.so -- its cross platform support really needs some
rethinking in the future. Regardless, it is now working
flawlessly on x86. I've started porting the shared lib
loader to ARM, but it is not ready yet (i.e. doesn't even
One downside to running several Open Source projects is that
when working on one, the other gets neglected. I've been
neglecting BusyBox for the last few days...
Today I got busybox 0.51 released. Finally. I'm really
proud of this release. It is very very solid. I'm leaving
to fly out to ESC in about an hour. It should be a lot of
fun. It is looking like a group of BusyBox folks will be
getting together for dinner on the 12th. It will be nice to
have some faces for the names.
I got busybox running on ia64 today, which ended up being a
lot more work then expected. On most architectures, you
can use the _syscall[0-5] macros from
/usr/include/asm/unistd.h, but for some silly reason that I
don't understand, the ia64 developers made those macros
reference a kernel symbol. Ugh. I only needed two
syscalls that were not in glibc on ia64, and those I just
stuck in wrapper functions which use syscall() to do the
dirty work. Managed to shave off about 500bytes in the
process -- even more if you include insmod.
While fixing up busybox, I fixed up uClibc's syscall support
a bit by adding a few obscure syscalls also provided by
glibc. Mostly kernel module related stuff. This has the
nice side effect that busybox compiles vs uClibc again (the
syscall adjustment had broken it).
Well, it seems that having an account here is the thing to
do ... So here goes.
andersee certified others as follows:
- andersee certified jgarzik as Master
- andersee certified kraai as Journeyer
- andersee certified beppu as Journeyer
- andersee certified BrucePerens as Master
- andersee certified axboe as Master
- andersee certified joey as Master
- andersee certified quinlan as Master
- andersee certified wichert as Master
- andersee certified tausq as Master
- andersee certified Fefe as Journeyer
- andersee certified timriker as Master
- andersee certified Russ as Master
- andersee certified lethal as Master
- andersee certified zx80user as Apprentice
- andersee certified mrbrown as Master
Others have certified andersee as follows:
- tausq certified andersee as Journeyer
- davidw certified andersee as Journeyer
- acme certified andersee as Journeyer
- adulau certified andersee as Master
- superant certified andersee as Master
- Fefe certified andersee as Journeyer
- technik certified andersee as Journeyer
- khoerling certified andersee as Master
- kraai certified andersee as Journeyer
- ncm certified andersee as Journeyer
- braden certified andersee as Journeyer
- val certified andersee as Master
- timriker certified andersee as Master
- Russ certified andersee as Master
- lethal certified andersee as Master
- mrbrown certified andersee as Master
- proski certified andersee as Master
- twiun certified andersee as Master
- dwmw2 certified andersee as Master
- pcburns certified andersee as Master
- ebf certified andersee as Master
- linuxata certified andersee as Master
- janneke certified andersee as Master
- DerekRader certified andersee as Master
[ Certification disabled because you're not logged in. ]