在OS开发开始时设置SS段应该注意什么?

时间:2011-12-17 05:18:33

标签: assembly x86

我应该关闭中断吗?

我应关注多少情况?

有没有这方面的文件?

1 个答案:

答案 0 :(得分:4)

如果你必须与(E)SP一起更改SS(通常你必须),那么如果启用了中断,则必须使用单个LSS (E)SP, ...指令或两个指令来完成说明MOV SS, ... + MOV (E)SP, ...(按此顺序排列)。如果您先更改(E)SP然后更改SS,或者先更改SS,然后执行其他一些说明,然后再更改(E)SP,则必须执行所有禁用中断(例如使用CLI)因为否则您将有一个窗口,其中SS:(E)SP对将不正确/不一致,并且此时发生的任何中断都可能损坏内存。

您可以在intelAMD CPU手册中了解所有这些内容。