在上一篇文章中,我们已经能从ring0级进入到ring3级,在这里我们将再加上从ring3级到ring0级。从ring3级到ring0级这需要使用在第十四篇文章中提到的调用门来实现。即在进入ring3级后,在使用调用门来调用ring0级代码(注意当发生特权级转换时,堆栈是发生了变化的,上一篇文章已说明从ring0级到ring3级堆栈所发生的变化。当从ring3到ring0级时,ring0级堆栈信息要放在TSS中,转换时,会从中取得ring0级堆栈的信息,将ss和esp指向这个堆栈)。特权级在描述符中存储。 在上一篇文章中,我们已经能从ring0级进入到ring3级,在这里我们将再加上从ri