Re: ramfs: mounting ramfs as / at boot time

From: Werner Almesberger (almesber@lrc.epfl.ch)
Date: Thu May 25 2000 - 20:09:58 EST


Dave Cinege wrote:
>> ;-)) Well, you know the alternative: continue with the "pull everything
>> into the kernel" approach and special-case ramfs handling in mount_root.
>
> YES! Great! I want it! How do I go about doing it? What is it I should call to
> have ramfs on /? I haven't a clue.

The general plan should be to fast-forward right towards the mount_it
label. Look at sys_pivot_root for any further adjustments you have to
make. The main problem is that change_root/mount_root assume to work
on a device, while ramfs gives you a directory. By lucky coincidence,
pivot_root assumes to work on directories :)

> ******************* Bootstrap images...are....EVIL! *******************

Yes, it's obviously much better to put them right into the kernel ;-))))

> You ever see the size of something compiled -static? Forget it.

Try -nostdlib to be sure you don't pull in any monstrosities from libc.
(According to glibc gurus, there are some bits of glibc you can use,
but you have to be very careful. There was a thread on linux-kernel
about this a while back. I'm lazy and just drop libc entirely if I care
about size. YMMV.)

You'll find that user space doesn't have to be much larger than things
you put directly into the kernel. The size of, e.g. a very simple
shell can be < 3 kB on i386, see also
ftp://icaftp.epfl.ch/pub/people/almesber/psion/ush-2.tar.gz
(if compilation fails because it can't find fork, just remove the
#ifndef HOST/#endif at the beginning.)

- Werner

-- 
  _________________________________________________________________________
 / Werner Almesberger, ICA, EPFL, CH       werner.almesberger@ica.epfl.ch /
/_IN_N_032__Tel_+41_21_693_6621__Fax_+41_21_693_6610_____________________/

- 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/



This archive was generated by hypermail 2b29 : Wed May 31 2000 - 21:00:15 EST