北航操作系统课程-第六次作业-进程与调度

北航操作系统课程-第六次作业-虚拟内存管理-页面置换


北京航空航天大学计算机学院-2020春操作系统课程
题目作者为北航计算机学院操作系统课程组,答案为博主原创。水平有限,无法保证作答正确性,如有错误敬请批评指正。部分作答源自百度谷歌等其他资料,如有侵权联系删除


1 一个线程是否会被时钟中断剥夺CPU使用权?请分线程实现类型讨论。

用户级线程不会被时钟中断剥夺CPU使用权。用户级线程在用户空间通过库函数实现,无需内核支持也不参与内核的调度,由用户程序自行调用、调度和维护。用户级线程不受内核时钟中断的影响,但如果其所在的进程时间片用完,自然整个进程的所有线程都会让出CPU。

内核级线程由内核调度和维护,是可以被时钟中断单独剥夺CPU使用权的。

对于混合线程实现方式,用户级线程和内核级线程之间有映射关系,一个线程是否会被时钟剥夺CPU使用权取决于其由哪一方控制。不论是Many-to-One, One-to-One, 还是Many-to-Many,其映射中内核级线程是可以被时钟中断剥夺CPU使用权的,而用户级线程的情况取决于其所映射的内核级线程,一旦内核级线程被剥夺CPU使用权,其所映射的用户级线程都将让出CPU。如果一个内核级线程映射多个用户级线程,其用户级线程不可单独被时钟中断剥夺CPU使用权;如果一个内核级线程只映射了一个用户级线程,那么中断掉内核级线程也就相当于中断掉了对应的用户级线程。


2 一个软实时系统中有4个周期性进程,其周期分别为:50、100、200、250,每次CPU运行时长分别为:35、20、10、x,求使得这些进程可调度的最大x取值。

若使用静态调度算法,RMS已被证明是静态最优调度算法,其推导了,当任务集满足 ∑ i = 1 n C i / T i ≤ n ( 2 n − 1 ) \sum_{i=1}^n C_i/T_i \leq n(\sqrt[n]2-1) i=1nCi/Tin(n2 1) 时一定可调度,在题目所述情况下有4个进程,不等式右侧为 4 × ( 2 4 − 1 ) = 0.75682846 4 \times (\sqrt[4]2-1)=0.75682846 4×(42 1)=0.75682846 ,将4个进程的运行时间和周期代入不等式左侧,得到 35 / 50 + 20 / 100 + 10 / 200 + x / 250 ≤ 0.75682846 35/50+20/100+10/200+x/250 \leq 0.75682846 35/50+20/100+10/200+x/2500.75682846 ,发现 x x x 必须是负数,说明上述条件得任务集是静态不可调度的。

若使用动态的调度算法,只需要任务集满足 ∑ i = 1 n C i / T i ≤ 1 \sum_{i=1}^n C_i/T_i \leq1 i=1nCi/Ti1 即可调度。 35 / 50 + 20 / 100 + 10 / 200 + x / 250 ≤ 1 35/50+20/100+10/200+x/250 \leq 1 35/50+20/100+10/200+x/2501 ,得到 x ≤ 12.5 x \leq 12.5 x12.5


3 有五个进程P1、P2、P3、P4、P5,它们同时依次进入就绪队列,它们的优先数和需要的处理器时间如下表。

进程处理器时间优先级(数小优先级高)
P1103
P211
P323
P414
P552

忽略进行调度等所花费的时间,回答下列问题:

  1. 写出采用“先来先服务”、“短作业(进程)优先”、“非抢占式的优先数”和“轮转法”等调度算法,进程执行的次序。(其中轮转法的时间片为2)
  2. 分别计算上述算法中各进程的周转时间和等待时间,以及平均周转时间。

四种调度算法下五个进程的执行顺序如下图所示:

在这里插入图片描述

先来先服务:

进程周转时间等待时间执行时间
P110010
P211101
P313112
P414131
P519145

先来先服务的平均周转时间: ( 10 + 11 + 13 + 14 + 19 ) ÷ 5 = 13.4 (10+11+13+14+19)\div5=13.4 (10+11+13+14+19)÷5=13.4

短作业优先:

进程周转时间等待时间执行时间
P119910
P2101
P3422
P4211
P59145

短作业优先的平均周转时间: ( 19 + 1 + 4 + 2 + 9 ) ÷ 5 = 7 (19+1+4+2+9)\div5=7 (19+1+4+2+9)÷5=7

非抢占式优先数:

进程周转时间等待时间执行时间
P116610
P2101
P318162
P419181
P5615

非抢占式优先数的平均周转时间: ( 16 + 1 + 18 + 19 + 6 ) ÷ 5 = 12 (16+1+18+19+6)\div5=12 (16+1+18+19+6)÷5=12

时间片轮转(时间片为2):

进程周转时间等待时间执行时间
P119910
P2321
P3532
P4651
P515105

