perhaps this is completely obvious, but why are the first
4 mb double-mapped in l.s at virtual address 0 and KZERO?
also, am i mixed up or should the comment about the double
mapping be on the following line?
- erik
/*
* Now ready to use the new map. Make sure the processor options are what is
wanted.
* It is necessary on some processors to immediately follow mode switching with
a JMP instruction
* to clear the prefetch queues.
*/
MOVL $PADDR(CPU0PDB), CX /* load address of page
directory */
MOVL (PDO(KZERO))(CX), DX /* double-map KZERO at 0 */
MOVL DX, (PDO(0))(CX)
MOVL CX, CR3