二.进程调度
2.1进程管理
引入进程的目的:为了更好的描述和控制程序并发执行,实现操作系统的并发性和共享性(进程是动态的,程序是静态的)
进程定义:是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位
组成:由PCB、程序段、数据段,其中PCB最为重要
PCB:保存进程运行期间相关的数据,是进程存在的唯一标志,是常驻内存的,进程一旦被创建就常驻内存
程序段:能被进程调度到CPU的代码
数据段:就是一段数据
进程的状态:状态种类和状态变化
状态的种类:
运行态:进程正在占用CPU
就绪态:进程已处于准备运行的状态,即进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行
阻塞态:进程进入阻塞
创建状态:进程正在被创建
结束状态:进程正在从系统消失
状态变化:
就绪态—》运行态
运行态——》就绪态
运行态——》阻塞态:进程需要的某一资源还没有准备好就会进入阻塞态
阻塞态——》就绪态
线程
特点:线程是程序执行的最小单位,基本不用有任何系统资源(调度的基本单位)
引入线程的目的是为了更好的使用多道程序并发执行,提高资源利用率和系统吞吐量
2.2处理机调度(是会考大题的)
概念:是对处理机进行分配,即从就绪队列中按照一定的算法(公平、高效)选择一个进程并将处理机分配给它运行,以实现进程并发的执行。
分类:分为
高级调度(作业调度)(次数少):怎么理解?一个作业从外存调入内存,一个作业在调度过程中只有一次调入内存和调出内存,所以次数相对比较少
中级调度(内存对换)(次数中等):什么意思?就是将暂时不能运行的进程调出到外存等待,这一状态叫挂起态。如果进程已经具备条件再调入内存
低级调度(进程调度)(次数多):按照某种算法把就绪队列中的某些进程调到内存中来,次数比较多。
调度方式:
剥夺式和非剥夺式
剥夺式:我有个进程1正在运行,进程2来了,进程2优先级比进程1高,此刻进程1下处理机,进程2进处理机,剥夺获得处理机的权力
非剥夺式:进程1上处理机,进程2来了但是进程1先上的处理机,必须等进程1把作业做完
调度的准则
CPU利用率:高一点好
系统吞吐量:在单位时间内CPU完成作业的数目,比方说在一个单位内完成3个作业,吞吐量就是3
周转时间:周转时间=作业的完成时间-作业的提交时间
等待时间:进程处于等待处理机状态时间之和
响应时间:从提交到他第一次开始运行
算法:
先来先服务:FCFS first come first service ,可选非剥夺式和剥夺式
短作业:哪个作业断哪个先运行,前提是作业都到达了 ,可选非剥夺式和剥夺式
优先级调度算法:看题目,看他给的是数字大的优先级高还是数字小的优先级高,可选非剥夺式和剥夺式
高响应比优先调度算法:响应比一定是大于1的,可选非剥夺式和剥夺式
(运行时间+等待时间)/等待时间=响应比
时间片轮转:时间片轮转一定是剥夺式的
多级反馈队列调度算法:每1级优先级都不一样
2.3进程同步
进程同步引入的原因:协调进程之间的相互制约关系,制约关系分为同步和互斥
制约关系
同步:亦称直接制约关系,是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调他们的工作次序而等待、传递信息所产生的制约关系
互斥:也称简介制约关系。当一个进程进入临界区使用临界资源时,另一个进程必须等待,当占用临界资源的进程退出临界区后,另进程才允许去访问此临界资源
临界资源:一次仅允许一个进程使用的资源(打印机,共享缓冲区,共享变量,公用队列)
临界区:在每个进程中访问临界资源的那段程序
临界区互斥的4个原则:空闲让进,忙则等待,有限等待,让权等待
空闲让进:如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。
忙则等待:任何时候,处于临界区内的进程不可多于1个。如已有进程进入自己的临界区,则其他所有试图进入临界区的进程必须等待
有限等待:进入临界区的进程要在有限时间内退出,以便其他进程及时进入自己的临界区
让权等待:如果进程不能进入自己的临界区,则应让出CPU,避免进程出现”忙等“现象
基本方法:实现临界区互斥的基本方法是信号量,信号量主要将的是pv操作会考一个大题
2.4死锁
定义:多个进程因竞争资源而造成的一种僵局,如果没有外力,这些进程将无法推进。
产生的原因:非剥夺资源的竞争和进程不恰当推进顺序(注意与饥饿区别,饥饿说的是我这个进程缺乏某个资源,这个资源没有得到满足,只要这个进程资源得到满足就脱离了饥饿状态)
解决方案:
预防死锁:破坏互斥条件,破环不剥夺条件,破坏请求和保持条件,破环循环等待条件
避免死锁:安全状态和银行家算法(大题)
检测死锁:利用死锁定理
解除死锁:资源剥夺法,撤销进程法,进程回退法
标签:操作系统,处理机,调度,速成,临界,剥夺,进程,死锁 From: https://www.cnblogs.com/romablog/p/16858827.html