
计算机系统学习
soul_xhy
为一切美好而奋斗
展开
-
x86 特权级切换过程
通过中断切换特权级当中断(硬件中断、软中断(INT指令)、异常)产生时,会保存SS|ESP|EFLAGS|CS|EIP|ErrorCode,SS和ESP 表示中断时堆栈信息,CS和EIP 表示中断处理完成后返回的地址,EFLAGS 表示中断时程序标志位(加减、溢出)。特权级切换原理:1)高特权级(level0)到低特权级(level3) :直接将CS的CPL从0改成3、再将SS、ESP、EIP赋值为level3 的地址、再通过执行IRET指令完成切换。2) 低特权级到高特权级 :在level3中使用原创 2020-08-20 08:30:46 · 945 阅读 · 0 评论 -
x86保护模式中的特权级
x86特权级4种特权级0-3 特权级,从0-3 分别为内核操作系统、(level1、2特权级空闲),应用程序(level3)特权级间的区别:在执行一些特权指令时会做特权级检查,例如访问数据段、访问页、进入中断服务例程(ISRs)特权级检查原理:数据段、代码段、中断异常都有自己的特权级描述位(2bit),RPL(Requeted Privilege Level) 是数据段寄存器特权级,CPL 是代码段特权级,DPL 是段描述符,门描述符。检查通过情况:1)访问门时 CPL <=DPL[门]原创 2020-08-18 22:40:57 · 633 阅读 · 0 评论