段地址到线性地址的转换:根据段寄存器TR获取段选择符,该选择会GDT中找到对应的段描述符,段描述符会给出基地址,然后用该基地址+偏移量(si,sp等变址寄存器)就会得到线性地址。
线性地址到物理地址:根据控制寄存器CR3得到页目录的基地址,该基地址+偏移量(线性地址的22~31位)得到页目录项;该页目录项的内容保存着页表的基地址,页表的基地址+偏移量(线性地址的12~21位)得到物理地址的基地址,物理的基地址+偏移量(线性地址的0~11位)得到每个字节的真实物理地址。
转换图如下:
段地址到线性地址的转换:根据段寄存器TR获取段选择符,该选择会GDT中找到对应的段描述符,段描述符会给出基地址,然后用该基地址+偏移量(si,sp等变址寄存器)就会得到线性地址。
线性地址到物理地址:根据控制寄存器CR3得到页目录的基地址,该基地址+偏移量(线性地址的22~31位)得到页目录项;该页目录项的内容保存着页表的基地址,页表的基地址+偏移量(线性地址的12~21位)得到物理地址的基地址,物理的基地址+偏移量(线性地址的0~11位)得到每个字节的真实物理地址。
转换图如下: