操作系统
-
什么是系统抖动,系统抖动及解决方法详解
如果低优先级进程所分配的帧数低于计算机体系结构所需的最小数量,那么必须暂停该进程执行。然后,应调出它的所有剩余页面,以便释放所有分配的帧。这个规定引入了中级 CPU 调度的换进换出…
-
页面置换算法及其优缺点详解
本节,讨论几种页面置换算法。为此,假设有 3 个帧并且引用串为: 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1 FIFO页面置换 FIFO 算法是…
-
写时复制技术(详解版)
我们知道了一个进程如何采用请求调页,仅调入包括第一条指令的页面,从而能够很 快开始执行。然而,通过系统调用 fork() 的进程创建最初可以通过使用类似于页面共享的技术,绕过请求调…
-
请求调页(请求页面调度)原理及性能详解
想一想,如何从磁盘加载可执行程序到内存。 一种选择是在程序执行时将整个程序加载到物理内存,这种方法的问题是最初可能不需要整个程序都处于内存。假设程序开始时带有一组用户可选的选项。加…
-
页表结构完全攻略
本节我们将探讨组织页表的一些最常用技术,包括分层分页、哈希页表和倒置页表。 分层分页 大多数现代计算机系统支持大逻辑地址空间(232〜264)。在这种情况下,页表本身可以非常大。例…
-
内存分页机制完全攻略
分段允许进程的物理地址空间是非连续的。分页是提供这种优势的另一种内存管理方案。然而,分页避免了外部碎片和紧缩,而分段不可以。 不仅如此,分页还避免了将不同大小的内存块匹配到交换空间…
-
什么是内存交换
进程必须在内存中以便执行。不过,进程可以暂时从内存交换到备份存储,当再次执行时再调回到内存中(图 1)。交换有可能让所有进程的总的物理地址空间超过真实系统的物理地址空间,从而增加了…
-
连续内存分配及其方式详解
内存应容纳操作系统和各种用户进程,因此应该尽可能有效地分配内存。本节介绍一种早期方法:连续内存分配。 内存通常分为两个区域:一个用于驻留操作系统,另一个用于用户进程。操作系统可以放…
-
内存分段机制详解
通过学习内存分配的方式我们知道,用户的内存视图与实际的物理内存不一样。这同样适用于程序员的内存视图。 事实上,对操作系统和程序员来说,按物理性质来处理内存是不方便的。如果硬件可以提…
-
Windows线程调度策略(超详细)
Windows 采用基于优先级的、抢占调度算法来调度线程。 用于处理调度的 Windows 内核部分称为调度程序,Windows 调度程序确保具有最高优先级的线程总是在运行的。由于…