期末复习【操作系统】
- 前言
- 推荐
- 期末复习大纲
- 第一章:操作系统引论
- 第二章进程的描述与控制
- 第三章进程调度和死锁
- 第四章+第五章内存管理
- 第六章 设备管理
- 第七章文件管理
- 第八章磁盘存储器的管理
- 第九章接口
- 算法:
- 期末复习测试
- 1进程控制与线程测试
- 2进程同步测试题
- 3进程调度测试
- 4死锁测式
- 5编译链接可执行文件测试
- 6考研题-内存管理
- 最后
前言
以下内容源自操作系统
仅供学习交流使用
请您阅读文章声明,默认同意该声明
将在考试期间设置VIP可见,考试完恢复
推荐
导航【操作系统】
操作系统期末考试重点知识
操作系统考研真题专栏
题库【操作系统】
操作系统期末总复习(题库)
操作系统选择题
期末复习大纲
第一章:操作系统引论
第一章 操作系统引论【操作系统】
1.理解操作系统的目标
1.1.1操作系统的目标
1.方便性
2.有效性
3.可扩充性
4.开放性
2.理解OS的作用
1.1.2操作系统的作用
1.作为用户与计算机硬件系统之间的接口
2.OS作为计算机系统资源的管理者
3.OS实现了对计算机资源的抽象
3.理解操作系统的功能
4.理解多道、并发OS的含义
5.掌握多道批处理OS、分时OS、实时OS的基本特性,掌握分时OS基本特点和响应时间概念和公式T=nq。
6.了解OS设计目的
7.理解OS的基本特性及含义:并发性、共享性、虚拟性、异步性
8.理解OS的五大基本功能
9.理解OS内核概念,知道什么是微内核和强内核
10.了解OS结构设计(模块、分层、微内核的基本概念)
11.理解内核态、用户态概念
12.理解系统调用概念、功能、过程,并能理解系统调用和函数的区别,能够结合具体系统调用和函数理解二者的区别。
13.理解中断、异常概念
第二章进程的描述与控制
第二章 进程的描述与控制【操作系统】
一、进程概念及控制
1.理解进程概念
2.2.1进程的定义和特征
1. 进程的定义
为了能使程序并发执行,并且可以对并发执行的程序加以控制和描述 —— 进程
进程的定义:
1) 进程是程序的一次执行
2) 进程是一个程序及其数据在处理机上顺序执行时所发生的活动
3) 进程是具有独立功能的程序在一个数据集合上运行的过程,
它是系统进行资源分配和调度的一个独立单位
2.理解进程并发执行的四大特征及含义
2.1.3 程序并发执行
2. 程序并发执行时特征
1) 间断性 具有“执行——暂停——执行”这种间断性地活动规律。
2) 失去封闭性 当系统中存在着多个可以并发执行的程序时,系统中的各种资源将为它们所
共享,而这些资源的状态也由这些程序来改变,致使其中任一程序在运行时,其环境都必然
会受到其他程序的影响。
3) 不可再现性 程序在并发执行时,由于失去了封闭性,也将导致其又失去了可再现性。
3.理解PCB概念,了解PCB存储的基本信息,知道一个进程对应一个PCB,PCB是进程的唯一标志,伴随着进程的生命期存在。
2.2.1进程的定义和特征
1. 进程的定义
为了使参与并发执行的每个程序(含数据)都能独立地运行,在操作系统中必须为之
配置一个专门的数据结构,称为进程控制块(PCB,Process Control Block)。
系统利用PCB来描述进程的基本情况和活动过程,进而控制和管理进程。
进程实体(进程映像) = 程序段 + 相关的数据段 + PCB
一般情况下,把进程实体就简称为进程;创建进程,实质上是创建进程实体中的PCB;
撤销进程,实质上是撤销进程实体中的PCB。
4.理解进程和程序的区别
5.理解进程的基本特征
2.2.1进程的定义和特征
2. 进程特征
1) 动态性:
进程的实质是进程实体的执行过程
它由创建而产生,由调度而执行,由撤销而消亡
进程实体有一定的生命期,而程序则只是一组有序指令的集合,并存在于某种介质上,
其本身不具有活动的含义,因而是静态的。
2) 并发性:
多个程序实体同存在于内存中,且能在一段时间内同时运行。
3) 独立性:
进程实体是一个能独立运行、独立获得资源和独立接受调度的基本单位。
凡未建立PCB的程序都不能作为一个独立的单位参与运行。
4) 异步性:
进程是按照异步方式运行的,即按各自独立的、不可预知的速度向前推进。正是源于此因,
才导致了传统意义上的程序若参与并发执行,会产生其结果的不可再现性。
为使进程在并发运行时虽具有异步性,但仍能保证进程并发执行的结果是可再现的,
在OS中引入了进程的概念,并且配置相应的进程同步机制。
6.理解进程的三种基本状态,及转换关系和时机
2.2.2 进程的基本状态及转换
1. 进程三种基本状态
由于多个进程在并发执行时共享系统资源,致使它们在运行过程中呈现间断性地运行规律。
三种基本状态:
1)就绪(Ready)状态: 处于准备好运行的状态,即进程已分配到除CPU以外的
所有必要资源后,只要再获得CPU,便可立即执行。
2)执行(Running)状态: 已获得CPU,其程序正在执行的状态
3)阻塞(Block)状态: 正在执行的进程由于发生某事件(如I/O请求、申请缓冲区失
败等)暂时无法继续执行时的状态。OS会把处理机分配给另一个就绪进程,而让受阻进程
处于暂停状态。
7.了解进程控制块的组织形式
2.2.4 进程管理中的数据结构
4. 进程控制块的组织方式
(1)线性方式
组织在一张线性表中 —— 实现简单、开销小,每次查找需要扫描整个表
——适合进程数目不多的系统
(2)链接方式
把同状态进程的PCB分别通过PCB的链接字链接成一个队列
形成就绪队列、若干个阻塞队列、空白队列
就绪队列 —— 按优先级排列,高的在前面
阻塞队列 —— 按阻塞原因的不同,排成多个阻塞队列
(3)索引方式
系统根据所有进程状态的不同,建立几张索引表,例如就绪索引表、阻塞索引表等,
把各索引表在内存的首地址记录在内存的一些专用单元中。在每个索引表的表目中,
记录具有相应状态的某个PCB在PCB表的地址。
8.理解进程控制操作系统内核是系统硬件的首次延伸,通过执行各种原语操作来实现对进程的控制功能(创建、调度、通讯、撤销等)。了解以下原语
9.理解进程创建、撤销、唤醒、阻塞的基本过程和时机。
10.理解进程上下文切换
二、进程的同步与互斥
1.理解进程之间的两种相互制约关系
2.4.1 进程同步的基本概念
1. 两种形式的制约
两种形式的制约 —— 对于同处于一个系统中的多个进程
1)间接相互制约关系
多个程序在并发执行时,由于共享系统资源,致使在这些并发执行的程序之间形成相互制约的关系。
对于像打印机、磁带机这样的临界资源,必须保证多个进程对之只能互斥地访问。
由此,在这些进程间形成了源于对该类资源共享的所谓间接相互制约关系。为保证这些进程能有序地运行,对于系统中的这些资源,必须由系统实施统一分配,即用户在要使用之前,应先提出申请,而不允许用户进程直接使用。
2)直接相互制约关系
某些有应用程序,为了完成某任务而建立了两个或多个进程,这些进程将为完成同一项任务而相互合作。
进程间的直接相互制约关系就是源于它们之间的相互合作。
2.理解临界资源、临界区、信号量、记录型信号量(重点),了解and信号量、了解记录集信号量
2.4.1 进程同步的基本概念
2.临界资源
临界资源
许多硬件资源如打印机、磁带机等,都属于临界资源,诸进程间应采取互斥方式,实现对这种资源的访问。
2.4.1 进程同步的基本概念
3. 临界区
临界区 —— 每个进程中访问临界资源的那段代码
每个进程在进入临界区之前,应先对欲访问的临界资源进行检查,看其是否正被访问。如果此刻临界资源未被访问,进程便可进入临界区对该资源进行访问,并设置它正被访问的标志;如果此刻该临界资源正被访问,则本进程不能进入临界区。
所以,必须在临界区前面增加一段用于进行上述检查的代码 —— 进入区,相应地,在临界区后面增加一段用于将临界区正被访问的标志恢复为未被访问的标志 —— 退出区,除了上述之外的其他部分的代码 —— 剩余区
while(TRUE)
{
进入区(entry section);
临界区(critical section);
退出区(exit section);
剩余区(remainder section);
}
2.4.3信号量机制
3.理解经典的同步问题(生产者-消费者(包含单缓冲区和多缓冲区问题)、读写问题、哲学家问题、分桔子苹果问题、get-copy-put)
2.5 经典进程的同步问题
4.理解进程通信概念、高级通信和低级通信概念、了解高级通信的基本形式和基本含义,理解消息缓冲区机制。
5.理解线程概念和特征
2.7.1 线程的引入
线程
设法将进程的上述两个属性分开,由 OS 分开处理,
亦即对于作为调度和分派的基本单位,不同时作为拥有资源的单位;
而对于拥有资源的基本单位,又不对之进行频繁的切换。
正是在这种思想的指导下,形成了线程的概念
2.7.2 线程和进程的比较
线程又称为轻型进程或进程元,传统进程称为重型进程。
1.调度的基本单位
在传统的 OS 中,作为拥有资源的基本单位和独立调度、分派的基本单位都是进程。而在引入线程的操作系统中,则把线程作为调度和分派的基本单位,而进程作为资源拥有的基本单位。
在同一进程中,线程的切换不会引起进程的切换,但从一个进程中的线程切换到另一个进程中的线程时,将会引起进程的切换。
2.并发性
在引入线程的操作系统中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间亦可并发执行。
3.拥有资源
不论是传统的 OS,还是引入了线程的 OS,进程都可以拥有资源,并作为系统中拥有资源的一个基本单位。线程本身并不拥有系统资源,而是仅有一点必不可少的、能保证独立运行的资源,例如线程控制块等。
允许一个进程中的多个线程贡献该进程所拥有的资源,这主要表现在:属于同一进程的所有线程都具有相同的地址空间。
4.独立性
在同一进程中的不同线程之间的独立性要比不同进程之间的独立性低得多。因为进程之间是为了防止彼此干扰和破坏;而同一进程中的不同线程往往是为了提高并发性以及进行相互之间的合作而创建的。
5.系统开销
进程的创建、撤销和切换所付出的开销都明显大于线程的创建、撤销和切换的开销。
6.支持多处理机系统
对于单线程进程,不管多少处理机,同一时刻该进程只能运行在一个处理机上。对于多线程进程,就可以将一个进程中的多个线程分配到多个处理机上并行执行。
第三章进程调度和死锁
第三章 处理机调度和死锁【操作系统】
1.理解进程调度概念
系统能按某种算法,动态地将处理机分配给处于就绪状态的一个进程,使之执行
2.理解处理机高级-中级-低级调度
## 1.处理机调度的层次和调度算法的目标
### 1.1 处理机调度的层次
**1高级调度**
高级调度又称长程调度或作业调度,它的调度对象是作业。
**2低级调度**
低级调度又称为进程调度或短程调度,其所调度的对象是进程(或内核级进程)。
**3中级调度**
中级调度又称为内存调度。引入中级调度的主要目的是,提高内存利用率和系统吞吐量。
3.理解进程策略(FCFS、SJF、优先权、高响应比、时间片轮转、多级反馈(了解基本含义))含义和特点
4.死锁理解
1)产生死锁的原因
2)产生死锁的4个必要条件
3)处理死锁的基本方法
4)死锁的预防(具体策略)
5)死锁的避免(银行家算法)
6)了解系统模型
7)了解死锁的检测
8)了解死锁的解除(基本思路)
第四章+第五章内存管理
第四章 存储器管理【操作系统】第五章 虚拟存储器【操作系统】
1.理解虚拟存储器概念和特征
2.理解地址重定位,静态重定位、动态重定位
3.理解静态链接的原理,了解动态链接的基本含义
4.2.2 程序的链接
1.静态链接方式
在程序运行之前,先将各目标模块及它们所需的库函数,链接成一个完整的装配模块,以后不再拆开。在将这几个目标模块装配成一个装入模块时,须解决以下两个问题:
1)对相对地址进行修改。这是因为在由编译程序所产生的所有目标模块中,使用的都是相对地址,其起始地址都为 0,每个模块中的地址都是相对于起始地址计算的。
2)变换外部调用符号。将每个模块中所用的外部调用符号也都变换为相对地址。
这种先进行链接所形成的一个完整的装入模块,又称为可执行文件。
2.装入时动态链接
指用户源程序经编译后所得的目标模块,在装入内存时采用边装入边链接的链接方式。这样便于装入前修改和更新,以及实现对目标模块的共享。
3.运行时动态链接
将对某些模块的链接推迟到程序执行时才进行链接,亦即,在执行过程中,当发现一个被调用模块尚未装入内存时,立即由 OS 去找到该模块并将之装入内存,把它链接到调用者模块上。凡在执行过程中未被用到的目标模块,都不会被调入内存和被链接到装入模块上,这样不仅可加快程序的装入过程,而且可节省大量的内存空间。
4.理解早期动态分区内存管理原理,内存分配策略(FF、BF、WF算法策略)、内存回收策略
5.理解内存管理中cache的作用
6.理解请求分页管理原理
7.理解请求分段管理原理
8.理解请求段页式管理原理
9.理解页面置换算法(FIFO,OPT,LRU,CLOCK(NRU))
10.理解抖动概念
11.理解程序局部性原理
### 5.1.1 常规存储管理方式的特征和局部性原理
12.二级页表
第六章 设备管理
第六章 输入输出系统【操作系统】
1.了解设备分类
2.理解设备控制器功能和基本组成
6.2.2 设备控制器
3.三种I/O控制方式的基本原理和特征,重点掌握中断和DMA控制方式
(4)磁盘读取数据采用 DMA 方式,请叙述其工作流程(6 分)
(1)设置 AR 和 DC 初值;
(2)启动 DMA 传送命令;
(3)挪用存储器周期传送数据字;
(4)存储器地址增加 1, 字计数器 DC 减 1;
(5)DC=0 则到(6), 否则到(3)
(6)请求中断
每个步骤 1 分,共 6 分。
4.理解缓冲管理(双缓冲,缓冲池)
5.理解设备分配作用、功能、分配算法
6.理解I/O软件层次,可参考下图理解,每层功能和功能间的关系。
7.掌握Spooling技术(基本原理和组成)以及如何应用。
第七章文件管理
第七章 文件管理【操作系统】
1.了解文件系统逻辑组织
2.理解FCB概念(FCB即目录中的一项)
3.理解索引结点Inode概念
4.理解文件目录管理(重点树目录)
第八章磁盘存储器的管理
第八章 磁盘存储器的管理 【操作系统】
1.理解文件外存的组织方式(基本原理、优缺点、适应场合)
2.理解文件存储空间管理(空闲表(链表)、位示图)
3.了解提高磁盘I/O速度的途径
4.了解文件的共享方式(硬链接和软连接)
5.了解提高磁盘可靠性的技术及基本原理
6.了解如何保证数据安全、可靠、一致性的一些技术及基本原理
第九章接口
第九章 操作系统接口【操作系统】
1.系统调用与一般过程调用的区别
2.系统调用过程
9.6.1 系统调用的实现方法
算法:
1.进程调度算法(FCFS、SJF、优先权高响应比、时间片轮转),计算进程周转时间和平均周转时间
第三章 处理机调度和死锁【操作系统】
2.进程同步(wait(s),signal(s)公式;多进程并发时wait(s)signal(s)数据的变化;生产者-消费者(单和多缓冲区)、读写问题、哲学家问题、分桔子苹果问题、get-copy-put问题)
第二章 进程的描述与控制【操作系统】
2.两个进程计算进程 P1、打印进程 P2 互斥使用一个包含 N(N > 0)个单元的缓冲区。
P1 依次向缓冲区某一空单元中放置数据,每次只能放一个数据;P2 按照数据放置的顺序依次从该缓冲区中
取出一个数据,每次只能取一个数据。请用信号量机制实现这两个进程的同步与互斥活动,要求:
(1)请说明需要定义哪些信号量,并说明其初值及含义。(5 分)
(2)请用伪代码描述用信号量机制实现这两个进程的同步与互斥活动。(10 分)
答案要点:
(1)缓冲区是一互斥资源,因此设互斥信号量 mutex。
(2)同步问题:
P1 需要空缓冲区与取用同步,设同步信号量 empty,初始有 N 个空缓冲区,因此初值为N
P2 需要满缓冲区与放置同步,设同步信号量 full,初始没有满缓冲区,因此初值为 0。
semaphore mutex=1;
semaphore empty=N,full=0;
main()
cobegin{
Process P1
while(true) {
P(empty);
P(mutex);
放置一个数据;
V(mutex);
V(full);
}
Process P2
while (true) {
P(full);
P(mutex);
取一个数据;
V(mutex);
V(empty);
}
}coend
3.死锁中银行家算法
第三章 处理机调度和死锁【操作系统】
4.存储管理中,动态分区管理FF、BF、WF算法、请求分页、请求分段方式中虚拟地址到逻辑地址映射计算
第四章 存储器管理【操作系统】
5.逻辑地址到物理地址变换
同6
6.分页、分段、段页式存储管理地址变换过程
第四章 存储器管理【操作系统】
7.页面置换算法(FIFO,OPT,LRU,CLOCK(NRU))
第五章 虚拟存储器【操作系统】
8.磁盘调度算法(FIFO,SSTF,SCAN,CSAN)
第六章 输入输出系统【操作系统】
期末复习测试
操作系统选择题
1进程控制与线程测试
1 B
哪个命令可以查看进程的动态情况()
A.ps
B. top
C.Is
D.cd
2 B
一个进程一旦创建就可以为其分配CPU,并运行。
A.对
B.错
3 A
线程控制块TCB中不应拥有的内容是()。
A.内存地址空间
B.期令计数器PC
C.用户栈指针
D.线程状志
4 A
进程代表程序的执行过程,它是一个动态的实体,随着程序中指令的执行不断地变化。
A.对
B.错
5 D
在支持多线程的系統中,进程创建的若干个钱程不能共享的是()。
A.进程P的代码段
B.进程P中打开的文件
C.进程P的全局变量
D.进程P中某线程的栈指针
6 A
在创建进程时,()不是创建进程所必须的步骤。
A.由调度程序为进理分配CPU
B.建立一个PCB
C.为进程分配内存
D.将进程插入就绪队列
7 A
进程上下文是指进程的执行环境。
A.对
B.错
2进程同步测试题
1 B
对于临界区,进程之间可同时进行修改操作。
A. 对
B. 错
2 B
临界资源是访问和操作共享数据的代码段。
A. 对
B. 错
3 D
我们把在一段时间内,只允许一个进程访问的资源,称为临界资源,因此,我们可以得出下列论述,正确的论述为( )。
A. 对临界资源是不能实现资源共享的。
B. 只要能使程序并发执行,这些并发执行的程序便可对临界资源实现共享。
C. 为临界资源配上相应的设备控制块后,便能被共享。
D. 对临界资源,应采取互斥访问方式,来实现共享。
解析
解析:临界资源是共享资源,只不过共享方式是互斥访问。
答案:D。
4 B
设与某资源关联的信号量初值为3,当前值为1。若M表示该资源的可用个数,N表示等待该资源的进程数,则M、N分别是( )。
A. 0、1
B. 1、0
C. 1、2
D. 2、0
5 B
进程的等待队列不是共享队列,因此不需要保护。
A. 对
B. 错
6 C
有两个并发执行的进程 P1 和 P2,共享初值为 1 的变量 x。P1 对 x 加 1,P2 对 x 减 1。加1 和减 1 操作的指令序列分别如下所示。
两个操作完成后,x 的值
A. 可能为-1 或 3
B. 只能为 1
C. 可能为 0、1 或 2
D. 可能为-1、0、1 或 2
解析
P1 进程执行加 1 操作之前,如果 P2 的减 1 操作已将 x 的值减为 0,则加 1 操作完成后,x 的值为 1;如果 P2 的减 1 操作还未将 x 的值减为 0,则加 1 操作完成后,x 的值为 2。所以加 1 操作结束后 x 的值只能为 1 或 2;同理减 1 操作结束后 x 的值只能为 0 或 1。
7 A
两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来信息,或者建立某个条件后再向前执行,这种关系是进程间的( )关系。
A. 同步
B. 互斥
C. 竞争
D. 合作
解析
解析:进程在某个同步点上等待另一进程发来的消息,之后该进程才可以继续运行,这种关系称为同步关系。答案:A。
8 A
关于wait()和signal()操作,下面哪个说法是对的()
A. wait()申请一个资源,资源不够,则阻塞,signal()操作释放一个资源,若有进程等待在唤醒
B. wait()申请一个资源,signal()操作释放一个资源,若有进程等待在唤醒
C. wait()申请一个资源,资源不够,则阻塞,signal()操作释放一个资源
D. wait()申请一个资源,signal()操作释放一个资源
3进程调度测试
1 A
不适宜采用不可抢占处理机的优先数调度算法的系统是( )。
A. 实时系统
B. 分时系统
C. 单道批处理系统
D. 多道批处理系统
正确答案: A
你的作答: B
解析
解析:实时系统一旦一个低优先数、需要大量CPU时间的进程占用处理机,就会一直运行,直到运行结束,或者直到因某事件而阻塞。在此之前,即使高优先数的紧急任务到达,也得不到处理,因而可能延误对重要事件的响应和处理。答案:选A。
2 D
在一般操作系统中必不可少的调度是( )。
A. 高级调度
B. 中级调度
C. 作业调度
D. 进程调度
解析
解析:处理机调度分为高级调度(又称为作业调度)、中级调度以及进程调度三级调度,进程调度是最基本的一种,一般操作系统中都必须配置这一级调度。答案:D。
3 B
当一个作业的作业控制块等表格填写完毕后,任务作业的JCB就连成一串而形成了一个排队队列,该队列称为作业( )。
A. 阻塞队列
B. 后背队列
C. 就续队列
D. 运行队列
解析
解析:作业创建好进入系统,完成了一些表格的填写后,排在外存的后备队列里。答案:B。
4 A
在采用等长时间片轮转处理机调度算法的分时操作系统中,各终端用户所占有处理机的时间总量是( )。
A. 与终端进程数有关的
B. 相同的
C. 与终端数有关的
D. 以上都不对
解析
解析:处理机是分配给进程(线程)的,而不同终端用户可能有不同数量的进程,一个拥有较多数量进程的终端显然比拥有较少数量进程的终端获得CPU的时间要多。答案:选A。
5 B
作业从进入后备作业队列到被调度程序选中的时间间隔称为( )。
A. 响出时间
B. 等待时间
C. 周转时间
D. 运行时间
解析
解析:响应时间是用于评价分时系统的性能的,是从用户提交一个请求开始,直至系统首次产生响应为止的时间;周转时间是用于评价批处理系统的系统的,是指从作业被提交给系统开始,到作业完成为止的这段时间间隔;运行时间是指CPU真正给进城服务的时间。因此,作业进入后备队列到等待被调度程序选中的这段时间间隔应该是等待时间。答案:B。
6 C
有两个程序:A程序按顺序使用CPU 10s,使用设备甲5s,使用CPU 5s,使用设备乙10s,最后使用CPU 10s;B程序顺序使用设备甲10s,使用CPU 10s,使用设备乙5s,使用CPU 5s,使用设备乙10s,在顺序环境下执行A程序和B程序,CPU的利用率为( )。
A. 30%
B. 40%
C. 50%
D. 60%
解析
解析:A程序和B程序使用CPU共10s+5s+10s+10s+5s=40s,总共的运行时间为10s+5s+5s+10s+10s+10s+10s+5s+5s+10s=80s,故CPU的利用率为40s/80s=50%。答案:C。
7 A
处于后备状态的作业存放在( )中。
A. 外存
B. 内存
C. 外存和内存
D. 扩展内存
解析
解析:处于后备状态的作业是创建好后进入系统,还没有经过作业调度的作业,是处于外存中的。答案:A。
8 A
在非剥夺调度方式下,运行进程执行V原语后,其状态( )。
A. 不变
B. 要变
C. 可能要变
D. 可能不变
解析
解析:运行进程执行V原语后,有可能唤醒等待队列上的进程,但是在非剥夺调度方式下,不会抢夺正在运行进程对CPU的控制权,当前运行的进城会继续运行下去,因此,其状态不变。答案:选A。
9 A
在分时系统中,进程调度除了采用时间片轮转算法,还可以结合( )调度算法。
A. 可剥夺CPU的动态优先数调度算法
B. 先来先服务调度算法
C. 短作业优先调度算法
D. 高响应比优先调度算法
解析
解析:分时系统的特点是要求响应速度及时,除RR算法之外,还可以采用可剥夺CPU的动态优先数调度算法。如经典UNIX的处理机调度算法,算法也可以保证响应速度。其他的算法不能保证响应速度。答案:A。
4死锁测式
1 C
某系统中有13台打印机,N个进程共享打印机资源,每次只能申请1台打印机,每个进程最多申请3台,当N的取值不超过()时,系统不会发生死锁。
A.4
B.5
C.6
D.7
多个进程,每个进程需要某个资源m个,这种资源共有n个,最多有 ⌈n/(m-1)-1⌉ 个这样的进程争夺这个资源,而不会发生死锁
⌈ ⌉ 向上取整符号
n=13,m=3,N=6
点击经典算法
2 C
P1请求{S1,S2};P2请求{S2,S3};P3请求{S1,S3},会不会产生死锁?
A.不会,进程资源请求顺常合理
B.会,当P1、P2、P3对资源请求保持形成循环等待
C.可能会,当P1,P2、P3对资源请求保持形成循环等待
D.不会,资源充足不会产生死锁
3 A
发生死锁的必要条件为四个,要防止死锁的发生,可以破坏这四个必要条件,但破坏()条件是不太实际的
A.互斥
B.不可剥夺
C.部分等待
D.循环等待
4 B
可避免死锁的算法是(),
A.轮询算法
B.银行家算法
C.检测算法
D.电梯梯度算法
5 D
以下哪些是死锁的起因
A.竞争不可抢占性资源
B.竞争可消耗性资源
C进程推进顺序不当
D.ABC都是
5编译链接可执行文件测试
1 D
关于可执行文件,下列说法错误的是:
A.可以使用readelf -S查看其各个section的信息。
B.链接器链接后生成的最终文件为ELF格式可执行文件,一个ELF可执行文件通常被链接为不同的段,常见的段譬如.text、.data、.rodata、.bss等段。
C.由于ELF文件无法被当做普通文本文件打开,如果希望直接查看一个ELF文件包含的指令和数据,需要使用反汇编的方法。使用 objdump-D 对其进行反汇编。
D.未初始化的数据段bss和已初始化的数据段是放在一起的
2 D
关于链接,下列说法错误的是:
A.静态链接是指在编译阶段直接把静态库加入到可执行文件中去,这样可执行文件会比较大。
B.动态链接则是指链接阶段仅仅只加入一些描述信息,而程序执行时再从系统中把相应动态库加载到内存中去。
C.为创建可执行文件,链接器必须要完成的主要任务是:符号解析(把目标文件中符号的定义和引用联系起来)和重定位(把符 号定义和内存地址对应起来然后修改所有对符号的引用)
D.由于链接动态库和静态库的路径可能有重合,所以如果在路径中有同名的静态库文件和动态库文件,比如libtest.a和libtest.so, gcc链接时默认优先选择静态库
3 B
关于编译,下列说法正确的是:
A.编译就是展开所有的宏定义并删除#define。
B.编译过程就是对预处理完的文件进行一系列的词法分析,语法分析,语义分析及优化后生成相应的汇编代码
C.预处理就是对汇编代码进行处理,生成处理器能识别的指令,保存在后缀为.o的目标文件中
D.编译后生成的文件就是可执行文件
6考研题-内存管理
1 C
一个分段存储管理系统中,地址长度为32位,其中段号占8位,则最大段长是
A.2^8字节
B.2^16字节
C.2^24字节
D.2^32字节
2 A
当系统发生抖动(thrashing)时,可以采取的有效措施是
I. 撤销部分进程
II. 增加磁盘交换区的容量
III.提高用户进程的优先级
A.仅I
B.仅II
C.仅III
D.仅I、II
3 A
分区分配内存管理方式的主要保护措施是
A.界地址保护
B.程序代码保护
C.数据保护
D.栈保护
4 B
某计算机采用二级页表的分页存储管理方式,按字节编址,页大小为210字节,页表项大小为2字节,逻辑地址结构为: 页目录号 页号 页内偏移量 ,逻辑地址空间大小为216页,则表示整个逻辑地址空间的页目录表中包含表项的个数至少是
A.64
B.128
C.256
D.512
解析:
一张页表可以存放210 /2=29项
个数为216/29=27个
5 C
在虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是
A.编辑
B.编译
C.链接
D.装载
6 B
某基于动态分区存储管理的计算机,其主存容量为55 MB(初始为空闲),采用最佳适配(Best Fit)算法,分配和释放的顺序为:分配15 MB、分配30 MB、释放15 MB、分配8 MB、分配6 MB,此时主存中最大空闲分区的大小是
A.7MB
B.9 MB
C.10 MB
D.15 MB