存储管理(1)

2020-06-21  本文已影响0人  R_est

内存管理功能

地址映射方式 描述 特点
固态地址映射 编程或编译时确定逻辑地址和物理地址映射关系 程序加载时必须放在指定的内存区域,容易产生地址冲突、运行失败
静态地址映射 程序装入时由操作系统完成逻辑地址到物理地址的映射 程序运行前确定映射关系,程序装入后除放回原位外不能移动,程序占用连续内存空间
动态地址映射 在程序执行过程中把逻辑地址转换为物理地址 同静态地址映射,不过访问时临时确定映射关系。程序占用的储存空间可动态变化,要求及时更新基址,程序不要求占用连续内存空间,只需系统知道每段程序放置的基址,便于多个进程共享代码,共享代码作为独立的一段存放。然而,需要硬件支持(MMU,内存管理),软件复杂

对静态地址映射和动态地址映射都有:逻辑地址(Virtual Addr. VA)= 装入基址 (Base Addr. BA)+物理地址(Memory Addr. MA)

物理内存管理

内存覆盖技术让程序正常运行

解决方法
1.规定门限值,分配空闲区时,若剩余部分小于门限值,则此空闲区不进行分割,全部分配给用户。
2.内存拼接计算,将所有空闲区集中一起构成一个大的空闲区。但容易消耗系统资源,要停下系统进行拼接(离线拼接),又要重新定义作业。
拼接的时机
释放区回收的时候,拼接频率过大,系统开销大
系统找不到足够大的空闲区时,空闲区的管理复杂
定期,空闲区的管理复杂
3.解除程序占用连续内存才能运行的限制,把程序拆分多个部分装入不同分区,充分利用碎片

特点 缺点
源程序直接使用内存物理地址 程序间容易访问冲突
程序必须全部装入内存才能运行 内存太小程序无法运行
程序占用连续的一片内存空间 产生内存碎片
多程序同时运行容易相互干扰 不安全
上一篇 下一篇

猜你喜欢

热点阅读