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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox