操作系统中分页和交换之间的区别

作者: Laura McKinney
创建日期: 2 四月 2021
更新日期: 1 七月 2024
Anonim
操作系统原理 清华大学 5.1 虚拟内存的起因
视频: 操作系统原理 清华大学 5.1 虚拟内存的起因

内容


分页和交换是两个 内存管理策略。 为了执行,每个进程都需要放置在主存储器中。交换和分页都将进程放在主存储器中以执行。 交换 可以添加到任何CPU调度算法中,在这些算法中,进程从主内存交换到后台存储,然后又交换回主内存。 分页 允许将进程的物理地址空间设置为 不连续的。让我们借助下面显示的比较表来讨论分页和交换之间的区别。

  1. 比较表
  2. 定义
  3. 关键差异
  4. 结论

比较表

比较基础分页交换
基本的分页允许进程的内存地址空间不连续。交换允许多个程序在操作系统中并行运行。
灵活性分页更加灵活,因为仅移动进程的页面。交换的灵活性较差,因为它将整个过程在主内存和后存储之间来回移动。
多程序分页允许更多进程驻留在主内存中与分页交换相比,允许更少的进程驻留在主内存中。

分页的定义

分页是一种内存管理方案,它分配了一个 非连续地址空间 一个过程。现在,当一个进程的物理地址不连续时, 外部碎片 不会出现。

分页是通过中断 主记忆 分成固定大小的块,称为 镜框。的 流程的逻辑记忆 被分成相同的固定大小的块称为 页数。页面大小和框架大小由硬件定义。众所周知,该过程将被放置在主存储器中以便执行。因此,当要执行处理时,来自源即后存储的处理的页面被加载到主存储器中的任何可用帧中。


现在让我们讨论如何实现分页。 CPU生成一个过程的逻辑地址,该过程由两部分组成: 页码页面偏移。页码用作 指数 在里面 页表.

页表包含 基地址 主内存中加载的每个页面的大小。该基地址与页面偏移量结合在一起以在主存储器中生成页面的地址。

每个操作系统都有其自己的存储页表的方式。大多数操作系统为每个进程都有一个单独的页表。

交换的定义

为了执行,每个进程必须放在主存储器中。当我们需要执行一个过程,并且主存储器已完全装满时, 内存管理器 掉期 从主存储器到后备存储的进程,方法是撤离其他进程要执行的位置。内存管理器如此频繁地交换进程,以使主内存中始终有一个可供执行的进程。

由于 地址绑定 方法,如果绑定是在组装或加载时完成的,则从主内存中交换出来的进程在被交换回主内存时会占用相同的地址空间。如果绑定是在执行时完成的,则在执行时会计算地址,因此该进程可以占用主内存中的任何可用地址空间。

尽管性能会受到交换的影响,但有助于运行 多个进程并行.

  1. 分页和交换之间的基本区别是分页可以避免 外部碎片 通过允许进程的物理地址空间是不连续的,而交换允许 多程序.
  2. 分页将在主存储器和辅助存储器之间来回传输进程的页面,因此分页是灵活的。但是,交换在主内存和辅助内存之间来回交换整个过程,因此交换的灵活性较差。
  3. 与交换相比,分页可以使更多的进程位于主内存中。

结论:

分页可以避免外部碎片,因为它可以利用主内存中的非连续地址空间。交换可以添加到CPU调度算法中,在该算法中,经常需要将进程移入和移出主内存。