操作系统(十一)

 

段模式的评价和实际采用情况

(1)内存利用率

关于空闲空间利用率的情况:1)和可变分区相比,仍存在外部碎片。但是程度大大减少,仍存在内部碎片的程度大了一些,但总的来说空间的利用率比可变分区高。

2)于页式相比,同样是不连续,但是不连续程度没有页式的高,显然那没有页式的管理效果好。虽然段模式的内部碎片要不页模式的少,但是确存在外部碎片。段模式下的外部存储碎片的严重程度依赖于平均段长,小一些的段就有可能放入可用的空闲块中。

关于已用空间的情况:1)在虚存模式下,此次运行用不到的段不会进入内存,且用完而不再用的段或有一段时间不用的段可及时调出内存以腾出空间。2)段模式下通过共享代码段来节省内存空间。

(2)段模式下的保护

段模式下的保护机制,出可以进程段长越界检查之外,还可以在进程表中增加权限位。权限位指出每段是可读的,可写的,只执行的。若不符合内存权限,则陷入内存的非法获取。同时,对于像数组这样的需要越界保护的数据,可以定义为单独的一段。以便提供完整的保护。

(3)段模式下的共享

段模式下的共享是通过不同进程表中的指向同一段基址来实现的。

因此,在段模式下既可以共享代码又可以共享数据。准确的说,可以共享程序的任何内容,只要单独成段。故段模式下的共享也是非常充分的,这是除保护模式之外的段式的另一大好处。这种以程序逻辑为依据的分段,非常有利于共享。

(4)段模式下的动态扩充:从逻辑编制角度看,与页模式比较,二维编制可以使得段模式可以多处伸缩。从物理内存个角度来看,则和可变分区相似,受是否有相邻长度的限制。

(5)因段模式下可以是用虚存技术,因此可以解决装不下的问题,但是没有页模式解决的好。

(6)段模式的实现要比可变分区复杂,因为块数较多而且需要维持进程表。同时也比页式复杂,因为需要设计分配算法。

 

段页式

段页式存储管理摩斯的段模式与页模式结合的产物,是利用二者的优点和避免二者的缺点而提出的。段页式是将内存划分为等长的页面,将每个用户程序先划分为段,再将每段划分为页,页内必须连续完整存放,但页间可以不连续,也不一定要求所有的页都进入内存。段页式基本上结合了段式和页式的有点,内存利用率较高。

 

总结

进程逻辑空间(程序逻辑空间,虚地址空间),是指一个程序执行时由CPU向MMU发出的所有地址所构成的地址空间。进程逻辑空间的编制方式有一维的连续编址(连续的编制),二维的编制(或称不连续的编制)和重叠编制3种。

进程的物理空间是指该进程所占据的所有实际物理地址(绝对地址)构成的地址空间。

一个进程的逻辑空间和物理空间可以一致也可以不一致。地址不一致时需要重定位和映射。这时称逻辑地址为相对地址,物理地址被称为相对地址。进程的逻辑空间比物理空间大的时候称为虚存。内存的逻辑空间是说有进程的逻辑空间加上进程号组成。是一个纯概念的空间。

虚存技术是相对于进程逻辑空间与进程物理空间的大小相对关系而言的。而交换技术则是相对于内存逻辑空间与内存物理空间大小对应关系而言的。交换意味着内存逻辑空间比内存物理空间大。此时的内存逻辑空间=内存物理空间+盘交换区。但在虚存下,盘交换区的大小要比交换技术下的盘交换区小得多。这是由虚存与文件交换技术的本质区别。

单任务和多任务是相对于内存逻辑空间和进程逻辑空间的数量对应关系而言的。但在任务下内存逻辑空间的编址是唯一的——内存逻辑空间就是进程的逻辑空间。多任务下的内存逻辑空间的编址是一维的。内存的逻辑空间由多个进程的逻辑空间组成。

单道和多道是相对于内存物理空间与进程物理空间的数量对应关系而言的。多道是相对于内存物理空间与进程物理空间的数量对应关系而言的。虚存不一定多道,多道不一定是虚存。单道和多道下都即可能是连续的也可能是不连续的。在单道下若采用不连续技术,一定旨在虚存。而在多道下采用不连续技术不一定旨在虚存。可能只是为了充分利用内存空间。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值