-
先来先服务调度(FCFS)算法及优缺点
所属栏目:[安全] 日期:2020-12-24 热度:99
毫无疑问,最简单的 CPU 调度算法是 先来先服务(FCFS)调度箅法 。釆用这种方案,先请求 CPU 的进程首先分配到 CPU。 FCFS 策略可以通过 FIFO 队列容易地实现。当一个进程进入就绪队列时,它的 PCB 会被链接到队列尾部。当 CPU 空闲时,它会分配给位于队列头[详细]
-
Windows线程调度策略(超详细)
所属栏目:[安全] 日期:2020-12-24 热度:83
Windows 采用基于优先级的、抢占调度算法来调度线程。 用于处理调度的 Windows 内核部分称为 调度程序 ,Windows 调度程序确保具有最高优先级的线程总是在运行的。由于调度程序选择运行的线程会一直运行,直到被更高优先级的线程所抢占,或终止,或时间片已到[详细]
-
多级队列调度算法(含实例分析)
所属栏目:[安全] 日期:2020-12-24 热度:142
在进程容易分成不同组的情况下,可以有另一类调度算法。例如,进程通常分为前台进程(或交互进程)和后台进程(或批处理进程)。这两种类型的进程具有不同的响应时间要求,进而也有不同调度需要。另外,与后台进程相比,前台进程可能要有更高的优先级(外部定[详细]
-
CPU调度准则(完整版)
所属栏目:[安全] 日期:2020-12-24 热度:187
不同的 CPU 调度算法具有不同属性,选择一个特定算法会对某些进程更为有利。为了选择算法以便用于特定情景,我们必须考虑各个算法的属性。 为了比较 CPU 调度算法,可以采用许多比较准则。选择哪些特征来比较,对于确定哪种算法是最好的有本质上的区别。这些[详细]
-
多级反馈队列调度算法详解
所属栏目:[安全] 日期:2020-12-24 热度:173
通常在使用多级队列调度算法时,进程进入系统时被永久地分配到某个队列。例如,如果前台和后台进程分别具有单独队列,那么进程并不从一个队列移到另一个队列,这是因为进程不会改变前台或后台的性质。这种设置的优点是调度开销低,缺点是不够灵活。 相反, 多[详细]
-
优先级调度算法及其优缺点
所属栏目:[安全] 日期:2020-12-24 热度:157
SJF?算法是通用优先级调度算法的一个特例。每个进程都有一个优先级与其关联,而具有最高优先级的进程会分配到 CPU。具有相同优先级的进程按 FCFS 顺序调度。SJF 算法是一个简单的优先级算法,其优先级(p)为下次(预测的)CPU 执行的倒数。CPU 执行越长,则[详细]
-
系统调用的类型(六大类)
所属栏目:[安全] 日期:2020-12-24 热度:128
系统调用大致可分为六大类: 进程控制(process control) 、 文件管理(file manipulation) 、 设备管理(device manipulation) 、 信息维护(information maintenance) 、 通信(communication) 和 保护(protection)。 进程控制 执行程序应能正常(en[详细]
-
管道(无名管道)通信机制原理和实现详解
所属栏目:[安全] 日期:2020-12-24 热度:124
管道(pipe) 允许两个进程进行通信,是早期 UNIX 系统最早使用的一种 IPC 机制。管道为进程之间的相互通信提供了一种较为简单的方法,尽管也有一定的局限性。 在实现管道时,应该考虑以下四个问题: 管道允许单向通信还是双向通信? 如果允许双向通信,它是[详细]
-
命令行界面和图形用户界面(GUI)
所属栏目:[安全] 日期:2020-12-24 热度:176
正如前面所述,用户与操作系统的界面有多种方式。这里,讨论两种基本方案: 提供 命令行界面 或 命令解释程序(command interpreter) ,允许用户直接输入命令,以供操作系统执行。 允许用户通过 图形用户界面(GUI) 与操作系统交互。 命令解释程序 有的操作[详细]
-
什么是多核,并行和并发的区别
所属栏目:[安全] 日期:2020-12-24 热度:173
在计算机设计早期,为了响应更多计算性能的需要,单处理器系统发展成为多处理器系统。更现代的、类似的系统设计趋势是将多个计算核放到单个芯片。无论多个计算核是在多个CPU芯片上还是在单个 CPU 芯片上,我们称之为 多核 或 多处理器系统 。 多线程编程提供[详细]
-
套接字是什么,套接字通信及其原理
所属栏目:[安全] 日期:2020-12-24 热度:117
套接字(socket) 为通信的端点,每个套接字由一个 IP 地址和一个端口号组成。 通过网络通信的每对进程需要使用一对套接字,即每个进程各有一个。 通常,套接字采用客户机-服务器架构。服务器通过监听指定端口,来等待客户请求。服务器在收到请求后,接受来[详细]
-
操作系统的体系结构(单处理器、多处理器和集群)
所属栏目:[安全] 日期:2020-12-24 热度:150
前面章节中,我们从操作系统的运行过程、存储结构以及IO结构介绍了典型计算机系统的通用结构。计算机系统可能通过许多不同途径来组成,这里根据采用的通用处理器数量来进行粗略分类。 单处理器系统 直到最近,大多数系统仍采用单处理器。单处理器系统只有一[详细]
-
进程状态及其转换过程
所属栏目:[安全] 日期:2020-12-24 热度:60
进程在执行时会改变状态。 进程状态,部分取决于进程的当前活动。 图 1 显示的是进程活动的状态图。 图 1 进程状态图 从图中可以看出,每个进程可能处于以下几种不同的状态: 新的 :进程正在创建。 运行 :指令正在执行。 等待 :进程等待发生某个事件(如[详细]
-
什么是线程库,线程库类别及其应用
所属栏目:[安全] 日期:2020-12-24 热度:159
线程库 为程序员提供创建和管理线程的 API。 实现线程库的主要方法有两种: 在用户空间中提供一个没有内核支持的库。这种库的所有代码和数据结构都位于用户空间。这意味着,调用库内的一个函数只是导致了用户空间内的一个本地函数的调用,而不是系统调用。[详细]
-
什么是进程调度,进程调度的来龙去脉
所属栏目:[安全] 日期:2020-12-24 热度:91
多道程序设计的目标是,无论何时都有进程运行,从而最大化 CPU 利用率。分时系统的目的是在进程之间快速切换 CPU,以便用户在程序运行时能与其交互。 为了满足这些目标, 进程调度器 选择一个可用进程(可能从多个可用进程集合中)到 CPU上执行。如果有多个进[详细]
-
开源操作系统的类别及其特点
所属栏目:[安全] 日期:2020-12-24 热度:133
我们说过,由于有大量的开源操作系统,操作系统的学习容易得多。 开源操作系统(open-source operating system) 具有源码,而非只有编译过的二进制码。Linux 是最为著名的开源操作系统,而 Microsoft Windows 则是一个著名的、闭源(closed source)的系统。[详细]
-
什么是操作系统
所属栏目:[安全] 日期:2020-12-24 热度:99
我们首先讨论操作系统在整个计算机系统中的作用。计算机系统可以粗分为四个组件: 硬件 、 操作系统 、 应用程序 和 用户 (图 1)。 图 1 计算机系统组件的抽象视图 硬件(hardware),如中央处理单元(Central Processing Unit,CPU)、内存(memory)、输[详细]
-
操作系统组织数据的方法(详解版)
所属栏目:[安全] 日期:2020-12-24 热度:168
下面讨论操作系统实现的一个核心问题:系统如何组织数据。本节简要讨论多个基本数据结构,它们在操作系统中用得很多。 列表、堆栈及队列 数组是个简单的数据结构,它的元素可被直接访问。例如,内存就是一个数组。如果所存的数据项大于一字节,那么可用多个字[详细]
-
进程是什么,进程和程序的区别
所属栏目:[安全] 日期:2020-12-24 热度:103
在未被 CPU 执行之前,程序做不了任何事。如前所述, 执行的程序称为 进程 。 分时系统的用户程序(如编译器)就是进程,PC 的单个用户运行的字处理程序也是进程。系统任务,如将输出发到打印机,也可以是进程(或至少是进程的一部分)。现在,进程可以作为作[详细]
-
操作系统的存储结构及层次(含示意图)
所属栏目:[安全] 日期:2020-12-24 热度:75
CPU 只能从内存中加载指令,因此执行程序必须位于内存。通用计算机运行的大多数程序通常位于可读写内存,称为 内存(main memory) ,也称为 随机访问内存(Random Access Memory,RAM) 。内存通常为动态随机访问内存(Dynamic Random Access Memory,DRAM)[详细]
-
操作系统运行过程详解
所属栏目:[安全] 日期:2020-12-24 热度:70
现代通用计算机系统包括一个或多个 CPU 和若干设备控制器,通过公用总线相连而成,该总线提供了共享内存的访问(图 1 )。每个设备控制器负责一类特定的设备(如磁盘驱动器、音频设备或视频显示器)。CPU 与设备控制器可以并发执行,并且竞争访问内存。为了确[详细]
-
操作系统的运行机制(详解版)
所属栏目:[安全] 日期:2020-12-24 热度:131
将I/O结构的时候提到,现代操作系统是中断驱动(interrupt driven)的。如果没有进程需要执行,没有 I/O 设备需要服务,而且没有用户需要响应,那么操作系统会静静地等待某个事件的发生。 事件总是由 中断 或 陷阱 引起的。 陷阱(trap,或异常(exception)[详细]
-
操作系统安全保护机制
所属栏目:[安全] 日期:2020-12-24 热度:196
如果一个计算机系统有多个用户,并且允许多个进程并发执行,那么数据访问应当加以控制。为此,可以通过机制确保只有经过操作系统授权,进程才可使用相应资源,如文件、内存、CPU 及其他资源。 例如,内存寻址硬件确保一个进程仅可在自己的地址空间内执行,定[详细]
-
操作系统的存储管理
所属栏目:[安全] 日期:2020-12-24 热度:129
为了方便计算机用户,操作系统提供信息存储的统一逻辑视图。操作系统对存储设备的物理属性进行了抽象,并定义了逻辑存储单元,即 文件(file) 。操作系统映射文件到物理媒介,并通过存储设备来访问文件。 文件系统管理 文件管理是操作系统最明显的组件之一。[详细]
-
操作系统的I/O结构
所属栏目:[安全] 日期:2020-12-24 热度:126
存储器只是众多计算机 I/O 设备中的一种。操作系统的大部分代码专门用于 I/O 管理,这是由于它对系统的可靠性和性能至关重要,也是由于不同设备具有不同特性。因此,我们首先概述一下 I/O。 每个通用计算机系统由一个 CPU 和多个设备控制器组成,它们通过共同[详细]