十四、调度算法的评价指标

1.CPU 利用率 由于早期的 CPU 造价极其昂贵,因此人们希望让 CPU 尽可能多地工作 **CPU 利用率:**指 CPU“忙碌”的时间占总时间的比例 $利用率=\frac{忙碌的时间}{总时间}$ ...

202019-8-200 · 1 min · 82 words · cmlark

十三、进程调度的时机,切换与过程调度方式

1.进程调度的时机 进程调度(低级调度),就是按照某种算法从就绪队列中选择一个进程为其分配处理机。 需要进行进程调度与切换的情况: 当前运行的进程主动放弃处理机(有的系统中只允许进程主动放弃处理机) 进程正常终止 运行过程中发生异常而终止 进程主动请求阻塞(如等待I/O) 当前运行的进程被动放弃处理机(有的系统中,进程可以主动放弃处理机,当又更紧急的任务需要处理时,也会强行剥夺处理机(被动放弃)) 分给进程的时间片用完 有更紧急的事情需要处理(如I/O中断) 有更高优先级的进程进入就绪队列 ...

202052-11-200 · 1 min · 37 words · cmlark

十二、处理机调度的概念,层次

1.基本概念 当有一堆任务要处理,但由于资源有限,这些事情没办法同时处理,这就需要确定某种规则来决定处理这些任务的顺序,这就是“调度”研究的问题。在多道程序系统中,进程的数量往往是多于处理机个数的,这样不可能同时并行的处理各个进程。处理机调度,就是从就绪队列中按照一定的算法选择一个进程并将处理机分配给他运行,以实现进程的并发执行。 ...

202047-10-200 · 1 min · 26 words · cmlark

十一、线程概念和多线程模型

1.什么是线程,为什么要引入线程 还没引入进程之前,系统中的各个程序只能串行执行。在传统的定成定义中,进程是程序的一次执行。但想实现多个功能显然不可能是由一个程序顺序处理就能实现的。如 QQ,可以同时进行视频,文字聊天,发送文件等操作。 ...

191958-7-190 · 1 min · 49 words · cmlark

十、进程通信

1.什么是进程通信 进程通信是进程之间的信息交换。 进程是分配系统资源的单位(包括内存地址空间),因此各进程拥有的内存地址空间相互独立。 ...

181846-9-180 · 1 min · 37 words · cmlark

九、进程控制

1.什么是进程控制 进程控制的主要功能是对系统中的所有进程实施有效的管理,它具有创建进程,撤销进程,实现进程间的状态转换等功能。简而言之,进程控制就是要时间进程状态的转换。 ...

181823-12-180 · 1 min · 28 words · cmlark

八、进程的状态与转换

1.进程的基本状态 三种基本状态: 运行态:占有 cpu,并在 cpu 上运行 就绪态:已具备运行条件,但没有空闲 CPU 而暂时不能运行 阻塞态(或称等待态):因等待某一事件而暂时不能执行 ...

171735-11-170 · 1 min · 31 words · cmlark

七、进程的定义、组成、自制方式、特征

1.进程的定义 程序什么么?程序就是一个指令序列。 早期的计算机支支持单道程序。引入多道程序后,多道程序可以并发执行。为了方便操作系统管理、完成程序并发执行,引入了进程,进程实体的概念。 PCB(进程控制块),程序段和数据段三部分构成了进程实体。进程实体被简称为进程。所谓创建进程实际上是创建进程实体中的 PCB;撤销进程实质上就是撤销进程实体中的 PCB。 PCB 是进程存在的唯一标志。 ...

161644-6-160 · 1 min · 56 words · cmlark

六、系统调用

