(5)段描述符S位,TYPE域
一、段描述符S位
S=1,表示代碼段/數據段;
S=0,表示系統段。
二、段描述符TYPE域
TYPE域共4位,可以通過查表來確定其含義。
TYPE域高位為0時,表示數據段;高位為1時,表示代碼段。
數據段
E=0,表示向上擴展,windows只使用向上擴展;E=1,表示向下擴展。
以上圖為例,使用向上擴展,段的范圍就是紅色部分;使用向下擴展,段的范圍就是綠色部分。
A=0,表示段未被訪問;A=1,表示段曾被訪問。
代碼段
C=0,表示非一致代碼段;C=1,表示一致代碼段。
R=0,表示不可讀;R=1,表示可讀。
A=0,表示段未被訪問;A=1,表示段曾被訪問。
三、練習
1、判斷哪些是系統段描述符?哪些是代碼或者數據段描述符?
看S位,高4字節的第5個十六進制字符的最低位就是S位。
這里的‘9’是1001,S=1,就是代碼段或數據段。
這里的8是1000,S=0,就是系統段。
2、判斷哪些是代碼段描述符?哪些是數據段描述符?
根據題意,先找幾個S=1的來分析、。
00cf9300 0000ffff
type=0x3=0011
最高位是0,是數據段。
00cffb00 0000ffff
type=0xb=1011
最高位是1,是代碼段。
3、拆分幾個數據段:E W A
00cf9300 0000ffff
0x3=0011
E:0
W:1
A:1
4、拆分幾個代碼段:C R A
00cffb00 0000ffff
0xb=1011
C:0
R:1
A:1
5、拆分幾個系統段描述符
80008b04 200020ab
0x8=1000,S=0,所以是系統段;
0xb=1011
四、系統段描述符表
查表得 32-Bit TSS(Busy)
總結
以上是生活随笔為你收集整理的(5)段描述符S位,TYPE域的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (4)段描述符P,G位
- 下一篇: (6)段描述符D/B位