
覆盖和交换技术是在多程序环境中扩展内存的两种方法.
覆盖技术主要用于早期操作系统,而交换技术在现代操作系统中仍然具有强大的生命力.
1. 内存覆盖(覆盖)
在早期的计算机系统中,主存储器容量很小. 尽管仅一个用户程序存储在主存储器中,但是用户处理无法放入存储空间的现象也经常发生. 这种矛盾可以用覆盖技术解决. 覆盖的基本思想是: 由于程序不需要随时访问程序和数据的所有部分(特别是大型程序),因此用户空间可以分为固定区域和几个覆盖区域. 将频繁使用的部分放在固定区域中,其余部分根据调用关系进行分段. 首先,将要访问的那些段放入覆盖区域,然后将其他段放置在外部存储中. 在调用它们之前,系统会将它们转移到覆盖区域并替换覆盖区域中的原始段.

----覆盖技术的实现是将程序分为几个功能上独立的程序段什么是内存的覆盖和对换技术,并根据其自己的逻辑结构,那些不会同时运行的程序段共享相同的存储区. 程序段首先保存在磁盘上,相关程序的前一部分执行完毕后,后一个程序段将被传输到内存中,从而覆盖前一个程序段.
----所谓的覆盖是将一个大型程序划分为一系列覆盖. 每个封面都是一个相对独立的程序单元. 执行程序时,不需要同时加载到内存中的覆盖物会被分组在一起. 这称为覆盖段. 覆盖片段中的覆盖共享相同的存储区域,该区域成为覆盖区域,与覆盖片段对应. 显然,为了使覆盖区域在相应覆盖范围内的每个覆盖范围在不同时间共享,其大小应由覆盖范围内的最大覆盖范围来确定.
----覆盖率技术要求程序员将程序划分为不同的程序段,并指定其执行和覆盖率顺序. 操作系统根据程序员提供的覆盖结构来完成程序段之间的覆盖.
例如,一个用户程序由6个模块组成. 下图显示了每个模块的调用关系. Main模块是一个独立的段,称为A和B模块. A和B是两个互斥的调用. 模块. 在执行A模块期间什么是内存的覆盖和对换技术,将调用C模块. 在执行B模块期间,它可以调用D或E模块(D和E模块也称为互斥). 为用户程序建立的coverage结构如下: Main模块是一个常驻段,其余模块构成两个coverage段.

从上面的推理可以看出,模块A和B构成了覆盖部分1,而C,D和E构成了覆盖部分2. 为了实现真正的覆盖,相应的覆盖区域应为模型的大小. 每个保险范围内的最大保险范围. 覆盖技术的特征在于它突破了进程的所有信息必须先加载到主内存中才能运行的限制,但是当同时运行程序的代码量大于该数量时,就无法运行该信息. 主内存.
2. 内存交换(交换)
交换(交换)的基本思想是:

----将处于等待(阻塞)状态(或在CPU调度原则下被剥夺运行权)的程序(进程)从内存移至辅助存储(外部存储)以释放内存空间,此过程称为换出. 将准备好竞争CPU操作的程序从辅助存储移动到内存也称为交换. 中间调度(策略)是交换技术的使用.
1)交换简介
在多程序环境中,一方面,由于尚未发生事件,所以阻止了内存中的某些进程运行,但是它占用了大量的内存空间,有时甚至内存中的所有进程都可能出现. 被阻止并迫使CPU停止并等待的情况. 另一方面,由于没有内存并且无法进入要运行的内存,因此外部存储器中有许多等待的作业. 显然,这是对系统资源的严重浪费,降低了系统吞吐量,因此添加了交换(交换)功能.
-----所谓的“交换”是指将暂时无法操作的进程或暂时未使用的程序和数据传输到外部存储,以释放足够的内存空间,然后使进程运行条件已加载到内存中.

-----如果交换是基于整个过程的,则称为“整个交换”或“过程交换”. 解决内存不足的问题.
-----如果以“页面”或“段”为单位执行交换,则分别称为“页面交换”或“段交换”. 为了实现进程交换,系统必须能够实现三个功能: 交换空间管理,进程交换和进程交换.
2)交换空间的管理
在具有交换功能的OS中,外部存储通常分为文件区域和交换区域. 前者用于存储文件,后者用于存储交换出内存的进程. 交换区域使用连续分配方法(考虑了交换速度).
3)交换并进行交换
交换: 当进程由于创建子进程而需要更多的内存空间,但没有足够的内存空间等时,系统应换出一个进程. 系统首先选择处于阻塞状态并具有最低优先级的进程作为交换进程,然后启动磁盘,并将该进程的程序和数据传输到磁盘的交换区域. 如果传输过程中没有错误,则可以恢复该过程所占用的存储空间,并可以相应地修改该过程的过程控制块.
交换: 将外部存储器交换区域中的数据和程序交换到内存中. 系统应定期检查所有进程的状态,以找出处于“就绪”状态但已换出的进程. 将具有最长交换时间(交换到磁盘)的过程作为交换过程并进行交换. 直到没有交换过程或没有交换过程为止. 交换的特征是,一旦进入主存储器,它将打破运行到最后的程序的限制,但是运行过程的大小仍受实际主存储器的限制.
----与覆盖技术相比,交换不需要程序员给出程序段之间的覆盖结构,而交换主要是在过程或操作之间进行;并且覆盖范围主要是在同一工作或正在进行的过程中. 另外,覆盖只能覆盖与覆盖块无关的块.
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-275077-1.html
就是行贿的最典型代表啊
撞啊
口头抗议是解决不了什么问题嘀