1.什么是系统调用 操作系统是用户和计算机硬件之间的接口需要向上层提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组==系统调用==组成。 用户接口: 命令接口(允许用户直接使用) 联机命令接口:用户说一句,系统做一句 脱机命令接口:用户说一堆,系统做一堆。 程序接口(允许用户通过程序间接使用):由一组系统调用组成。 系统调用就是操作系统提供给程序使用的接口,可以理解为一种可供应用程序调用的函数,应用程序可以发出系统调用请求来获得操作系统的服务。 2.系统调用的作用: 应用程序通过系统调用请求操作系统的服务。系统中的各种共享资源由操作系统统一管理,因此在用户程序中,凡事与资源有关的操作(如存储分配,I/O 操作,文件管理等),都必须通过系统调用的方式像操作系统提出服务请求,由操作系统代为完成,这样可以保证系统的稳定性和安全性,防止用户进行非法操作。 系统调用(按功能分类): 设备管理:完成设备的请求、释放、启动等工作 文件管理:完成文件的读写、创建、删除等功能 进程控制:完成进程的创建。撤销、阻塞、唤醒等功能 进程通信:完成进程之间的消息传递、信号传递等功能 内存管理:完成内存的分配、回收等功能 系统调用相关处理涉及到对系统资源的管理,对进程的控制,这些功能需要执行一些特权指令才能完成,因此系统调用的相关处理需要在核心态下完成。 3.系统调用与库函数的区别 4.系统调用背后的过程 首先需要做的是把传入系统调用的参数用相应的指令放入相应的通用寄存器中并执行相应的陷入指令(interrupt 的缩写,此汇编指令的作用是引发一次系统中断),指令运行在用户态。当指令被执行时系统会执行相应的系统调用服务程序,这时候系统中断开始并运行在核心态,待系统调用完成后会把执行结果返回给用户程序,重新回到用户态,继续执行后续操作。如下图所示: 有些书上陷入指令被叫做访管指令。概念是:因操作系统不允许用户态运行某些“危险性”高的指令,于是用户态运行这些指令的结果会转化成操作系统的核心态(管态)去运行。 上图注意 3 补充:核心态只能执行系统调用,不能请求系统调用;用户态不能执行系统调用,只能请求系统调用。 **系统调用发生在用户态,执行在核心态。**比如说你去仓库提货,仓库有专门的管理员而且你并不能进入仓库。管理员在门口待命。你过去跟他说你要什么什么,仓库管理员就进仓库提你想要的货物,提完货物后会回到仓库门口把货物交给你。在这个过程中,门外就相当于用户态,仓库内就相当于核心态。你跟管理员要货就相当于请求一次系统调用,管理员进仓库给你拿货就相当于执行了一次系统调用,并在拿完货后出门给我你货物,这个过程就相当于返回系统调用的结果。很简单的道理。 吧啦吧啦:有的弹幕说中断就是切换任务的,我我个人觉得说的好像也蛮准确的 5.知识回顾

131357-8-130 · 1 min · 29 words · cmlark

五、中断和异常

1.中断机制的诞生 为了解决早期计算机资源利用率低的的问题,人们发明了操作系统,引入了中断机制,实现多道程序并发执行。 本质:发生了中断也就意味着需要操作系统介入,展开管理工作。CPU 收到计时部件发送的中断信号,切换为内核态,操作系统负责处理中断。 2.中断的概念和作用 当中断发生时,CPU 立即进入核心态。 当中断发生后,当前运行的进程暂停执行,并由操作系统内核对中断进行处理。 对于不用的中断信号,会进行不同的处理。 中断可以使 CPU 从用户态切换为核心态,使操作系统获得计算机的控制权。有了终端,才能够实现多道程序并发执行。只有在核心态操作系统才能够执行特权指令。从用户态切换到核心态是通过中断实现的,并且是唯一的途径。 3.中断的分类 中断(广义上的): 内中断(也称异常,例外,陷入) 信号来源:CPU内部,与当前执行的指令有关。 自愿中断——指令中断(系统中断) 强迫中断——硬件故障或软件中断 外中断(狭义上的中断) 信号来源:CPU外部与但钱执行的指令无关。 外设请求 人工干预 另一种分类方式: 4.外部中断的处理过程 每条指令执行结束后,CPU 检查是否有外部中断信号 若有外部中断信号,则需要保护中断进程的 CPU 环境 根据中断信号类型转入相应的中断处理程序 恢复原进程的 CPU 环境并推出中断,返回原进程继续往下执行 5.知识图谱

101011-9-100 · 1 min · 34 words · cmlark