Subject: Re: Is the kernel designed to return?
To: None <port-macppc@netbsd.org>
From: Derek Peschel <dpeschel@eskimo.com>
List: port-macppc
Date: 12/30/2001 12:42:13
> I may be wrong about NetBSD as I don't know too much about the boot 
> loader on this system, but in general, OF code is been unmapped from 
> memory (by calling quiesce method) and therefore unaccessible as soon as 
> it has been used to do the bootstrap job. This I get not so much for 
> saving memory but ultimately for security purpose.

The Mac OS destroys the copy in RAM, but NetBSD keeps it and calls on it
quite frequently.  The C interface package is still available, and I'm
pretty sure the interpreter is too (it will print a prompt after the system
halts, I just can't use the prompt).

I disagree that it's for security; the Mac OS will rewrite the NVRAM even
after the copy in RAM has been erased, and that is much more dangerous
than anything you could do to RAM.  Evidently this is a case of "security
through obscurity".

In fact, I've been waiting for a chance to ask whether Apple's BootROM is
ROM at all!  A design which copies NVRAM into RAM, boots an operating
system, erases the RAM copy of NVRAM, and then potentially rewrites the
NVRAM seems like insanity to me, but apparently there are many PC BIOSes
that work the same way.  (I thought they were designed to have a
non-flashable area of ROM, so that you couldn't shoot yourself in the foot.)

-- Derek