GATE 关于最佳适应和首次适应的问题2025年3月17日 | 阅读 3 分钟 从 GATE 的角度来看,关于最佳适应和首次适应的数值问题经常以 1 分题的形式出现。让我们看一个如下所示的例子。 问:进程请求如下:25 K, 50 K, 100 K, 75 K ![]() 确定哪种算法能最优地满足此要求。
问题中,内存中有五个分区。其中 3 个分区有进程,两个分区是空洞。 我们的任务是检查哪种算法能最优地满足请求。 使用首次适应算法让我们看看首次适应算法如何解决这个问题。 1. 25 K 需求算法会扫描列表,直到找到第一个足够大的空洞来满足 25 K 的请求。它在第二个分区中找到了空闲空间,该分区足够大,因此它从 75 K 中分配 25 K 给进程,剩余的 50 K 作为一个空洞存在。 ![]() 2. 50 K 需求50 K 的需求可以通过将大小为 50 K 的第三个分区分配给进程来满足。不会产生新的空闲空间。 ![]() 3. 100 K 需求100 K 的需求可以通过使用大小为 175 K 的第五个分区来满足。从 175 K 中,将分配 100 K,剩余的 75 K 将作为一个空洞存在。 ![]() 4. 75 K 需求由于我们有一个 75 K 的空闲分区,因此我们可以将这么多空间分配给需要 75 K 空间的进程。 ![]() 使用首次适应算法,我们最优地满足了所有请求,没有留下无用的空间。 让我们看看最佳适应算法如何处理这个问题。 使用最佳适应算法1. 25 K 需求要使用最佳适应方法分配 25 K 空间,需要扫描整个列表,然后我们发现一个 75 K 的分区是空闲的,并且在所有分区中是最小的,可以满足进程的需求。 因此,从那 75 K 的空闲分区中分配 25 K 给进程,剩余的 50 K 作为一个空洞存在。 ![]() 2. 50 K 需求为了满足这个需求,我们将再次扫描整个列表,然后找到 50 K 的空间是空闲的,这与需求完全匹配。因此,它将被分配给进程。 ![]() 3. 100 K 需求100 K 的需求与 175 K 的空间足够接近。算法扫描整个列表,然后从第五个空闲分区中分配 175 K 中的 100 K。 ![]() 4. 75 K 需求75 K 的需求将从第六个空闲分区获得 75 K 的空间,但算法将在做出此决策的过程中扫描整个列表。 ![]() 通过遵循这两种算法,我们注意到在这两种情况下,两种算法的表现大多相似。 两者都能满足进程的需求,但是,最佳适应算法会一遍又一遍地扫描列表,这需要花费大量时间。 因此,如果您问我哪种算法以更优化的方式执行,那么肯定是首次适应算法。 因此,在这种情况下,答案是 A。 下一主题分页的需求 |
操作系统中的Belady异常:在页面替换算法中的Belady异常:对于LRU和最优页面替换算法,可以看到如果我们增加帧的数量,页面错误的数量将会减少。然而,Belady发现,在FIFO页面...
阅读 8 分钟
在操作系统中,一项重要的工作莫过于管理内存,尤其是程序运行的空间。一种灵活高效的处理方式是通过动态分区。而不是将内存划分为固定大小的块,相应的动态...
5 分钟阅读
OS(操作系统)是什么? 根据虚拟内存的概念,为了执行某个进程,只需要进程的一部分存在于主内存中,这意味着只有少数页面会存在于...
阅读 2 分钟
TLB(Translation Lookaside Buffer)分页的缺点 页表的大小可能非常大,因此会浪费主内存。CPU 读取主内存中的单个字会花费更多时间。如何减小页表的大小 通过增加...可以减小页表的大小
阅读 3 分钟
OS(操作系统)是什么? 是一种存储方案,它为用户提供了拥有非常大的主内存的错觉。这是通过将部分辅助内存视为主内存来实现的。在此方案中,用户可以加载更大的进程...
阅读 3 分钟
我们了解到动态分区会产生外部碎片。然而,这可能会导致一些严重的问题。为了避免紧凑,我们需要改变“进程不能存储在内存的不同位置”这一规则。我们还可以...
阅读 2 分钟
页表的大小 然而,CPU正在执行的进程部分必须在该时间段内存在于主内存中。页表也必须始终存在于主内存中,因为它拥有...
阅读 2 分钟
计算机系统基础将二进制地址分配给内存位置。然而,系统使用一定数量的位来寻址内存位置。使用 1 位,我们可以寻址两个内存位置。使用 2 位,我们可以寻址 4 个,使用 3 位,我们可以寻址...
阅读1分钟
操作系统中的分段 (OS) 简介 操作系统采用一种称为分段的内存管理技术,该技术将内存分割成不同大小的块。每个称为段的部分都可以分配给一个进程。用户进程的视角通过分段而不是分页来传达。存储划分的...
阅读 6 分钟
关于TLB的GATE问题 GATE | GATE-CS-2014-(Set-3) 1. 考虑一个带TLB的分页硬件。假设整个页表和所有页都在物理内存中。搜索TLB需要10毫秒,访问物理内存需要80毫秒。如果...
7 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India