总线
1.地址总线
2.数据总线
3.控制总线
实模式与保护模式
特点 | 实模式 | 保护模式 |
---|---|---|
运行 | CPU复位(reset)或加电(power on)启动时 | 加载操作系统模块 |
访问内存大小 | 1M | 4G |
物理地址 | 物理地址(physicaladdress)=段值(segment) * 16 + 偏移(offset) | 32 位保护模式下,段地址是 32 位的线性地址,如果未开启分页功能,该线性地址就是物理地址。 |
UVPT
在kern/pmap.c中的mem_init()函数中
//
// Recursively insert PD in itself as a page table, to form
// a virtual page table at virtual address UVPT.
// (For now, you don't have understand the greater purpose of the
// following line.) 递归地将PD本身作为页表插入,以在虚拟地址UVPT形成一个虚拟页表(现在,你不用理解接下来一行的深层目的)
// Permissions: kernel R, user R
kern_pgdir[PDX(UVPT)] = PADDR(kern_pgdir) | PTE_U | PTE_P;