- 论坛徽章:
- 0
|
新手在学习linux kernel的问题:
在中断或异常发生的时候,若CPL和DPL不相等的情况下,会改变堆栈来切换到新的privilege的堆栈下
但是ULK3上面说的是先取出新的ss和esp,然后在新的堆栈下面保存以前的ss和esp,但是既然ss和esp已经变了,怎么还能保存以前的呢?
ULK3上的原文如下:
第142页
Loads the ss and esp registers with the proper values for the stack segment and stack pointer associated with the new privilege level. These values are found in the TSs
In the new stack,it saves the previous values of ss and esp,which define the logical address of the stack associated with the old privilege level
请大家告诉一下小弟这是为什么? |
|