第4章 内存管理ppt课件.ppt

第4章 内存管理ppt课件.ppt

ID:59017584

大小:205.50 KB

页数:51页

时间:2020-09-26

第4章 内存管理ppt课件.ppt_第1页
第4章 内存管理ppt课件.ppt_第2页
第4章 内存管理ppt课件.ppt_第3页
第4章 内存管理ppt课件.ppt_第4页
第4章 内存管理ppt课件.ppt_第5页
资源描述:

《第4章 内存管理ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章内存管理第4章内存管理本章介绍Linux内存管理子系统的整体概念,讨论存储层次结构、x86存储管理硬件和Linux虚存系统及相关系统工具。4.1存储层次结构和x86存储管理硬件4.1.1内存管理基本框架Linux内核的设计要考虑到在各种不同的微处理器上的实现,所以不能仅仅针对i386结构来设计它的映射机制,而要以虚拟的微处理器和内存管理单元MMU(MemoryManagementUnit)为基础,设计出一种通用的模式,再将其分别落实到具体的微处理器上。Linux在内存管理的软件实现方面,提供了不同的接口,可以用于各种各样不同地址线宽度的CPU。Intel

2、的80386提供了两层影射的页式内存管理的件支持,一层是页面目录称为PGD(PageDirectory),另一层是页表称为PT(PageTables),PT的表项称为PTE(PageTableElements)。通过它们实现从线性地址到物理地址的转换。这种两层影射方式对于32位地址线的386是很合适的。但Linux要设计成可在不同的CPU下运行,考虑到大于32位地址线宽度的CPU(例如64位的CPU),Linux内核的映射机制被设计成3层,在页面目录和页表之间增设了一层“中间目录”PMD(PageMid-levelDirectory)在逻辑上,相应地也把线性地

3、址从高到低分为4个位段,各占若干位,分别用作目录PGD的下标、中间目录PMD的下标、页表中的下标和物理页面内的位移。如图4.1所示。PGD、PMD、PT都是数组。PageFrame是最后得到的物理页。三层影射过程如下:(1)从控制寄存器CR3中找到页目录的基址。(2)以线性地址的最高位段作为下标在PGD中找到确定中间目录的表项的指针。(3)以线性地址的次位段作为下标在PMD中找到确定页面表的表项的指针。(4)在线性地址的接下来位段为下标在PTE中找到页的指针。(5)最后线性地址的位段中为在此页中偏移量。这样,最终完成了线性地址到物理地址的转换。假如当要执行某个

4、函数的第一个句子时,CPU会通过32位地址线寻址(2的32次方,可以寻址4G的线性地址空间)。通过MMU执行以上的影射过程,就会在计算机的内存中找到这个句子的物理地址,如果要找的那一句不在物理页中,就会发生一次异常中断,使硬盘和内存发生交互。在Linux原码的include/asm-i386/gptable.h定义了能够包容不同CPU的接口:#ifCONFIG_X86_PAE//假如在PAE模式下,用三层影射结构#include#else#include//否则用两层#en

5、dif在pgtable-2level.h中定义了PGD,PMD的结构。#definePGDIR_SHIFT22//页目录是线性地址的31~22位#definePTRS_PER_PGD1024//总共有1024个页目录#definePMDIR_SHIFT22//中间目录不用了#definePTRS_PER_PMD1#definePTRS_PER_PTE1024//每个页表有1023页在32位线性地址中的4G虚拟空间中,其中有1G做为内核空间,从0XC0000000到0XFFFFFFFF。每个进程都有自己的3G用户空间,它们共享1G的内核空间。当一个进程从用户空间

6、进入内核空间时,它就不在有自己的进程空间了。在物理空间中,内核总是从0地址开始的,而在虚拟空间中是丛0XC0000000开始的。内核中的影射是很简单的线性影射,所以0XC0000000就是两者的偏移量。在page.h中:#define__PAGE_OFFSET(0xc0000000)#definePAGE_OFFSET((unsignedlong)__PAGE_OFFSET)#defne__pa(x)((unsignedlonsg)(x)–PAGE_OFFSET)//内核虚拟地址转换到物理地址#define__va(x)((void*)((unsignedlo

7、ng)(x)+PAGE_OFFSET))//内核从物理地址到虚拟地址的转换对i386微处理器来说,CPU实际上不是按3层而是按两层的模型来进行地址映射,这就需要将虚拟的3层映射落实到具体的两层的映射,跳过中间的PMD层次。4.1.2地址映射的全过程80386有实方式和保护方式两种工作方式。尽管实方式下80386的功能较Intel先前的微处理器有很大的提高,但只有在保护方式下,80386才能真正发挥作用。在保护方式下,全部32根地址线有效,可寻址达4G字节的物理空间。扩充的存储器分段管理机制和可选的存储器分页管理机制,不仅为存储器共享和保护提供了硬件支持,而且为

8、实现虚拟存储器提供了硬件支持;支持多任

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。