On 3 Aug 2008 at 18:16, Tony Duell wrote:
But the 80286 starts executing at location 0FFFF0 on
reset too, even
though it has a 24 bit adress bus. That is, somewhere in the middle of
the address space. Neither at the very start, or near the top. That, on a
machine without a true MMU, is brain-dead IMHO. It lead, of course, to
the 'A20 gate' in the PC/AT, etc.
Think about it--it makes sense from Intel's point of view. They get
a CPU that boots in real mode with a memory map identical to that of
the 8086. Software interrupts still vector to low memory, the reset
jump is at the top of addressable memory. When you enter protected
mode, the memory layout is pretty much immaterial. The jump to
0FFFF0 does not preclude using "shadowing" any more than it does to
put the jump to 00000. Remember that the 80286 was intended as a
product-line filler for the 808x line and probably intended to be
(from everything I've read) the last member of the family.
To me, the huge break in the family philosophy is represented by the
80386; essentially implementing not only real mode, but TWO protected-
memory management architectures. You may have exchanged your horse
for a car, but you've still got a buggy whip and feedbag, just in
case.
Cheers,
Chuck