1、操作系统复习精品资料第一章1.在计算机系统中操作系统处于什么地位?2.解释以下术语:多道程序设计、并发、分时、实时,系统调用。3.什么是处理机的核心态和用户态?为什么要设置这两种不同的状 态?4.采用虚拟机结构操作系统的主要有点是什么?第二章1. PCB 的作用是什么?它是怎样描述进程的动态性质的?2.进程的基本状态有哪几种?试描绘进程状态转换图。3.什么是临界区和临界资源?进程进入临界区的调度原则是什么?4.简述信号量的定义和作用。 P, V 操作原语是如何定义的?5系统中只有一台打印机,有三个用户的程序在执行过程中都要使用打印机输出计算结果。设每个用户程序对应一个进程。问: 这三个进程间有
2、什么样的制约关系?试用 P,V 操作写出这些进程使用打印机的算法。6设有无穷多个信息,输入进程把信息逐个写入缓冲区,输出进程逐个从缓冲区中取出信息。针对下述两种情况 缓冲区是环形的,最多可容纳 n 个信息; 缓冲区是无穷大的。试分别回答下列问题: 输入、输出两组进程读/写缓冲区需要什么条件? 用 P, V 操作写出输入、输出两组进程的同步算法,并给出信号量含义及初值。第三章 死锁作业一、简答题1 发生死锁的四个必要条件是什么?2 死锁避免的基本思想是什么?3 某个计算机系统有 10 台可用磁带机。在这个系统上运行的所有作业最多要求 4 台磁带机。此外,这些作业在开始运行的很长一段时间内只要求
3、3 台磁带机;它们只在自己工作接近结束时才短时间地要求另一台磁带机。这些作业是连续不断地到来的。(1) 若作业调度策略是静态分配资源,满足后方可运行。那么,能同时运行的最 大作业数是多少?作为这种策略的后果,实际上空闲的磁带机最少是几台? 最多是几台?(2)若采用银行家算法将怎样进行调度? 能够同时运行的最大作业数是多少?作为其后果,实际上空闲的磁带机最少和最多各是多少台?4死锁和“饥饿”之间的主要差别是什么? 5. 设有三个进程 P1, P2, P3,各按如下所示顺序执行程序代码:进程 P1进程 P2进程 P3P(s1)P(s3)P(s2)P(s2)P(s1)P(s3)V(s1)V(s3)V
4、(s2)V(s2)V(s1)V(s3)其中, s1, s2, s3 是信号量,且初值均为 1。在执行时能否产生死锁?如果可能产生死 锁, 请说明在什么情况下产生死锁?并给出一个防止死锁产生的修改办法。二、单项选择题1在非剥夺调度方式下,运行进程执行 V 原语之后,其状态 。 (A)不变(B)要变 (C)可能要变 (D)可能不变2两个进程争夺同一个资源 。 (A)一定死锁(B)不一定死锁 (C)不死锁(D)以上说法都不对3是一种只能由 P 操作和 V 操作进行访问的特殊变量,可以用来实现异步并行进程间的以排它地访问共享数据,还可以用来实现 ; 实现进程间在逻辑上的相互制约关系。(A)调度 (B)
5、类程 (C)进程 (D)互斥(E)信号量 (F)控制变量 (G)同步 (H)共享变量(I)规程 (J)分配4可以被多个进程在任一时刻共享的代码必须是 。 (A)不能自身修改的纯码 (B)顺序代码 (C)无转移指令的代码 (D)汇编语言编制的代码 5.当对信号量进行 V 原操作之后, 。(A)当 S0,要唤醒一个就绪进程(C)当 S=0,要唤醒一个等待进程(D)当 S=0,要唤醒一个就绪进程6在下列叙述中,错误的一条是 。(A)进程被撤消时,只需释放该进程的 PCB 就可以了,因为 PCB 是进程存在的唯一标志(B)进程的互斥和同步都能用 P/V 原语实现(C)用户程序中执行系统调用命令时,处理
6、机的状态字将发生改变(D)设备独立性是指用户在编程时,所使用的设备与实际设备无关7正在运行的进程在信号量 S 上作 P 操作之后,当 S0,进程将进入信号量的 。(A)等待队列 (B)提交队列(C)后备队列 (D)就绪队列8如果发现系统有的进程队列就说明系统有可能发生死锁了。(A)互斥 (B)可剥夺仅供学习与交流,如有侵权请联系网站删除 谢谢7(C)循环等待 (D)同步9某个信号量 S 初值为,当前值为-,则等待在该信号量上的进程数为个。(A)(B)(C)(D)10预先静态分配法是通过破坏条件,来达到预防死锁目的的。(A)互斥使用资源/循环等待资源(B)非抢占式分配/互斥使用资源(C) 占有且
7、等待资源/循环等待资源(D)循环等待资源/互斥使用资源第四章 调度作业1. 在确定调度方式和调度算法时,常用的评价准则有哪些?2.假定在单 CPU 条件下要执行的作业如下表所示。作业到来的时间是按作业编号顺序进行的(即后面作业依次比前一个作业迟到一个时间单位)。 用一个执行时间图描述使用下列算法时各自执行这些作业的情况: FCFS, RR(时间片1)和非抢占式优先级。 对于上述每种算法,各个作业的周转时间是多少?平均周转时间是多少? 对于上述每种算法,各个作业的带权周转时间是多少?平均带权周转时间是多少?3. 在一个有两道作业的批处理系统中,作业调度采用短作业优先级调度算法,进程调 度采用抢占
8、式优先级调度算法。设作业序列下表 所示。其中给出的作业优先数即为相 应进程的优先数。 其数值越小,优先级越高。要求: 列出所有作业进入内存的时间及结束时间。 计算平均周转时间和平均带权周转时间。 如果进程调度采用非抢占式优先级方式,其结果如何?4设某系统采用可抢占的优先级进程调度算法,在系统的就绪队列中有 X、Y、Z 三个进程, 进程 Z 优先级最高,进程 X 优先级最低,进程 Y 优先级介于进程 X、Z 之间,它们的计算与 I/O 所需时间如下表所示:进程计算时间I/O 操作时间计算时间X15ms10ms5msY25ms15ms10msZ3ms20ms10ms(1)若系统采用多道方式运行,给
9、出这三个进程运行完成总共所需的时间,并用图示给 出三个进程的实际运行过程(忽略进行系统调度所需时间)。(2) 采用多道方式运行比采用单道方式运行节省多少时间。作业 3:存储管理1. 解释下列概念:物理地址、逻辑地址、逻辑地址空间、内存空间、重定位、静态重定 位、动态重定位、碎片、紧缩、可重定位地址。什么是虚拟存储器?它有哪些基本特征?2考虑下述页面走向:1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 2, 3, 7, 6, 3, 2, 1, 2, 3, 6 当内存块数量分别为 3 和 5 时, 试问 LRU, FIFO, OPT 三种置换算 法的缺页次数各是多少?3考虑下面存储访问
10、序列,该程序大小为 460 字: 10, 11, 104, 170, 73, 309, 185, 245, 246, 434, 458, 364 设页面大小是 100 字, 请给出该访问序列的页面 走向。 又设该程序基本可用内存是 200 字,采用 FIFO 置换算法,求出其缺页率。如果 采用 LRU 置换算法,缺页率是多少?如果采用最优淘汰算法,其缺页率又是多少?4. 有一矩阵 int a100100;按行进行存储。有一虚拟存储系统,物理内存共有三块, 其中一块用来存放程序,其余两块用来存放数据。假设程序已在内存中占一块,其余两块 空闲。程序 A: 程序 B:for(i=0;i100;i+)for(j=0; j100;j+for(j=0;j100;j+)for(i=0;i100;i+aij=0;aij=0;若每页可存放 200 个整数,程序 A 和程序 B 在执行过程中各会发生多少次缺页?试问: 若每页只能存放 100 个整数呢?上面情况说明了什么问题?