286 https://blog.csdn.net/lthahaha/article/details/106962751
87 128 148 160 162 165 102 107 114 112
时间片轮转调度算法
b 117、下列只能在核心态下运行的指令是( ) A、 读时钟指令 B、 置时钟指令 C、 取数指令 D、 寄存器清零
119、应用程序只能在 用户态下 进行
122 原子操作在系统态下执行,常驻内存
c 131、与时间有关的错误是指( )。 A、 与进程执行的时间长短有关 B、 与 CPU 的速度有关 C、 与进程被打断的时间有关 D、 与超时有关
c 162、在操作系统中,对信号量 S 的 wait 原语操作定义中,使进程进入相应阻塞 队列阻塞的条件是( )。A、 S>0 B、 S=0 C、 S <0
a 164、PV 操作是( )。 A、 两条低级进程通信原语 B、 两组不同的机器指令 C、 两条系统调用命令 D、 两条高级进程通信原语
169 信号量机制是一种有效的实现进程同步与互斥的工具。信号量只能由PV操作来改变。
174 线程 是进程内一个相对独立,可调度的执行单元,是系统进行调度的基本单位。
190 + -
b 195、假设有 4 个作业同时到达,每个作业的执行时间均为 2h,他们在一台处理 机上,按单道式运行,则平均周转时间为( ) A、 1h B、 5h C、 2.5h D、 8h
b 196、满足短作业优先,且不会发生饿死现象的是( )调度算法。 A、 先来先服务 B、 高响应比优先 C、 时间片轮转 D、 短作业优先
a 210、分时操作系统,通常采用( )调度算法。 A、 时间片轮转 B、 先来先服务 C、 短作业优先 D、 优先级
b 216、下列调度算法中, ( )调度算法是绝对可以抢占的。 A、 先来先服务 B、 时间片轮转 C、 优先级 D、 短进程优先
b 218、产生死锁的四个必要条件是,互斥、( )、循环等待和不剥夺 A、 请求与阻塞 B、 请求与保持 C、 请求与释放 D、 释放与阻塞
b 220、对系统资源的分类方法有许多种。根据资源的占用方式可分为 A、 可再用资源和消耗性资源 B、 可抢占性和不可抢占性资源 C、 永久性资源和临时性资源 D、 共享资源和独享资源
ac 222、计算机系统产生死锁的根本原因是 A、 竞争有限资源 B、 运行的进程太多 C、 资源不可抢占
b 223、某系统中有 3 个并发进程,都需要同类资源 4 个,问该系统不会发生死锁 的最少资源数是( ) A、 9 B、 10 C、 11 D、 12
b 226、实时系统中采用的调度算法可以有如下几种:1.非抢占优先权调度算法 2. 立即抢占的优先权调度算法 3.时间片轮转调度算法 4.基于时钟中断抢占的优 先权调度算 法。按实时要求的严格程度由低到高的顺序是( )。 · A、 l—3—2—4 B、 3—1—4—2 C、 3—1—2—4 D、 1—3—4—2
b 227、银行家算法是一种( )算法 A、 死锁解除 B、 死锁避免 C、 死锁预防 D、 死锁检测
d 229、资源的按序分配策略可以破坏( )条件 A、 互斥使用资源 B、 请求和保持 C、 不可抢占 D、 循环等待
c 236、死锁定理,是用于处理死锁的()方法 A、预防死锁B、避免死锁C、检测死锁D、解除死锁
a 237、死锁检测时,检查的是( ) A、 资源有向图 B、 前趋图 C、 搜索树 D、 安全图
d 238、死锁与安全状态的关系( ) A、 死锁状态有可能是安全状态 B、 安全状态有可能成为死锁状态 C、 不安全状态就是死锁状态 D、 死锁状态一定是不安全状态
b 243、一次分配所需所有资源,它破坏了死锁四个必要条件中的( ) A、 互斥 B、 保持并请求 C、 非剥夺 D、 循环等待
b 247、存储管理是对内存中______区域进行管理 A、 整个内存 B、 供用户使用的 C、 供系统使用的 D、 供程序使用的
b 248、当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称 为( )。 A、 源程序 B、 目标程序 C、 可执行程序 D、 非执行程序
253、可重定位装入方式主要为了( )。 bA、 解决碎片问题B、 便于多作业共享内存C、 回收空白区方便D、 摆脱用户干预255、提高主存的利用率主要通过( )实现。 aA、 主存分配B、 主存保护C、 主存扩充D、 地址转换257、在存储管理中,为实现地址映射,硬件应提供两个寄存器,一个是基址寄存 c器,另一个是( )。A、 控制寄存器B、 程序状态寄存器C、 限长寄存器D、 通用寄存器259、( )可将装入模块装入到内存中的任何允许的位置,但又不允许在程序运 b行时在内存中移动位置。A、 绝对装入方式B、 可重定位方式C、 动态运行时的装入方式D、 以上都不可以绝对装入方式 将 目标模块装入到内存中指定的位置。
可重定位方式 将 目标模块装入到内存中任意允许的位置。
动态运行时的装入方式 装入后 程序在运行时可以在内存中移动位置。
262、( )装入内存后的所有地址仍是逻辑地址。 cA、 绝对装入方式 B、 可重定位装入方式C、 动态运行时的装入方式D、 以上都不对动态运行时装入方式在装入内存后所有的地址仍然是逻辑地址,只有在程序运行时才进行地址转换。272、采用固定分区管理的最大缺点是______ cA、 不利于内存的保护B、 分配算法复杂C、 内存的利用率不高D、 零头太多274、动态分区管理方式按作业需求量分配主存分区,所以( )。 dA、 分区的长度是固定的B、 分区的个数是确定的C、 分区的长度和个数都是确定的D、 分区的长度不是预先固定的,分区的个数也不是确定的279、常规存储管理方式的特征是( ) afA、 一次性B、 多次性C、 全局性D、 对换性E、 虚拟性F、 驻留性G、 局部性280、多次性和对换性是必须建立在( )基础上的。 cA、 连续分配B、 单一分配C、 离散分配D、 动态分配281、实现虚拟存储器的方法之一:cA、 固定分区方式B、 连续单一分配方式C、 请求分页存储管理方式D、 动态分区存储管理方式284、虚拟存储器的特征是( )A、 一次性B、 多次性C、 全局性D、 对换性E、 虚拟性F、 驻留性G、 局部285、虚拟存储器的最大容量( )。 aA、 为内外存容量之和B、 由计算机的地址结构决定C、 是任意的D、 由作业的地址空间决定虚拟存储器的四个特征: 离散性,多次性,对换性,虚拟性。
借鉴
第一章 : 操作系统
(硬件系统)是计算机赖以工作的实体;(软件系统)保证计算机系统按用户指定的要求协调地工作。
作业与进程的主要区别是( )和( )。 ac
A.前者是由用户提交,后者是由系统自动生成
B.两者执行不同的程序段
C.前者以用户任务为单位,后者是操作系统控制的单位
D.前者是批处理的,后者是分时的
E.后者可并发执行,前者则不行
cpu 解释计算机指令,处理程序中的数据。
内核态:
1.系统中既有操作系统的程序,也有普通用户程序。为了安全性和稳定性,操作系统的程序不能随便访问,这就是内核态。即需要执行操作系统的程序就必须转换到内核态才能执行!!!
2. 内核态可以使用计算机所有的硬件资源!!!
用户态:不能直接使用系统资源,也不能改变CPU的工作状态,并且只能访问这个用户程序自己的存储空间!!!!
操作系统中的状态分为管态(核心态)和目态(用户态)。特权指令:一类只能在核心态下运行而不能在用户态下运行的特殊指令。不同的操作系统特权指令会有所差异,但是一般来说主要是和硬件相关的一些指令。
用户程序只在用户态下运行,有时需要访问系统核心功能,这时通过系统调用接口使用系统调用。
操作系统的方便,有效,可扩充,开放性。
操作系统即计算机管理控制程序,是管理计算机硬件与软件资源的程序。
计算机操作系统是随着计算机研究和应用的发展逐步形成并发展起来的,它是计算机系统中最基本的系统软件。
设置操作系统的主要目标是:方便性,有效性,可扩充性,开放性。
系统调用是由操作系统提供的内部调用,它只能通过用户程序间接使用。
分时操作系统是一个多用户交互式操作系统
abcd 60、处理机管理功能主要包括: A、 进程控制 B、 进程同步 C、 进程通信 D、 调度
abcd 61、存储器管理功能包括: A、 内存分配 B、 内存保护 C、 地址映射 D、 内存扩充
abd 63、设备管理功能主要包括: A、 缓冲管理 B、 设备分配 C、 设备共享 D、 设备处理
c 64、设备驱动程序的基本任务是( )。 A、 缓和 CPU 和 IO 设备速度不匹配的矛盾 B、 实现设备分配 C、 实现 CPU 和设备控制器之间的通信 D、 以上都不对
微内核 能够有效的 支持 多处理机 运行,非常适用于 分布式处理环境。
微内核并非是一个完整的OS,而只是将操作系统中最基本的部分放入微内核。
第二章:进程 ------ 并发环境中程序的执行过程
程序并发执行时,是多个程序共享系统中的各个资源,因而这些资源的状态是由多个程序来改变,致使程序的运行失去了封闭性。而程序一旦失去了封闭性也会导致其失去可再现性。
程序的并发执行: 指两个或者两个以上程序在计算机系统中已开始执行且尚未结束的状态
程序的并发执行具有以下特点:1.并发程序在执行期间具有相互制约关系 , 2. 程序与计算不再一一对应 3. 并发执行结果不可再现
进程的三种基本状态及其转换: 阻塞, 就绪, 执行。 阻塞---》就绪 IO完成 , 就绪---》执行 进程调度 , 执行---》阻塞 IO中断 , 执行 ---》 就绪 时间片用完。
进程所具有的的属性:1.用户所有。 进程为用户所有,其可为进程提供安全措施。 2.最少有一个线程。每个进程至少有一个线程,进程创建的同时会创建一个线程。
用户态和内核态
用户态,普通的用户进程运行的特权级。运行在用户态下的程序不能直接访问操作系统内核数据结构和程序。
当我们在系统中执行一个程序时,大部分时间是运行在用户态下的,在其需要操作系统帮助完成某些它没有权利和能力完成的工作的时候就会切换到内核态。
用户态与内核态的转换
1. 系统调用 。 这是用户态进程主动要求切换到内核态的一种方式,用户态进程通过系统调用申请使用操作系统提供的服务程序完成工作。
2. 异常。 当CPU在执行运行在用户态下的程序时,发生了某些事先不可预知的异常,这时会除法由当前运行进程切换到处理此异常的内核相关程序中,也就是转到了内核态。
3. 外围设备的中断
这3种方式是系统在运行时由用户态转到内核态的最主要方式,其中系统调用可以认为是用户进程主动发起的,异常和外围设备中断则是被动的。
在管态 即 系统态下执行的是:缺页处理程序,进程调度程序,时钟中断处理
访管指令与访管中断:访管指令是一条可以在用户态下执行的指令。在用户程序中,因要求操作系统提供服务而有意识地使用访管中断,从而产生一个中断事件,将操作系统转换为核心态,称为访管中断。访管中断由访管指令产生,程序员使用访管指令向操作系统请求服务。
原子操作在 系统态下执行,常驻内存
什么是与时间有关的错误,请举例说明。
与时间有关的错误可以这样描述:程序并发执行时若共享了公共变量,其执行结果将与并发程序执行的相对速度有关,即给定相同的初始条件,也可能会得到不同的结果,此为与时间有关的错误。
什么是临界资源与临界区?
临界资源是一次仅允许一个进程使用的共享资源。各进程采用互斥的方式,实现共享的资源称作临界资源。属于临界资源的硬件有 打印机,磁带机等。软件有 消息队列,数组,缓冲区。诸进程间采用互斥方式,实现对这种资源的共享。
临界区:每个进程中访问临界资源的那段代码称为临界区。每次只允许一个进程进入临界区。不管是硬件邻接资源还是软件临界资源,多个进程必须互斥的对他访问。
线程:在传统的操作系统总,拥有资源和独立调度的基本单位都是进程。在引入线程的操作系统中,线程是独立调度的基本单位,进程是资源分配的基本单位。在同一进程中,线程的切换不会引起进程的切换。在不同的进程中进行线程的切换,会引起进程的切换。
用户级线程:由应用程序所支持的线程实现,内核意识不到用户级线程的实现
内核级线程:内核支持的线程
属于同一进程的所有线程,都具有相同的地址空间。
引入线程可提高程序并发执行的程度,提升效率。
为了使系统中各部分资源得到均衡使用,就必须选择对资源需求不同的作业进行合理搭配,这项工作是由 作业 调度完成的。
高响应比优先调度算法:既考虑了作业的等待时间,又考虑了作业的运行时间的调度算法。、
按单道方式运行,平均执行时间最短的执行顺序是 短作业优先
作业是由用户提交的,进程是由系统产生的。
采用时间片轮转法进行调度是为了
最低松弛度优先(LLF) 算法根据任务紧急或松弛的程度,来确定任务的优先级。任务的紧急程度越高,为该任务所赋予的优先级就越高,使之优先执行。在实现该算法时要求系统中有一个按照松弛度排序的实时任务就绪队列,松弛度最低的任务排在队列最前面,被优先调度。
解除死锁常采用的方法是:终止一个死锁进程,终止所有的死锁进程,从死锁进程处抢夺资源
预防死锁:预防死锁的方法是通过破坏产生死锁的四个必要条件中的一个或几个,以避免发生死锁。由于互斥条件是非共享设备所必须的,不仅不能改变,还应加以保证,因此主要是破坏产生死锁的后三个条件。
避免死锁:避免死锁同样属于事先预防的策略,但并不是事先采取某种限制措施,破坏产生死锁的必要条件,而是在资源的动态分配过程中,防止系统进入不安全状态,以避免发生死锁。
死锁产生的四个必要条件:
互斥条件:资源是独占的且排他使用,进程互斥使用资源,即任意时刻一个资源只能给一个进程使用,其他进程若申请一个资源,而该资源被另一进程占有时,则申请者等待直到资源被占有者释放。
不可剥夺条件:进程所获得的资源在未使用完毕之前,不被其他进程强行剥夺,而只能由获得该资源的进程资源释放。
请求和保持条件:进程每次申请它所需要的一部分资源,在申请新的资源的同时,继续占用已分配到的资源。
循环等待条件:
1源程序:程序可以用高级语言或汇编语言编写,用高级语言或汇编语言编写的程序称
为源程序。C语言源程序的扩展名为“.c”。
源程序不能直接在计算机上执行,需要用“编译程序”将源程序编译为二进制形式的代码。
2目标程序:源程序经过“编译程序”编译所得到的二进制代码称为目标程序。目标程序
的扩展名为“.obj”。
目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问
题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。
3可执行程序:目标程序与库函数连接,形成的完整的可在操作系统下独立执行的程序
称为可执行程序。可执行程序的扩展名为“.exe”(在dos/windows环境下)。
重定位,通常来说把在装入时对目标程序中指令和数据地址修改的过程称为重定位。
静态重定位:在装入时,将逻辑地址转换为物理地址,地址变换是在进程装入时一次完成的,以后不再改变
动态重定位:动态运行的装入程序把转入模块装入内存之后,并不立即把装入模块的逻辑地址进行转换, 而是把这种转换推迟到程序执行时才进行,装入内存后的所有地址都仍然是逻辑地址。这种方式需要寄存器的支持。
可重定位装入方式主要是为了:便于多作业共享内存
一个进程映像是pcb结构与程序和数据的组合。
对进程的管理和控制 使用 原语。
用户进程 从 用户态 切换到 内核态
信号量机制 : 进程同步工具
可重定位装入方式 主要是为了 便于 多作业 共享内存。