操作系统教学课件:第4章 存储器管理-2.ppt
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
操作系统中的存储器管理是至关重要的,它涉及到如何高效地利用有限的内存资源并提供灵活的内存访问机制。在第四章的“存储器管理-2”课件中,主要讲解了两种存储管理方式:分页系统和分段系统,以及它们的特点、优缺点以及如何进行地址转换。 我们来看分页存储管理。分页系统将内存划分为固定大小的块,称为页,通常用于简化内存管理。它的优点是显著提高了内存利用率,因为页是物理单位,可以有效地防止外部碎片。然而,分页系统的一个不足之处是页并不具有完整的逻辑意义,这可能不满足程序员和用户的某些需求,如编程时的逻辑结构或者信息共享。 为了克服分页系统的局限性,引入了分段存储管理。分段系统是基于逻辑信息单位来组织内存的,每个段都有自己的名称、长度和逻辑地址。这带来了以下几个好处: 1. 方便编程:程序可以按照逻辑功能划分成多个段,便于理解和管理。 2. 信息共享:段作为信息的逻辑单位,可以方便地实现不同进程之间的共享。 3. 信息保护:每个段都可以独立设置权限,有利于保护数据安全。 4. 动态增长:某些段(如数据段)可以随着程序运行而动态扩展。 5. 动态链接:分段使得动态链接更加便捷,因为链接是以段为单位进行的。 分段存储管理中,每个段都有一个段表项,记录了段的长度和在内存中的基地址。段表通常存储在内存中,逻辑地址由段号和段内偏移量组成,形成二维逻辑地址结构。逻辑地址的段号宽度取决于系统允许的最大段数,而段内位移宽度则由最大段长决定。 地址转换在分段系统中涉及从逻辑地址到物理地址的映射。这个过程需要通过段表完成,首先根据逻辑地址中的段号查找段表,得到对应段的基地址,然后将段内偏移量加上基地址,得到物理地址。如果逻辑地址超出段表定义的范围,系统会触发越界中断。 课件中还给出了几个例子,演示了如何根据段表进行地址转换。例如,在一个允许最大段号为8位的系统中,如果段号是0,段内位移是430,根据段表找到段0的基址是210K,那么物理地址就是210K + 430 = 21430K。另一个例子是段号2,段内位移120,如果段表显示段2的基址是1350K,段长是590,那么物理地址是1350K + 120 = 13620K。 总结起来,分页和分段存储管理各有优势,分页系统侧重于内存碎片的控制,而分段系统更注重满足用户和程序的逻辑需求。在实际操作系统中,为了结合两者的优点,有时会采用段页式存储管理,即每个段再细分成页,这样既保持了逻辑的完整性,又实现了高效的内存管理。
剩余19页未读,继续阅读
- 粉丝: 25
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助