双机调试
查看寄存器信息命令:r
段寄存器结构如下:
代码段寄存器 cs = 0008 = 1000B  -->  索引:1,    TI:00,   RPL:0
查看GDT表:
kd> r gdtr
gdtr=80b95000
kd> dq 80b95000
80b95000  00000000`00000000 00cf9b00`0000ffff
80b95010  00cf9300`0000ffff 00cffa00`0000ffff
80b95020  00cff300`0000ffff 80008b1e`400020ab
80b95030  834093f7`fc003748 0040f200`00000fff
80b95040  0000f200`0400ffff 00000000`00000000
80b95050  830089f7`d0000068 830089f7`d0680068
80b95060  00000000`00000000 00000000`00000000
80b95070  800092b9`500003ff 00000000`00000000

根据索引找到对应的代码段的描述符:00cf9b00`0000ffff

Base G D L AVL LIMIT P DPL S TYPE Base
  1 1 0 0   1 00 1 1011  
00               c   f           9 b 00
Base LIMIT
0000 ffff
段基址:0000 0000
段大小:G为1 所以  FFFFF x 4KB  也就是4GB
默认操作数大小:D位为1,所以默认操作数大小以及默认寻址大小就是32位
64位代码段标志L位:0表示否
DPL:说明访问这个段,需要0环权限
S:为1,说明这是代码段或者数据段
TYPE:1(代码段)  0(非一致性代码段)  1(可读的)  1(此段已经被访问过了)
从加粗部分来看的话,这个描述描述的是一个0环代码段。

内核层CS段描述符信息相关推荐

  1. 用户层CS段描述符信息

    接着上一篇"内核层CS段描述符信息"https://blog.csdn.net/yusakul/article/details/80724748 Windbg命令窗口输入命令:g, ...

  2. 数据段描述符和代码段描述符(一)——《x86汇编语言:从实模式到保护模式》读书笔记10

    一.段描述符的分类 在上一篇博文中已经说过,为了使用段,我们必须要创建段描述符.80X86中有各种各样的段描述符,下图展示了它们的分类. 看了上图,你也许会说:天啊,怎么这么多段描述符啊!我可怎么记住 ...

  3. 分段管理机制(段描述符,描述符表,段选择符)

    逻辑地址-=>线性地址-=>物理地址 前面我们提到了当使用80x86微处理器时,有三种不同的地址: 逻辑地址(logical address):包含在机器语言指令中用来指定一个操作数或一条 ...

  4. 段选择符和段描述符的关系

    段选择符用来表示指向哪个段描述符,即用来在段描述符中寻址,前13位是地址,能寻0到(2^13)-1,因此段描述符表的大小就是 8192,他还牵扯到一些特权级的限制,后三位:段描述符是用来表示这个段的一 ...

  5. (2) [保护模式]段描述符

    段描述符 1. 段选择子 2. 段描述符 注解: 段选择子index的使用 查GDT表填充段寄存器 向上拓展与向下拓展 一致代码段与非一致代码段 隐式堆栈访问 如果文中有错误,还请指正 1. 段选择子 ...

  6. gdt描述_GDT表与段描述符

    Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html GDT表与段描述符 一.介绍 如果之前学习过"实模式&q ...

  7. Linux中文件描述符1,linux内核中的文件描述符(一)--基础知识简介

    原标题:linux内核中的文件描述符(一)--基础知识简介 Kernel version:2.6.14 CPU architecture:ARM920T Author:ce123(http://blo ...

  8. 1.段描述符与段选择子

    80386中段寄存器分别有: ES CS SS DS FS GS LDTR TR 共96位,其中有16位是可见的,80不可见 至于为什么是96位下面有讲 //结构体表示: Struct Segment ...

  9. 数据段描述符和代码段描述符(二)——《x86汇编语言:从实模式到保护模式》读书笔记11

    这篇博文,我们编写一个C语言的小程序,来解析数据段或者代码段描述符的各个字段.这样我们阅读原书的代码就会方便一点,只要运行这个小程序,就可以明白程序中定义的数据段或者代码段的描述符了. 这段代码,我用 ...

最新文章

  1. Aras学习笔记(1)学习Aras已半年有余,也积攒一些学习笔记,今天起会陆续分享出来,有兴趣的朋友一起交流...
  2. ubuntu 中 pip 出现 ModuleNotFoundError: No module named ‘pip._internal‘
  3. div在最顶层显示----弹出框效果
  4. 8086的内存分段机制
  5. 为什么大厂都用DevOps呢?我来告诉你
  6. [WinError 127] 找不到指定的程序
  7. std::setprecision、std::ios::fixed使用说明
  8. 数据结构之队列的定义与简单实现
  9. Linux运维问题解决(4)——linux LVM技术 逻辑卷增加 扩容 缩小 删除等操作
  10. python实现将子文件夹下的图片复制到新的文件夹并重命名
  11. Ext中extend
  12. Jquery常用开发插件收集
  13. SQLyog备份数据库
  14. 推荐16个超棒的国外免费PSD资源素材网站
  15. awvs安装|User acunetix already exist. Home directory for user acunetix not found.
  16. 初学Python案例之一(开平方代码)
  17. 【源码】核磁共振成像的脑部肿瘤检测与分类
  18. 生物医学数据统计分析-相关性分析
  19. 计算机网络——网际互连协议 IP
  20. disableHostCheck: true 报错

热门文章

  1. 罕见图像揭秘苹果Mesa数据中心
  2. 成功解决ValueError: Unable to add relationship because child variable ‘ID‘ in ‘cats_df‘ is also its inde
  3. 成功解决AttributeError: module tensorflow has no attribute reset_default_graph
  4. 成功解决A value is trying to be set on a copy of a slice from a DataFrame. Try using .loc[row_indexer,co
  5. 成功解决AttributeError: module tensorflow.compat has no attribute v1
  6. DL之yolov3:使用yolov3算法时需要对Ubuntu系统进行配置的简介、过程步骤之详细攻略
  7. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(LabelFrame/Checkbutton/Radiobutton)
  8. 蓝桥杯_风险度量(一题多解)
  9. RocketMQ学习笔记(7)----RocketMQ的整体架构
  10. VS Code Remote,在服务器上开发程序,开启全新开发模式