1

有一些“主管”位不允许“用户空间”执行以下操作: mov CS, 200h ?

有什么样的保护?

谢谢

4

1 回答 1

2

实际的8086 CPU 上?我不这么认为。高级保护功能只是在 80286 上才真正开始出现。对于 8086 上哪些程序可以设置代码段没有任何限制。

在处于保护模式的 80386 上(我认为这是第一个提供此功能的,但可能是 80286),CS(以及 DS、ES 等)中的值从段寄存器更改为选择器,它们必须在描述符表中有条目(例如:GDT、LDT)。

那时,保护成为可能,但我不认为是加载到选择器寄存器中导致了违规。而是使用高于您的权限级别的选择器。

虽然,对于 CS,在你改变它之后会很快发生(当你试图执行下一条指令时)。

请参阅此处了解更多信息。

于 2010-12-17T02:10:53.750 回答