Linux虚存分析报告(精品)

Linux虚存分析报告(精品)

ID:44416573

大小:605.81 KB

页数:31页

时间:2019-10-21

Linux虚存分析报告(精品)_第1页
Linux虚存分析报告(精品)_第2页
Linux虚存分析报告(精品)_第3页
Linux虚存分析报告(精品)_第4页
Linux虚存分析报告(精品)_第5页
资源描述:

《Linux虚存分析报告(精品)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Linux虚存分析报告方存好第一章前言2第二章LINUX虚存管理概述31、Linux虚存管理的棊木特点32、Linux虚存管理的主耍实现技术3第三章LINUX虚存管理数据结构41、32-B1T虚拟地址42、Linux的多级页表结构53、页表项的格式64、动态地址映射75、用户进程的虚拟内存结构76、我们的工作10第四章PROCESS的虚存管理数据结构的建立、维护、拆除及相关系统调用流程111、进程的载入、创建及内存管理数据结构和链结关系的建立112、数据结构及链结关系的拆除(SYS—EXIT)133、缺页中断服务14第五章主

2、要函数分析16Memory.c16MMAP.C22第六章后记29第一章前言Linux是一个功能强大的操作系统,而内存管理则是操作系统的核心,它负责管理计算机系统的存储器。作为操作系统的核心,必须能够克服物理内存的局限,使用八进程在透明方式下,拥有比实际物理内存大得多的内存。其策略Z—就是使用虚拟内存。Linux成功地实现了以虚拟内存为核心的内存管理策略,强大得分页机制,公平得交换方式,各类有效得高速缓存,以及以贝保护为主得保护措施等。内存管理的H的是耍尽町能地方便用户。同时Linux系统通过对川户进程虚存的冇效管理,作到了虚

3、存对一般用户和Linux程序员的透明。本文首先阐述了Linux虚存管理以基本特点和主要实现技术,并分析了Linux虚存管理的主要数据结构及英相关关系。围绕它的建立、维护、使用和拆除,作了一个粗浅的剖析,因本人水平有限,有不当Z处,请老师指正。同时应该指出的是本文所做的工作离不开同组的林涛、徐玫峰和范昭伟同学的帮助,谢谢他们。第二章Linux虚存管理概述Linux的内存管理采用页式管理,使用多级页表,动态地址转换机构与主存、辅存共同实现虚拟内存:每个用户Process拥有4GB的虚拟地址空间,Process在运行过程屮可以动态

4、浮动和扩展,为川户提供了透明的、灵活有效的内存使用方式,卜•面简述Linux虚存管理以基本特点和主要实现技术:1、Linux虚存管理的基本特点1.更大的地址空间。虚拟内存可以是系统实际拥有的物理内存的若干倍。因而它使得操作系统看起來拥有比实际大得多的内存。2.合理的物理内存分配°Linux通过共享和交换策略,使各个运行的进程能公平地共享内存。3.保护。Linux存储管理子系统为每一内存页设置了“上锁位”,在线性地址及每级页表页项上设置了“读/写”位,这样來确保某一个进程不受其他进程的干扰。即使某一个进程失败了,也不会影响到-

5、其他进程和操作系统本身。4.共享虚拟内存Linux实现的虚拟内存允许两个进程之间互相共享内存,例如:共享的库。在这种情形Z下,库代码仅存在于一个进程,而不需要为每一个应用都复制一份。2、Linux虚存管理的主要实现技术1>请求调页(demandingpaging)与内存扩展用户Process创建吋,并不是将它所需所有页都分配给相应物理页。开始吋只装入页面中Process的第一个页面,其他页根据Process运行过程的请求从外存调入所需页面,当Process访问一个页表项P位为()的页屮地址时,表示此页不在主存屮,将产生缺页屮

6、断,系统调用handle_mm_fault()处理访问异常,为Z分配相应物理页后,它再调用swap_in()函数,从外存中读入该页面。Linux是一种请求式分页存贮管理,这才使Z可以运行人于主存空间的Processo2、页换出策略內存中页面不足时,Linux使用页面AGE技术实现了页淘汰策略的最近最少使ffl(LRU)算法:即每次换出时,总是选择最老的页换出,对易于从其他设备上获取的非脏(notdirty)页面。Linux采用丢弃(discarding)技术,如果发生过写操作,则将该页写入系统的Swapfile屮,这样就可以

7、加快换入的速度。3、内存共享Linux将内存划分为4K大小的页而,为内存共享提供了基础:⑴不同进程间页面共享时,可令共享该页的Process的页表项(pte)均指向该页。(2)对kernel代码和数据段的共享,通过Process创建时fork()函数将kernel代码和数据段映射到用户虚存的3GB~4GB的空间中去,所以每个Process都可以通过一定方式共享kernel的代码和数据段。4、内存保护采用了“Hole”技术、虚存段的保护、地址转换机构、页表存取控制位(R/W位)等技术实现了内存保护。“Hole”技术物理内存前4

8、K是一空页(empty_刁ero_page),用來捕获NULL指针的界常访问。在Process每个虚存段后,都有一个“4K”的“Hole”,用来捕获虚存段的越界访问。——虚存段保护方式主存中虚存段的全部或部分町以设为保护方式,防止非法访问。——页表项存取控制位(R/W位)页表项以“R/W”

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

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

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