9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Ronald G Minnich <rminnich@lanl.gov>
To: <9fans@cse.psu.edu>
Subject: Re: [9fans] how small can you get
Date: Fri,  8 Feb 2002 10:16:27 -0700	[thread overview]
Message-ID: <Pine.LNX.4.33.0202081008010.27291-100000@snaresland.acl.lanl.gov> (raw)
In-Reply-To: <3C640534.FF043B6@research.bell-labs.com>

On Fri, 8 Feb 2002, Sean Quinlan wrote:

> The current internal version of the kernel has this functionality.

good.

> We are also in the process of redoing the /boot.  The idea is
> to use rc as the boot scripting language.  The combination of these two
> ideas means that 9load can be greatly simplified, and we can have scenarios
> such as
> 	9load->local kernel -> setup ip; connected to fs; load kernel over 9p -> reboot
>
> The local kernel is just a fancy bootloader.

This is pretty much what we've been doing for the last 18 months with
Linux. We can boot linux from flash, or etherboot from flash on those
256KB flash cases.

The first Linux we boot in turn can boot another linux from wherever linux
knows how to read from (disk, network, etc.).

So my scenario would be
linuxbios->gunzip local kernel from FLASH->setup ip; connected to fs; load
	kernel over 9p

> The only tricky aspects to getting this to work is resetting the various
> devices that potentially can be doing DMA during or soon after the reboot.

Yup. In Two-Kernel Monte for Linux Erik Hendriks handles this by using
loadable modules. Before Monte boots the next Linux it unloads all the
modules he loaded, and their unload process pretty much disables each
interface.

Plan9 doesn't have loadable modules but I assume you've worked out the
details of disabling the DMA. Actually for PCI I've always found it safe
to just disable DMA in the device command register but Erik is more
paranoid than I am (probably justifiable given awful PC hardware).

The APIC and SMP add difficulties. Eric Biederman of LinuxNetworx has
solved these problems however. You might want to check out his kexec patch
unless you've solved this already. But turning off an APIC that was
brought alive in uniprocessor mode and having it do the right thing when
you get into SMP -- that's turned out to be tough. Add in the usual
chipset bugs and ... what a mess.

One thing we also do is use the Disk On Chip (where possible) to give us a
7MB / partition on the motherboard. This can be very handy ... you could
put plan9.ini in there, for example.

Anyway we're interested ...

ron



  reply	other threads:[~2002-02-08 17:16 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-08 16:19 anothy
2002-02-08 16:42 ` Ronald G Minnich
2002-02-08 17:04   ` Sean Quinlan
2002-02-08 17:16     ` Ronald G Minnich [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-02-09 20:52 Russ Cox
2002-02-08 17:14 jmk
2002-02-08  2:53 jmk
2002-02-08  5:25 ` Lucio De Re
2002-02-08 15:20 ` Ronald G Minnich
     [not found] <rsc@plan9.bell-labs.com>
2002-02-08  1:48 ` Russ Cox
2002-02-08  1:52   ` Scott Schwartz
2002-02-08 15:17   ` Ronald G Minnich
2002-02-08  0:19 Ronald G Minnich
2002-02-08 10:08 ` Boyd Roberts

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=Pine.LNX.4.33.0202081008010.27291-100000@snaresland.acl.lanl.gov \
    --to=rminnich@lanl.gov \
    --cc=9fans@cse.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;
as well as URLs for NNTP newsgroup(s).