段类型如何相互区分?

问题描述 投票:0回答:1

如何识别不同类型的细分市场?维基百科说:

可以将段定义为代码,数据或系统段

它还指出:

第12位清除的描述符是“系统描述符”,用于特殊目的。

所以,我认为这个“系统位”用于识别系统段,但是代码和数据段呢?此外,由于这些标识符是单独存储而不是单个2位值,您是否可以获得组合类型,如系统代码和系统数据段?

x86 x86-64 hardware intel gdt
1个回答
3
投票

段描述符的Type字段不是一位而是四位。

Format of a segment descriptor with 1 bit for the system/non-system type and 4 bit of sub type

S字段定义描述符是否是系统描述符(位清除)。 Type字段的解释取决于S的值。

非系统描述符

Non system descriptors

系统描述符

System descriptors


为了更好地理解保护/长模式分割是如何工作的,我建议你放弃维基百科以支持英特尔手册。

© www.soinside.com 2019 - 2024. All rights reserved.