> Does anyone know what are the real technical
differences between
> sun4, sun4c and sun4m subarchitectures of SPARC from the viewpoint
> of an OS kernel writer? [...] Net/OpenBSD has a unified SPARC
> kernel, [...]
Actually, NetBSD has slightly different SPARC kernels
if I recall
correctly.
I don't suppose it occurred to either of you to actually go and check?
NetBSD's code is available for inspection, and while I haven't checked,
I feel certain OpenBSD's is too.
I just had a quick look at the NetBSD code. The biggest differences
seem to be in the pmap, which deals with the MMU; there are other
checks for SUN4 vs SUN4M vs SUN4C scattered around, but they are mostly
various drivers that know things like "this device appears attached to
obio only on 4c machines". It's possible to build a kernel supporting
any desired subset of the three types; if you build a kernel supporting
more than one type, you will pay a marginal speed penalty since some
things will make run-time checks for the architecture, checks which are
effectively done at compile time in a single-architecture kernel.
In any case, the Sun Hardware Reference, a copy of
which may be found
at:
http://www.obsolyte.com/sunFAQ/faq_hardware/hwref0.html
...should answer all your questions.
You might want to check it before suggesting it. I just had a look and
found nothing of any real use to an OS writer. It talks only in
generalities far too vague to write code to.
/~\ The ASCII der Mouse
\ / Ribbon Campaign
X Against HTML mouse(a)rodents.montreal.qc.ca
/ \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B