From: "H. Peter Anvin" <hpa@zytor.com>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: Aaron Lehmann <aaronl@vitelus.com>,
Jeff Garzik <jgarzik@pobox.com>,
LKML <linux-kernel@vger.kernel.org>,
viro@math.psu.edu
Subject: Re: [BK PATCHES] initramfs merge, part 1 of N
Date: Sat, 02 Nov 2002 04:07:00 -0800 [thread overview]
Message-ID: <3DC3BFE4.8080904@zytor.com> (raw)
In-Reply-To: Pine.LNX.4.44.0211021049480.2413-100000@home.transmeta.com
Linus Torvalds wrote:
>
> The real advantage to me is two-fold:
>
> - make it easier for people to customize their initial system without
> having to muck with kernel code or even use a different boot sequence.
> One example of this is the difference between vendor install kernels
> (using initrd) and a normal install kernel (which doesn't).
>
> So I'd much rather see us _always_ using initrd, and the difference
> between an install kernel and a regular kernel is really just the size
> of the initrd thing.
>
> - Many things are much more easily done in user space, because user space
> has protections, "infinite stack", and in general a lot better
> infrastructure (ie easier to debug etc). At the same time, many things
> need to be done _before_ the kernel is fully ready to hand over control
> to a normal user space: do ACPI parsing so that we can initialize the
> devices so that we can use the "real" user space that is installed on
> disk etc.
>
> Sometimes there is overlap between these two things (ie the "easier to
> do in user space" and "needs to be done before normal user space can be
> loaded"). ACPI is one potential example. Mounting the root filesystem
> over NFS after having done DHCP or other auto-discovery is another.
>
I agree 100% with this. I don't think <kernel>+<early userspace> will
ever be smaller than the current kernel, but I have invested quite a bit
of effort into it for exactly the reasons done above.
klibc binaries might not be what one usually tends to run, but during
klibc development I could still use standard gdb, strace, and just plain
"run it off the command line" debugging techniques from a full-blown
environment. When that doesn't work (like testing dynamic klibc),
chroot will usually do the trick. The compile-test-debug cycle is so
much faster than for a kernel boot that it's just plain amazing.
-hpa
next prev parent reply other threads:[~2002-11-02 20:01 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-11-02 8:13 [BK PATCHES] initramfs merge, part 1 of N Jeff Garzik
2002-11-02 8:18 ` Jeff Garzik
2002-11-02 8:42 ` Aaron Lehmann
2002-11-02 8:46 ` Jeff Garzik
2002-11-02 8:50 ` H. Peter Anvin
2002-11-02 19:01 ` Linus Torvalds
2002-11-02 12:07 ` H. Peter Anvin [this message]
2002-11-02 20:24 ` Alexander Viro
2002-11-02 23:46 ` Dave Cinege
2002-11-02 10:51 ` miltonm
2002-11-02 17:12 ` Matt Porter
2002-11-02 12:14 ` H. Peter Anvin
2002-11-02 20:37 ` an idling kernel Anu
2002-11-02 22:16 ` Jos Hulzink
2002-11-03 0:43 ` identifying the idling kernel and kernel hacking Anu
2002-11-04 19:16 ` an idling kernel Werner Almesberger
2002-11-02 20:37 ` [BK PATCHES] initramfs merge, part 1 of N Alexander Viro
2002-11-02 23:36 ` Matt Porter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3DC3BFE4.8080904@zytor.com \
--to=hpa@zytor.com \
--cc=aaronl@vitelus.com \
--cc=jgarzik@pobox.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
--cc=viro@math.psu.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.