美文网首页
GDT/LDT/段是什么

GDT/LDT/段是什么

作者: 睦Q | 来源:发表于2019-06-15 10:50 被阅读0次

The Global Descriptor Table (GDT) is a data structure used by Intel x86-family processors starting with the 80286. 所以在arm处理器上是不需要用的。

汇编语言里的地址都是逻辑地址,也就是,不是真正的虚拟地址,需要GDT/LDT/转换成虚拟地址才能用。为什么不直接用虚拟地址呢?再研究。

随便反汇编一个程序,看汇编代码:

mov    0x80495b0, %eax

这里0x80495b0就是一个逻辑地址。其实它只是一个段的偏移量。代码底层是分段的,代码段CS, 数据段DS, 堆栈段等。所以真正的虚拟地址是段地址+偏移量。 上面这句汇编就是把DS段的偏移为0x80495b0位置的数据放入eax寄存器。

下面来找DS段地址。本来CPU有寄存器可以放DS段的地址,可以直接拿这个寄存器的值就可以。 问题是寄存器很小,只有16位,而段地址一般是64位或32位。那么装不下。

具体参考:https://blog.csdn.net/darmao/article/details/78981649

相关文章

  • GDT/LDT/段是什么

    The Global Descriptor Table (GDT) is a data structure use...

  • GDT与LDT

    GDT与LDT 引言全局描述符表与局部描述符表过去虽然看过,但是印象不深很深,后来看了《自己动手实现一个操作系统》...

  • GDT和LDT

    GDT 全局描述符表GDT(Global Descriptor Table)在整个系统中,全局描述符表GDT只有一...

  • 特权级及其特权级转移

    1 CPL/DPL/RPL DPL(DescriptorPrivilegeLevel)指GDT或LDT描述符中的D...

  • LDT

    每一个进程都会在GDT中对应一个LDT描述符。

  • GDT和LDT表

    https://zhidao.baidu.com/question/55293031.html总结: 1. GDT...

  • 时间管理之《搞定》01

    1. 什么是GDT? GDT: get thing done 把事情做完 GDT时间管理系统 头脑是无法边存储(...

  • GDT

    “君子性非异也,善假于物也”,每日自省自己能否有办法让自己的效率提高些,再提高些,要善于利用工具,让自己能用更短时...

  • GDT

    As shown in Figure 3-1, segmentation provides a mechanism...

  • 从头写一个操作系统 07

    lesson 9 你需要自己去查: GDT 本节目标: 编写 GDT 还记得lesson 6的segmentati...

网友评论

      本文标题:GDT/LDT/段是什么

      本文链接:https://www.haomeiwen.com/subject/atmvfctx.html