逻辑地址,线性地址,和物理地址
虚拟地址就是程序员人为分类,汇编语言中出现的都是逻辑地址
逻辑地址+段地址就成了线性地址,在linux中逻辑地址等于线性地址,因为linux的段都是从0开始
然后线性地址通过MMU,查分页目录表和分页表来转换为物理地址,
32位的线性地址被分成3个部分:
最高10位 表示 页目录表偏移量,中间10位 是页表偏移量,最低12位是物理页内的字节偏移量。每个活动的任务,必须要先分配给它一个页目录表,并把页目录表的物理地址存入cr3寄存器。页表可以提前分配好,也可以在用到的时候再分配。