Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 15 May 1997 19:34:36 -0400 (EDT)
From:      Andrew Gallatin <gallatin@CS.Duke.EDU>
To:        Curt Sampson <cjs@portal.ca>
Cc:        freebsd-alpha@FreeBSD.ORG
Subject:   Re: Alpha questions.. 
Message-ID:  <199705152334.TAA03950@hurricane.cs.duke.edu>
In-Reply-To: <Pine.NEB.3.93.970515154142.408n-100000@gnostic.cynic.net>
References:  <E0wS8mH-0001Pj-00@rover.village.org> <Pine.NEB.3.93.970515154142.408n-100000@gnostic.cynic.net>

index | next in thread | previous in thread | raw e-mail


Curt Sampson writes:
 > On Thu, 15 May 1997, Warner Losh wrote:
 > 
 > > The key here is that we can generally load in our own PALs (ala milo)
 > > and then it won't be an issue.
 > 
 > No. You'll just have a heck of a lot of different PALcode versions
 > to write. From looking at the source to MILO, it appears that they
 > have at least six different versions of the PALcode for different
 > machines, and a MILO compiled with any particular version will only
 > work on matching machines, nothing else. 

Right.  *Exactly* like SRM.  There's a unique version of the SRM console
for all the machines it supports, partially because each machine
requires a different version of the OSF Palcode.

 > Whereas, if you use the
 > OSF1 PALcode, you have to go to the effort of duplicating PALcode
 > only on those machines that don't support OSF1 PALcode at all,
 > rather than all new Alpha machines.

I think the PALcode included in Milo was obtained directly from
Digital by Milo's author.  From looking at the copyright's & RCS id's
on it, it would appear to really be the OSF palcode.

I think we're again blurring the distinction between console software
and PALcode, so here's the executive summary of what I said yesterday.
Sorry to sound like a broken record ;-)

SRM & Milo are each different types of console software.  They exist
to, among other things, to initialize the hardware (build HWRPB, size
memory, etc), load-up the PALcode for the OS to use & bootstrap the
OS.  Once the OS is fully up & running, the console software is
irrelevant.

PALcode is used to mask differences between different types of
hardware, and to present to the OS a fairly uniform interface across
different alpha platforms for the purpose of things like exception &
trap handling, interrupt dispatching, IPL setting, context-swapping,
emulation of instructions not present on all platforms, etc.  The
PALcode is used in conjunction with the OS.

As far as I can tell, Digital UNIX, NetBSD, and Linux all use the OSF
PALcode.  NT appears to use its own, which has probably been munged
somehow for use by a 32-bit OS.  


Drew
------------------------------------------------------------------------------
Andrew Gallatin				http://www.cs.duke.edu/~gallatin
Duke University				Email:		gallatin@cs.duke.edu
Department of Computer Science		Phone:		(919) 660-6590



home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199705152334.TAA03950>