Edmund GRIMLEY EVANS <[EMAIL PROTECTED]> writes:

> Maybe, but there would be very little practical benefit from having
> DFSG-free microcode. Most of the arguments for free software don't
> really apply to microcode. I work for a company that designs
> microprocessors, so I might be interested in reading the microcode
> source, if I could get my hands on it legally without signing an NDA,
> but I very much doubt anyone would want to distribute modified
> versions of it, for example.

That's crazy.

The most famous use of microcode in Unixland was the Vax 11/750.  DEC
had unfortunately changed the way floating point errors were signalled
due to a microcoding bug.  (The Vax 11/780 had them as traps [so that
the PC would skip after the failing instruction], but due to a
microcoding bug, the 11/750 had them as faults [so that the PC would
repeat the failing instruction.)  When the bug became well known, DEC
said they wouldn't fix it, and instead altered the VAX architecture
description to say that it was processor dependent whether floating
point errors were faults or traps.

This is a significant issue for users.  Fortunately, the 11/750 also
had an experimental "programmable control store" (that is, a
user-loadable microcode).  DEC would provide the specs to anyone who
wanted them, and so BSD could produce that nice little file
"pcs750.bin" which came with BSD Unix.  This was a little microcode
patch BSD wrote to convert the floating point errors on the 750 back
into traps, providing architectural consistency.

If you think there is never any need to modify the microcode, then I
ask you: why does Intel make it user-loadable in the first place?

Thomas

Reply via email to