4.3全局描述符表

简介: 4.3全局描述符表

4.3全局描述符表

全局描述符表 (Global DescriptorTable。 GDT) 是保护模式下内存段的登记表, 这是不同于实模式的显著特征之一。

段描述符

因为32位机兼容实模式和保护模式

在实模式下要解决的问题:

1.实模式下的用户程序可以破坏存储代码的内存区域, 所以要添加个内存段类型属性来阻止这种行为。

2.实模式下的用户程序和操作系统是同一级别的 所以要添加个特权级属性来区分用户程序和操作系统的地位

3.内存段是一片内存区域, 访问内存就要提供段基址, 所以要有段基址属性

4.为了限制程序访问内存的范圃 还要对段大小进行约束, 所以要有段界限属性。


72453eb0620c47e5862a7e72de8e1ed4.png


上图就是段描述符的格式,下面从低到高描述以下段描述符:

上面为撒段基址被分成三份,段界限被分成两份是因为为了兼容以前的机器所做的工作。



1.第0-7位段基址:

0-7位是段基址的16-23,24-31位是段基址的24-31位 加上在段描述符低32 位中的段基址 0~15 位, 这下 32位基地址才算齐全了。

2.第8-11位type字段

目录
相关文章
|
安全 编译器 C语言
动态内存管理(malloc、calloc、realloc)详解
动态内存管理(malloc、calloc、realloc)详解
421 0
|
Ubuntu 网络安全 C语言
【VirtualBox安装Ubuntu过程记录】
【VirtualBox安装Ubuntu过程记录】
432 2
|
存储 关系型数据库 分布式数据库
实时数仓 Hologres产品使用合集之对于大量数据的写入,该如何优化
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
消息中间件 程序员 Windows
Windows消息机制《MFC深度详解》
Windows消息机制《MFC深度详解》
330 1
|
Linux 编译器 数据处理
探索Linux中的`ld`命令:链接器的奥秘
`ld`是Linux的链接器,集成在GNU Binutils中,将.o文件与库合并成可执行或共享库。它处理符号引用、重定位,支持多种文件格式及静态/动态链接。常用参数包括-o指定输出,-l和-L添加库和搜索路径。通常通过编译器驱动程序如gcc调用以简化链接过程。理解符号解析、选择静态/动态链接及管理库版本是使用ld的关键。使用--verbose选项有助于调试。
|
存储 供应链
解读ROI:ERP系统的成本与投资回报分析
解读ROI:ERP系统的成本与投资回报分析
1431 4
|
Ubuntu jenkins Java
Jenkins安装
在Ubuntu 20.04上安装Jenkins和OpenJDK 17:更新系统,安装Java,下载 Jenkins keyring,添加源,安装软件。配置Jenkins服务监听80端口,验证通过访问http://jenkins.example.com。若要直接进入管理页面或忘记密码,编辑`$JENKINS_HOME/config.xml`,移除安全相关设置。
175 0
|
JavaScript Java 测试技术
基于Java的在线商品交易平台的设计与实现(源码+lw+部署文档+讲解等)
基于Java的在线商品交易平台的设计与实现(源码+lw+部署文档+讲解等)
203 0
|
搜索推荐 算法 Android开发
盘点 Material Design 3 带来的新变化
盘点 Material Design 3 带来的新变化
385 1