Just wondering, we've had a lot of discussions in the past about
various serial port/network/disk crash dumping ideas, and always had
the problem of how do we know that the code we're about the execute
hasn't been corrupted, etc, which is especially important in the case
of the disk dumper.
Well, with the Linux BIOS project, couldn't we include some code in
the BIOS that we can jump to after a kernel crash, I.E. just switch to
real mode and start executing the BIOS-contained code to put the
system in to a sane state, and accept commands over the network[1] via
either UDP, or a custom protocol, to dump memory to disk, network, or
whatever?
Internet IMPs had loader/dumpers to do this kind of thing 30 years
ago, and I don't see why we can't ressurect the idea today.
[1] Obviously the code in the BIOS will be hard coded to work with
whatever network card you have, I.E. you would need to program the
right driver in to the BIOS for your particular card, and store the
machine's I.P. there as well, (and a password, or a list of local
I.P.s that were trusted - the idea being that you connect to the
machine via another machine on the LAN, not directly the internet
directly).
John.
On Sat, 15 March 2003 08:46:06 +0000, John Bradford wrote:
>
> Just wondering, we've had a lot of discussions in the past about
> various serial port/network/disk crash dumping ideas, and always had
> the problem of how do we know that the code we're about the execute
> hasn't been corrupted, etc, which is especially important in the case
> of the disk dumper.
>
> Well, with the Linux BIOS project, couldn't we include some code in
> the BIOS that we can jump to after a kernel crash, I.E. just switch to
> real mode and start executing the BIOS-contained code to put the
> system in to a sane state, and accept commands over the network[1] via
> either UDP, or a custom protocol, to dump memory to disk, network, or
> whatever?
I still have the wacky plan to write a simple crash dumper in
assembler. Goal is to code it up in less than 4k of memory, put a
checksum check in it to ensure clean code and dump to ide, but
anything else is fine as well.
The easy parts are already finished. :) But now it's time to look up
the hardware manuals and I got distracted.
Should be quite similar to the BIOS idea, even nearly as safe. As long
as the code path to jump into the (BIOS) dump code is intact, chances
are good that 4k of memory somewhere are intact as well.
J?rn
--
It's just what we asked for, but not what we want!
-- anonymous