内存管理——段寄存器

  所有内容均翻译自 Intel CPU 手册,再经过整理,难免有误,见谅。

 

CS,SS,DS,ES,FS,GS

# 段寄存器分为可见部分和隐藏部分(描述符高速缓存器)。在保护模式下,当段选择符装载入段寄存器的可见部分的时候,处理器会从该段选择符指向的段描述符中,将段基址、段界限、访问权限装载入不可见部分。使得处理器在进行地址转换的时候,不需要额外花费总线周期从段描述符中获取段基址、段界限、访问权限这些信息。

 

其他:

- 需要注意的是,当描述符表被修改后,软件必须重新装载段寄存器,否则会使用到旧的段描述符。

- 装载指令:

01. 直接装载指令:MOV、POP、LDS、LES、LSS、LGS、LFS。
02. 隐式装载指令:CALL FAR、JMP FAR、RET FAR、SYSENTER、SYSEXIT、IRET、INT n、INTO、INT 3、INT 1,这些指令用于改变CS中的值,但也会改变其它段寄存器中的值。

 


参考资料
Combined Volume Set of Intel® 64 and IA-32 Architectures Software Developer’s Manuals
posted @ 2021-10-31 19:06  HyperVS  阅读(324)  评论(0)    收藏  举报