



版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六章 存储器管理朱敏2014年5月13日地址绑定 确定程序的指令和数据在内存中的位置 编译时: 绝对代码(只能放在内存中的特定位置) 加载时: 可重定位代码(每次加载,修改地址值) 运行时: 程序可以在内存中移动 访问程序时,临时计算 完整过程:地址变换 编译: 由源文件翻译成包含机器码的目标文件 为变量名指派目标文件内的相对地址 链接: 将多个目标文件打包成可执行文件 根据对应关系,把相对地址修改成逻辑地址 加载:把可执行文件装入内存中 运行:把逻辑地址转换成物理地址程序的一生101010101010101010101010101010101010101010101010ccx.cx.sa
2、sx.o101010101010101010101010101010101010101010101010ccy.cy.sasy.o101010101010101010101010101010101010101010101010ccz.cz.sasz.o101010101010101010101010101010101010101010101010源代码汇编代码目标文件可执行文件a.out编译器汇编器链接器加载器ldOSCode0DataStack进程的内存逻辑结构 堆栈(Stack)向下生长 堆(Heap)向上生长 静态数据(Data)固定 代码(Code)只读 分段式存储管理的时候内存是什么
3、样的呢?Code0StackHeapHeapDataData1111 1111heapheapcodecodedatadata逻辑地址视图物理地址视图datadataheapheap0000 00000100 0000(0 x40)1000 0000(0 x80)1100 0000(0 xC0)段号段号偏移codecode0000 00000001 0000(0 x10)0101 0000(0 x50)0111 0000(0 x70)1110 0000(0 xE0)段号段号# #基址基址容量容量11111011 00001011 00001 00001 000010100111 0000011
4、1 00001 10001 100001010101 00000101 000010 000010 000000000001 00000001 000010 000010 0000stackstack1111 0000(0 xF0)stackstack1011 0000 + 11 0000-1110 00001111 1111stackstackheapheapcodecodedatadata逻辑地址视图物理地址视图datadataheapheapstackstack0000 00000100 00001000 00001100 00001110 0000段号段号偏移codecode0000
5、00000001 00000101 00000111 00001110 0000段号段号# #基址基址容量容量11111011 00001011 00001 00001 000010100111 00000111 00001 10001 100001010101 00000101 000010 000010 000000000001 00000001 000010 000010 0000当堆栈向下生长当堆栈向下生长到到1110 00001110 0000的时的时候,会发生什么?候,会发生什么?1111 1111stackstackheapheapcodecodedatadata逻辑地址视图物理
6、地址视图datadataheapheapstackstack0000 00000100 00001000 00001100 00001110 0000段号段号偏移codecode0000 00000001 00000101 00000111 00001110 0000段号段号# #基址基址容量容量11111011 00001011 00001 00001 000010100111 00000111 00001 10001 100001010101 00000101 000010 000010 000000000001 00000001 000010 000010 0000物理视图堆栈已经溢出物
7、理视图堆栈已经溢出了,需要扩大容量,有了,需要扩大容量,有可能还要调整位置可能还要调整位置1111 1111stackstackheapheapcodecodedatadata逻辑地址视图物理地址视图datadataheapheapstackstack0000 00000100 00001000 00001100 00001110 0000段号段号偏移codecode0000 00000001 00000101 00000111 00001110 0000段号段号# #基址基址容量容量11111011 00001011 00001 00001 000010100111 00000111 000
8、01 10001 100001010101 00000101 000010 000010 000000000001 00000001 000010 000010 0000物理视图堆栈已经溢出物理视图堆栈已经溢出了,需要扩大容量,有了,需要扩大容量,有可能还要调整位置可能还要调整位置分页式的又会是什么样的呢?分页式的又会是什么样的呢?1111 1111stackheapcodedata逻辑地址视图0000 00000100 00001000 00001100 00001111 0000页号页号偏移物理地址视图datacodeheapstack0000 00000001 00000101 0000
9、111 0001110 000011111 1110111110 1110011101 null 11100 null 11011 null11010 null11001 null11000 null10111 null10110 null10101 null10100 null10011 null10010 1000010001 0111110000 0111001111 null01110 null 01101 null01100 null01011 01101 01010 01100 01001 0101101000 0101000111 null00110 null00101 null
10、 00100 null 00011 0010100010 0010000001 0001100000 00010页表1110 11111111 1111stackheapcodedata逻辑地址视图0000 00000100 00001000 00001100 00001111 0000页号页号偏移物理地址视图datacodeheapstack0000 00000001 00000101 0000111 0001110 000011111 1110111110 1110011101 null 11100 null 11011 null11010 null11001 null11000 null
11、10111 null10110 null10101 null10100 null10011 null10010 1000010001 0111110000 0111001111 null01110 null 01101 null01100 null01011 01101 01010 01100 01001 0101101000 0101000111 null00110 null00101 null 00100 null 00011 0010100010 0010000001 0001100000 00010页表1110 1111当堆栈向下生长当堆栈向下生长到到1110 00001110 000
12、0的时的时候,会发生什么?候,会发生什么?stack1111 1111stackheapcodedata逻辑地址视图0000 00000100 00001000 00001100 0000页号页号偏移物理地址视图datacodeheapstack11111 1110111110 1110011101 1011111100 1011011011 null11010 null11001 null11000 null10111 null10110 null10101 null10100 null10011 null10010 1000010001 0111110000 0111001111 null01110 null01101 null01100 null01011 01101 01010 01100 01001 0101101000 0101000111 null00110 null00101 null 00100 null 00011 0010100010 0010000001 0001100000 00010页表0000 00000001 00000101 0000111 0001110 0000分配空闲页给分配空闲页给程序。程序。1110 0000分段式存储管理 x86汇编语言,段寄存器 程序段:CS + 程序计数器 IP 堆栈段:SS +
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 潜水装备的水下作业安全意识培养与提升考核试卷
- 舞蹈教育在儿童成长中的作用考核试卷
- 窗帘面料的环保染整技术考核试卷
- 四川水利职业技术学院《临床检验仪器与技术》2023-2024学年第二学期期末试卷
- 山西省运城市万荣县2025年初三下学期第二次模拟考试化学试题文试卷含解析
- 山东省威海市文登区文登实验、三里河中学2025届中考化学试题模拟试卷(8)含解析
- 沈阳工业大学《现代地球物理学进展》2023-2024学年第二学期期末试卷
- 潍坊学院《大学写作实践课》2023-2024学年第二学期期末试卷
- 景德镇市重点中学2024-2025学年初三考前热身生物试题试卷含解析
- 天门职业学院《应用真菌学》2023-2024学年第二学期期末试卷
- 航空航天凝胶应用
- 陕西省2024年中考化学真题(含答案)
- 2024年度危废培训完整课件
- 2024秋期国家开放大学《可编程控制器应用实训》一平台在线形考(形成任务6)试题及答案
- 《PBR次世代游戏建模技术》(微课版)课件 2低模制作
- 2022年广东省高考数学试卷(新高考I)(含答案)
- 中医四季养生之道课件
- 二下音乐《阿西里西(简谱、五线谱)》公开课课件
- 【涪陵榨菜产品成本控制问题及完善措施分析9600字】
- 巾帼家政职业技能竞赛(家政服务)理论考试题库(含答案)
- 终止合作意向书
评论
0/150
提交评论