时间片轮转(时间片为2)的平均周转时间: ( 19 + 3 + 5 + 6 + 15 ) ÷ 5 = 9.6 (19+3+5+6+15)\div5=9.6 (19+3+5+6+15)÷5=9.6

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1. Explain the Concepts Computer Architecture 系统结构 由程序设计者所看到的一个计算机系统的属性。即计算机系统的软硬件界面。 Advanced CA 高级系统结构 新型计算机系统结构。基于串行计算机结构,研究多指令多数据计算机系统,具有并发 、可扩展和可编程性。为非冯式系统结构。 Amdahl law Amdahl定律 系统中某部件由于采用某种方式时系统性能改进后,整个系统性能的提高与该方式的使 用频率或占的执行时间的比例有关。 SCALAR PROCESSING 标量处理机 在同一时间内只处理一条数据。 LOOK-AHEAD 先行技术 通过缓冲技术和预处理技术,解决存储器冲突,使运算器能够专心与数据的运算,从而 大幅提高程序的执行速度。 PVP 向量型并行计算处理机 以流水线结构为主的并行处理器。 SMP 对称多处理机系统 任意处理器可直接访问任意内存地址,使用共享存储器,访问延迟、带宽、机率都是等价 的。 MPP 大规模并行计算机系统 物理和逻辑上均是分布内存,能扩展至成百上千处理器,采用专门设计和定制的高通信 带宽和低延迟的互联网络。 DSM 分布式共享存储系统 内存模块物理上局部于各个处理器内部,但逻辑上是共享存储的。 COW 机群系统 每个节点都是一个完整的计算机,各个节点通过高性能网络相互连接,网络接口和I/O总 线松耦合连接,每个节点有完整的操作系统。 GCE 网格计算环境 利用互联网上的计算机的处理器闲置处理能力来解决大型计算问题的一种科学计算。 CISC 复杂指令集计算机 通过设置一些复杂的指令,把一些原来由软件实现的常用功能改用硬件实现的指令系统 实现,以此来提高计算机的执行速度。 RISC 精简指令集计算机 尽量简化计算机指令功能,只保留那些功能简单,能在一个节拍内执行完的指令,而把 复杂指令用段子程序来实现。 VMM 虚拟机监视器 作为软硬件的中间层,在应用和操作系统所见的执行环境之间。 SUPERCOMPUTER 超级计算机 数百数千甚至更多的处理器组成的能计算普通计算机不能完成的大型复杂问题的计算机 。 SVM 共享虚拟存储器 存储器虚拟化为一个共享的存储器,并提供单一的地址空间。 MAINFRAME 大型计算机 作为大型商业服务器,一般用于大型事务处理系统,特别是过去完成的且不值得重新编 写的数据库应用系统方面。 COMPUTER SYSTEM ON CHIP 片上计算机系统 在单个芯片上集成的一个完整系统。 PARALLEL ARCHITECTURE INTO SINGLE CHIP 单片并行结构 在单个芯片上采用的并行体系结构 MOORE law Moore定律 当价格不变时,集成电路上可容纳的晶体管数目,约每隔18个月便会增加一倍,性能也 将提升一倍。 UMA 一致存储访问 采用集中式存储的模式,提供均匀的存储访问。 NUMA 非一致存储访问 内存模块局部在各个结点内部,所有局部内存模块构成并行机的全局内存模块。 COMA 全高速缓存存储访问 采用分布式存储模式,通过高速缓存提供快速存储访问。 CC-NUMA 全高速缓存非一致性均匀访问 存在专用硬件设备保证在任意时刻,各结点Cache中数据与全局内存数据的一致性。 NORMA 非远程存储访问 利用私有的存储器通过互联网络进行消息传递。 SHELL ARCHITECTURE Shell结构 用专门定制的Shell电路将商用微处理器和节点的其它部分(包括板级Cache、局存、NI C和DISK)连接起来。 PRAM 随机存取并行机器模型 共享存储的SIMD模型,假定存在一个容量无限大的共享存储器,有有限或无限个功能相 同的处理器,且他们都具有简单的算术运算和逻辑判断功能,在任何时刻处理器都可以 通过共享存储单元相互交互数据。 BSP 整体同步并行计算模型 分布存储的MIMD计算模型,将处理器和路由器分开,强调了计算任务和通信任务的分开 。采用障碍同步的方式以硬件实现的全局同步是在可控的粗粒度级,从而提供了执行紧 耦合同步式并行算法的有效方式。 LOG P 分布存储的、点到点通信的多处理机模型 L (Latency) 表示信息从源到目的地所需的时间;O (Overhead) 表示处理器接受或发送一条消息所需额外开销,并且在此期间处理器不能做作任何操作 ;G (Gap)表示处理器连续进行两次发送或接收消息之间必须有的时间间隔;P (Processor) 表示处理器的数目。 Explain the Flynn classify and its semantics. 1) 单指令流单数据流(Single Instruction Stream Single Data Stream,SISD) SISD其实就是
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值