Homework: x86 MMU

Read chapters 5 and 6 of Intel 80386 Reference Manual. These chapters explain the x86 Memory Management Unit (MMU), which we will cover in lecture today and which you need to understand in order to do lab 2.

Read: bootasm.S and setupsegs() in proc.c

Hand-In Procedure

You are to turn in this homework during lecture. Please write up your answers to the exercises below and hand them in to a 6.828 staff member by the beginning of lecture.

Assignment: Try to understand setupsegs() in proc.c. What values are written into gdt[SEG_UCODE] and gdt[SEG_UDATA] for init, the first user-space process? (You can use Bochs to answer this question.)