进程调度算法模拟带答案版
- 格式:doc
- 大小:230.50 KB
- 文档页数:24
1 假设一个系统中有5个进程,它们的到达时间和服务时间如下表所示,忽略I/O以及其他开销,若分别按先来先服务(FCFS)、非抢占式及抢占式的短进程优先(SPF)、高响应比优先、时间片轮转、多级反馈队列和立即抢占式多级反馈队列七种调度算法,请给出各进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间。
答:
2 在银行家算法中,若出现下列资源分配情况:
请问:
(1)此状态是否安全?
(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?
答:(1)安全,因为存在安全序列{P0,P3,P4,P1,P2}(2)系统能分配资源,分析如下。
① Request(1,2,2,2) <= Need2(2,3,5,6);
② Request(1,2,2,2) <= Available2(1,3,5,4)改成
Available2(1,6,2,2);
③系统先假定可为P2分配资源,并修改Available2,Allocation2和Need2向量,
由此形成的资源变化情况如下图所示:
④再利用安全性算法检查此时系统是否安全。
如下图
由此进行的安全性检查得知,可以找到一个安全序列{P2,P0,P1,P3,P4}。
1 假设一个系统中有5个进程,它们的到达时间和服务时间如下表所示,忽略I/O以及其他开销,若分别按先来先服务(FCFS)、非抢占式及抢占式的短进程优先(SPF)、高响应比优先、时间片轮转、多级反馈队列和立即抢占式多级反馈队列七种调度算法,请给出各进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间。
答:
2 在银行家算法中,若出现下列资源分配情况:
请问:
(1)此状态是否安全?
(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?
答:(1)安全,因为存在安全序列{P0,P3,P4,P1,P2} (2)系统能分配资源,分析如下。
① Request(1,2,2,2) <= Need2(2,3,5,6);
② Request(1,2,2,2) <= Available2(1,3,5,4)改成
Available2(1,6,2,2);
③系统先假定可为P2分配资源,并修改Available2,Allocation2和Need2向量,
由此形成的资源变化情况如下图所示:
④再利用安全性算法检查此时系统是否安全。
如下图
由此进行的安全性检查得知,可以找到一个安全序列{P2,P0,P1,P3,P4}。
作业二进程调度1、1)画出这些作业采用FCFS(先来先服务)、HRRF(高响应比优先调度算法)的执行时间图。
2)计算每个作业的周转时间和带权周转时间。
3)计算平均周转时间和平均带权周转时间。
2、进程调度采用SPF(短进程优先调度算法)和抢占式高优先级优先调度算法(优先数越2)列出所有进程开始运行时间和运行结束时间。
3)计算各进程执行时的周转时间。
3、有一个具有两道作业的批处理系统,作业调度采用高响应比优先调度算法,进程调度采用以优先数为基础的抢占式调度算法。
在下表所示的作业序列,作业优先数即为进程优先数,且优先数越小优先级越高。
1)画出执行时间图2)计算各作业进入内存时间和结束时间3)计算各作业的周转时间。
1 解:(1)0 2 12 18 210 2 12 15 21 RR(J2)=1+7/6=2.17RR(J3)=1+5/3=2.67(2)(3)FSFC2.解:SPF:1) A B D C 10:00 10:40 10:50 11:10 12:00 23)进程周转时间:A进程40 minB进程30 minC进程90 minD进程20 minHPF(抢占式):1)A B C D C A10:00 10:20 10:30 10:50 11:10 11:40 12:00 23)各进程周转时间:A进程120 minB进程10 minC进程70 minD进程20 min3.解进入内存时间结束时间周转时间A 10:00 12:00 120分钟B 10:20 10:50 30分钟C 10:50 11:40 70分钟D 11:40 12:20 90分钟。
调度算法考研题库及答案调度算法是操作系统中一个重要的概念,它决定了多任务环境下任务执行的顺序。
以下是一些调度算法的考研题目及其答案:1. 题目一:请简述什么是进程调度算法,并列举至少三种常见的进程调度算法。
答案:进程调度算法是操作系统用于决定哪个进程获得CPU资源的策略。
常见的进程调度算法包括:- 先来先服务(FCFS)调度算法:按照任务到达的顺序进行调度。
- 短作业优先(SJF)调度算法:优先调度预计执行时间较短的任务。
- 轮转(RR)调度算法:将CPU时间分配给所有任务,每个任务轮流执行固定的时间片。
2. 题目二:描述什么是死锁,并解释银行家算法是如何预防死锁的。
答案:死锁是指在多任务环境中,两个或多个进程在执行过程中因争夺资源而造成的一种僵局,此时这些进程无法继续执行。
银行家算法是一种预防死锁的算法,它通过分配资源前检查是否存在安全序列来决定是否分配资源,从而避免死锁的发生。
3. 题目三:解释什么是时间片轮转调度算法,并说明其优缺点。
答案:时间片轮转调度算法是一种CPU调度算法,它将CPU时间分割成固定长度的时间片,并轮流分配给就绪队列中的每个进程。
每个进程在获得CPU后只能执行一个时间片,时间片用完后,CPU将被分配给下一个进程。
优点包括简单易实现和响应时间可预测。
缺点是不适合I/O密集型任务,因为它们可能在时间片结束前不需要CPU。
4. 题目四:什么是优先级调度算法?请解释其工作原理。
答案:优先级调度算法是一种基于优先级的调度策略,每个进程都被赋予一个优先级值。
调度器总是选择最高优先级的进程来执行。
如果两个进程具有相同的优先级,它们将按照先来先服务的原则被调度。
这种算法适用于实时系统,可以确保高优先级的进程得到及时处理。
5. 题目五:描述什么是多级反馈队列调度算法,并简述其特点。
答案:多级反馈队列调度算法是一种动态的调度算法,它使用多个队列来管理进程,每个队列具有不同的优先级。
新创建的进程首先被放入低优先级的队列中。
操作系统进程调度算法模拟实验进程调度是操作系统中一个重要的功能,它决定了哪些进程能够获得处理器资源以及如何按照一定的策略来分配这些资源。
为了更好地理解进程调度算法的工作原理,我们可以进行一个模拟实验来观察不同算法的表现效果。
实验设想:我们设想有5个进程要运行在一个单核处理器上,每个进程有不同的运行时间和优先级。
进程信息如下:进程A:运行时间10ms,优先级4进程B:运行时间8ms,优先级3进程C:运行时间6ms,优先级2进程D:运行时间4ms,优先级1进程E:运行时间2ms,优先级5实验步骤:1.先来先服务(FCFS)调度算法实验:将上述进程按照先来先服务的原则排序,运行对应的模拟程序,观察每个进程的运行时间、完成时间和等待时间。
2.最短作业优先(SJF)调度算法实验:将上述进程按照运行时间的大小排序,运行对应的模拟程序,观察每个进程的运行时间、完成时间和等待时间。
3.优先级调度算法实验:将上述进程按照优先级的大小排序,运行对应的模拟程序,观察每个进程的运行时间、完成时间和等待时间。
4.时间片轮转(RR)调度算法实验:设置一个时间片大小,将上述进程按照先来先服务的原则排序,运行对应的模拟程序,观察每个进程的运行时间、完成时间和等待时间。
实验结果:通过模拟实验,我们可以得到每个进程的运行时间、完成时间和等待时间。
对于FCFS算法,进程的运行顺序是按照先来先服务的原则,因此进程A首先得到处理器资源并完成运行,其它进程依次按照到达顺序得到资源。
因此,对于进程A、B、C、D、E,它们的完成时间分别是10ms、18ms、24ms、28ms和30ms,等待时间分别是0ms、10ms、18ms、24ms和28ms。
对于SJF算法,进程的运行顺序是按照运行时间的大小,即短作业优先。
因此,进程E首先得到处理器资源并完成运行,其它进程依次按照运行时间的大小得到资源。
对于进程E、D、C、B、A,它们的完成时间分别是2ms、6ms、12ms、20ms和30ms,等待时间分别是0ms、2ms、6ms、12ms和20ms。
第6章 进程调度练习题一、 单项选择题1、在分时操作系统中,进程调度经常采用(C )算法。
A 先来先服务 B 最高优先权 C 时间片轮转 D 随机2、 (B )优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变A 先来先服务B 静态C 动态D 短作业3、 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是非等待状态下诸进程中优先级最高的进程。
上述描述是( B )A 正确的B 错误的二、填空题1、 进程调度方式通常有(非抢占式)和(抢占式)。
2、 所谓进程调度就是从处于(就绪)状态的一些进程中按某种算法选择一个进程,使其占有CPU ,使其该进程处于(执行)状态。
3、 进程调度算法采用时间片轮转法,时间片过大,就会使轮转法转化为(FCFS )调度算法。
4、 进程调度负责(处理机)的分配工作。
5、 一种最常用的进程调度算法是把处理机分配给具有最高优先权的进程,而确定优先权的方法概括起来不外乎是基于(静态)特性和(动态)特性两种方法。
前者所得到的是(静态)优先权,后者所得到的是(动态)优先权。
6、 在(先来先服务)调度算法中,按照进程进入就绪队列的先后次序来分配处理机。
三、概念的区别与联系1、 作业调度与进程调度(1998西北大学考研试题)2、 静态优先数与动态优先数。
(1998西北大学考研试题) 四、解析题1、 假设有一台计算机,它有1M 内存,操作系统占有用200K ,每个用户进程也占用200K ,用户进程等待I/O 的时间为80%,若增加1M 内存,则CPU 的利用率将提高多少?解:1M 内存的情况:1)支持用户进程数:(1024K-200K )/200K=4.12 所以4个用户进程。
2)CPU 利用率: 先求CPU 空闲(4个用户均处于等待I/O 状态)概率P=(80%)4,然后再求CPU 利用率1-P1-P =1-(80%)4 = 1-0.84=59%增加1M 内存的情况:1)支持用户进程数:(2*1024K-200K )/200K=9.24 所以9个用户进程。
进程调度时间片轮转例题一、时间片轮转调度算法主要适用于哪种类型的操作系统?A. 批处理操作系统B. 分时操作系统(答案)C. 实时操作系统D. 网络操作系统二、在时间片轮转调度中,每个进程被分配的时间片是?A. 固定的(答案)B. 可变的C. 无限长的D. 依赖于进程优先级三、关于时间片轮转调度,以下哪个说法是错误的?A. 所有进程轮流使用CPUB. 时间片大小对系统性能没有影响(答案)C. 是一种公平调度算法D. 适用于多用户环境四、在时间片轮转调度算法中,如果时间片设置得过小,可能导致什么问题?A. 系统开销增大(答案)B. 系统吞吐量降低C. 进程饥饿D. 响应时间变长五、以下哪个不是时间片轮转调度算法的优点?A. 简单易实现B. 响应时间快C. 能保证高优先级进程优先执行(答案)D. 能公平地分配CPU时间六、在时间片轮转调度中,当一个进程的时间片用完时,系统会如何处理?A. 终止该进程B. 将该进程放入等待队列(答案)C. 强制该进程让出CPUD. 增加该进程的时间片七、关于时间片轮转调度和优先级调度,以下哪个说法是正确的?A. 时间片轮转调度不考虑进程优先级B. 优先级调度不考虑时间片大小C. 两者都考虑进程优先级和时间因素,但侧重点不同(答案)D. 两者完全等价八、在时间片轮转调度算法中,如果系统中存在n个进程,且时间片大小为t,那么每个进程平均等待时间的大致范围是多少?A. (n-1)t/2(答案)B. ntC. t/nD. 无法确定九、关于时间片轮转调度中的“时间片”,以下哪个说法是正确的?A. 时间片是系统分配给每个进程的执行时间B. 时间片大小是固定的,不能改变C. 时间片用完后,进程必须立即让出CPU(答案)D. 时间片大小与进程优先级有关十、在时间片轮转调度算法中,以下哪个因素不会影响时间片的大小选择?A. 系统响应时间要求B. 进程数目C. CPU执行速度D. 进程的平均执行时间(答案,假设时间片是预先设定的,不随进程执行时间变化)。
第6章 进程调度练习题一、 单项选择题1、在分时操作系统中,进程调度经常采用(C )算法。
A 先来先服务 B 最高优先权 C 时间片轮转 D 随机2、 (B )优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变A 先来先服务B 静态C 动态D 短作业3、 以优先级为基础的进程调度算法可以保证在任何时候正在运行的进程总是非等待状态下诸进程中优先级最高的进程。
上述描述是( B )A 正确的B 错误的二、填空题1、 进程调度方式通常有(非抢占式)和(抢占式)。
2、 所谓进程调度就是从处于(就绪)状态的一些进程中按某种算法选择一个进程,使其占有CPU ,使其该进程处于(执行)状态。
3、 进程调度算法采用时间片轮转法,时间片过大,就会使轮转法转化为(FCFS )调度算法。
4、 进程调度负责(处理机)的分配工作。
5、 一种最常用的进程调度算法是把处理机分配给具有最高优先权的进程,而确定优先权的方法概括起来不外乎是基于(静态)特性和(动态)特性两种方法。
前者所得到的是(静态)优先权,后者所得到的是(动态)优先权。
6、 在(先来先服务)调度算法中,按照进程进入就绪队列的先后次序来分配处理机。
三、概念的区别与联系1、 作业调度与进程调度(1998西北大学考研试题)2、 静态优先数与动态优先数。
(1998西北大学考研试题) 四、解析题1、 假设有一台计算机,它有1M 内存,操作系统占有用200K ,每个用户进程也占用200K ,用户进程等待I/O 的时间为80%,若增加1M 内存,则CPU 的利用率将提高多少?解:1M 内存的情况:1)支持用户进程数:(1024K-200K )/200K=4.12 所以4个用户进程。
2)CPU 利用率: 先求CPU 空闲(4个用户均处于等待I/O 状态)概率P=(80%)4,然后再求CPU 利用率1-P1-P =1-(80%)4 = 1-0.84=59%增加1M 内存的情况:1)支持用户进程数:(2*1024K-200K )/200K=9.24 所以9个用户进程。
1 假设一个系统中有5个进程,它们的到达时间和服务时间如下表所示,忽略I/O以及其他开销,若分别按先来先服务(FCFS)、非抢占式及抢占式的短进程优先(SPF)、高响应比优先、时间片轮转、多级反馈队列和立即抢占式多级反馈队列七种调度算法,请给出各进程的完成时间、周转时间、带权周转时间、平均周转时间和平均带权周转时间。
答:
2 在银行家算法中,若出现下列资源分配情况:
请问:
(1)此状态是否安全?
(2)若进程P2提出请求Request(1,2,2,2)后,系统能否将资源分配给它?
答:(1)安全,因为存在安全序列{P0,P3,P4,P1,P2} (2)系统能分配资源,分析如下。
① Request(1,2,2,2) <= Need2(2,3,5,6);
② Request(1,2,2,2) <= Available2(1,3,5,4)改成
Available2(1,6,2,2);
③系统先假定可为P2分配资源,并修改Available2,Allocation2
和Need2向量,
由此形成的资源变化情况如下图所示:
④再利用安全性算法检查此时系统是否安全。
如下图
由此进行的安全性检查得知,可以找到一个安全序列{P2,P0,P1,P3,P4}。