windows保护模式段机制和页机制简介

今天看书看到了windows的分页和分段机制,之前学习操作系统的时候老师讲过,而且还作为期中考试题目出过,

只可惜自己不努力,现在重新看一下,算是简单了解了windows的段页机制。


开始之前我们需要知道windows运行的几种模式,包括实模式、保护模式以及虚拟8086模式。

一般操作系统运行在保护模式下,程序可以使用4G大小的虚拟空间。


首先要了解以下三个概念:

虚拟地址-即程序使用的地址。程序员在编写程序时可以不用考虑底层的物理内存使用,只需要使用虚拟地址进行程序的编写。在实模式下,不采用分段分页,虚拟地址和物理地址是相同的。

线性地址-分段机制映射之后得到的地址。如果不采用分页机制,那么线性地址和物理地址是相同的。

物理地址-分页机制映射之后得到的地址。也就是程序代码、数据实际在内存中被加载的地址。


下面开始介绍分段机制。

在实模式和虚拟8086模式下段寄存器存放的是段基址,保护模式中存放的是段选择子。


虚拟地址的高16位由段寄存器给出,低32位为程序使用的地址,即偏移量。

TI的值为0指示使用的是全局描述符表,为1表示使用局部描述符表,通过索引查表,得到段描述符。段基址和原偏移量相加就得到了线性地址。

至于分页机制,


首先线性地址用10位表示页目录,这样页目录就会包括1024个表项,每个4字节,这样页表大小就是4K。

查询到页表机制加上页号就能查询到页基址,之后加上偏移量就能查询到真正的物理地址。


先介绍一个大概,其余还有很多可深入研究的部分,比如PAE模式、以及具体的各个字段的作用。等之后需要用到了再回来补充吧,希望能够给大家帮助~


以上。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值