第一章 概述
1、操作系统的概念、基本类型、基本特征、基本功能、管态/目态;
概念:操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理的组织调度计算机工作和资源的分配,已提供给用户和其他软件方便的接口和环境,它是计算机系统最基本的系统软件。
基本类型:
1)单道批处理系统:监督程序Monitor、自动性、顺序性、单道性。
2)多道批处理系统:多道性、无序性、调度性。
3)分时系统:多路性(多用户)、独立性、及时性、交互性。
4)实时系统:实时控制系统(硬实时)、实时信息处理(软实时)。
CPU利用率:手工<单道批处理<多用户分时系统<多道批处理
基本特征:并发、共享、虚拟、异步。
基本功能:处理机管理功能、存储器管理功能、设备管理功能、文件管理功能、用户接口
管态/目态(核心态/用户态)
管态-->目态:运行程序,修改程序状态字(PSW)
目态-->管态:系统调用
2、操作系统的目标、作用、结构设计方法;
目标:
1)方便性 方便用户
2)有效性 提高系统资源利用率和系统吞吐量
3)可扩充性 方便增加新的功能和模块
4)开放性 系统遵循世界标准规范
作用:
1)作为用户和计算机软硬件系统之间的接口
2)作为计算机系统资源的管理者
3)实现了对计算机资源的抽象,用作扩充机器
结构设计方法:
1)整体式结构
2)模块化结构
3)层次式结构
4)微内核OS结构
第二章 进程管理
1、多道程序设计技术(多道程序设计技术是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制下,相互穿插运行);
2、进程的概念、特征、基本状态及与程序的区别和联系;
3、PCB的概念、前趋图、进程图;
4、原语的概念及进程控制原语的种类;
5、进程的同步与互斥的概念、临界资源与临界区的概念;
6、信号量及其应用;
【典型题举例】系统中有三个进程GET、PRO和PUT,共用两个缓冲区BUF1和BUF2。
假设BUF1中最多可放11个信息,现已放入了两个信息;BUF2最多可放5个信息,目前为空。
GET进程负责不断地将输入信息送入BUF1中,PRO进程负责从BUF1中取出信息进行处理,并将处理结果送到BUF2中,PUT进程负责从BUF2中读取结果并输出。
试写出正确实现GET、PRO、PUT的同步与互斥的算法(要求:(1)用类C语言描述,条理清楚,注释恰当;(2)信号量原语统一使用wait和signal)。
图1 进程合作
Semaphore e1=9,p1=2,e2=5,p2=0;
Main(){
Cobegin
Get();
Pro();
Put();
coend
}
Get
While(1){
Wait(e1);
Put in buf1;
Signal(p1);}
Pro
Wait(p1);
Get from buf1;
Signal(e1);
Wait(e2);
Put in buf2
Signal(p2);
Put
Wait(p2)
Get from buf2
Signal(e2)
7、线程的概念及种类、引入线程的目的;
第三章 处理机调度与死锁
- 调度的层次与作用;
2、常用调度算法及计算;
【典型题举例】设有三个作业,它们的提交时间及运行时间如下表,若采用短作业优先调度策略,试给出作业串行运行时的调度次序,计算平均周转时间。
作业 提交时间 运行时间
J1 0 4J2 2 8
J3 3 5
P1 0 8
P2 1 4
P3 2 1
P4 4 3
3、死锁的概念、产生的原因及必要条件;
4、处理死锁的基本方法;
5、银行家算法及计算;
【典型题举例】
- 某系统有A、B、C、D四类资源可供五个进程P1.P2.P3.P4.P5共享。系统对这四类资源的拥有量为:A类3个、B类14个、C类12个、D类12个。进程对资源的需求和分配情况如图,请问现在是否是安全状态,请说明原因及判断过程。
进程
已占有资源
最大需求数
A B C D
A B C D
P1
0 0 1 2
0 0 1 2
P2
1 0 0 0
1 7 5 0
P3
1 3 5 4
2 3 5 6
P4
0 6 3 2
0 6 5 2
P5
0 0 1 4
0 6 5 6
- 化简下图的资源分配图,并说明有无进程处于死锁状态。
第四章 存储管理
1、存储管理的目的、功能;
2、重定位的概念及方法;
3、内碎片、外碎片;
4、常用分区分配算法及对应的空闲区排列方式;
5、基本分页(分段)的概念、页(段)表的作用、地址变换过程及物理地址计算;
【典型题举例】
(1)某页式存储系统页表如下,设每页1KB,请写出逻辑地址为8300时所对应的页号和页内地址,以及在内存中对应的物理地址。(请详细写出运算过程)
系统页表:
页号
0
1
2
3
4
5
6
7
8
块号
3
5
6
10
8
7
1
2
4
(2)已知如下段表:
段号
0
1
2
3
4
基址
219
2300
90
1327
1952
长度
600
14
100
580
96
在分段存储管理下系统运行时,下列逻辑地址(第一位表示段号,第二位表示段内位移)的物理地址是什么?
(a):(1,10)
(b):(4,112)
6、分页与分段的区别、各自的优缺点;
7、快表的作用、内存访问时间的计算;
第五章 虚拟存储器
1、虚拟存储器的基本概念、理论依据、基本特征及关键技术;
2、熟知请求分页基本思想;
3、页面置换算法、缺页率计算、LRU算法的硬件实现方法、抖动、Belady异常、缺页中断;
【典型题举例】
在页式虚拟存储管理的计算机系统中,运行一个共有7页的作业,且作业在主存中分配到3块主存空间,作业执行时访问页的顺序为1, 2, 3, 4, 2, 1, 5, 6, 2, 1, 3, 7, 6, 3, 2, 1, 2, 3, 6。假设3个物理块初始为空,所有页面都采用请调式LRU替换算法,要求图示出内存页面变化情况,并计算缺页率。
(1)虚拟内存下内存访问时间的计算;
【典型题举例】
对一个将页表存放在内存中的分页系统:
(1)若访问内存需要0.2us,有效访问时间为多少?
(2)如果加一快表,且假定设置快表的命中率高达90%,则有效内存访问时间又是多少?(快表查询需要时间忽略)。
第六章 设备管理
1、设备管理的任务、功能及目标;
2、I/O设备的分类,设备、控制器及通道的关系;
3、通道的基本概念及分类;
4、I/O控制方式及推动发展的因素、各自适用的场合;
5、缓冲区的概念、分类及引入目的;单缓冲、双缓冲计算处理数据的时间;
【典型题目举例】
- 某文件占10个磁盘块,现要把该文件磁盘块逐个读入主存缓冲区,并送用户区进行分析。假设一个缓冲区与一个磁盘块大小相同,把一个磁盘块读入缓冲区的时间为100μs,将缓冲区的数据传送到用户区的时间是50μs,CPU对一块数据进行分析的时间为50μs。试计算在单缓冲区和双缓冲区结构下,读入并分析该文件的时间分别是多少,并画图说明计算过程。
6、I/O软件的层次、各层主要功能、设备独立性的概念;
7、SPOOLING技术的概念、作用及SPOOLING系统的组成;
- SPOOLing技术是一类典型的虚拟设备技术,通常是用独占设备来模拟共享设备。(F)
8、磁盘访问过程及访问时间的确定、块号与柱面、磁道、扇区号的对应关系、磁盘调度算法及其计算;扇区的优化;
【典型题目举例】
- 若磁头的当前位置为100 柱面,磁头正向磁道号减小方向移动。现有一磁盘读写请求队列,柱面号依次为:190 , 10 , 160 , 80 , 90 , 125 , 30 , 20 , 29 , 140 , 25 。若采用电梯调度算法,试计算移臂经过的柱面数和平均寻道长度。
第七章 文件管理
1、文件系统的组成、功能;
2、打开、关闭操作的目的;
3、文件逻辑结构;
4、文件的目录结构、索引节点及文件控制块的作用;
- 如何加快目录检索?
- 目录项分解法:即把FCB分成两部分,符号目录项:文件名,文件号,基本目录项:除文件名外的所有字段
5、了解文件的共享和保护措施。
第八章 磁盘存储器的管理
1、文件的物理结构;
- FAT表的作用、FAT表大小的计算;
【典型题目举例】
假设盘块大小为512B,硬盘的大小为100MB,如果采用显式链接管理方式,对应的FAT为多少字节?
1)100MB/512B=200K个块;
2)需要18个二进制位来描述块号;
3)按照FAT表的组织结构,每个表项需要扩充成20位即2.5个字节;
所以FAT表的大小=2.5B*200K=500KB。
2.混合索引分配方式的结构及相关计算;
【典型题目举例】
某磁盘文件系统,采用混合索引分配方式,13个地址项记录在FCB中,第0-9个地址项为直接地址,第10个地址项为一次间接地址,第11个地址项为二次间接地址,第12个地址项为三次间接地址。如果每个盘块的大小为512字节,盘块号需要用3个字节来描述,问:
1)该文件系统允许文件的最大长度是多少?
2)若要读取字节地址为5000B处的文件数据,试计算得到其映射到的物理地址(磁盘块号及偏移量),请写明计算过程。
4、文件空闲区的管理方法(空闲表、空闲链、位示图与成组链接法);
【典型题目举例】
假设一个磁盘组有 100 个柱面,编号为 0-99,每个柱面有 32 个磁道,编号为 0-31,每个磁道有16 个扇区,编号为0-15。现采用位示图方法管理磁盘空间,磁盘块与扇区大小相等,令磁盘块号按柱面顺序和磁道顺序编排(从0编起)。请回答下列问题:(5分)
1)若采用32 位的字组成位示图,共需要多少个字?
2)第40 字的第18 位对应于哪个柱面、哪个读写磁头和哪个扇区?
1)(16×32×100)/32=1600,需要1600 个字。
2)块号是1298:40×32+18=1298
柱面号是2:[1298/(16×32)]=2
磁头号是17:[(1298 mod (16×32))/16]=17
扇区号是2:(1298 mod (16×32))mod 16=2
某UNIX操作系统的空闲盘块号栈内容为:空闲块数为3,依次登记的空闲块号为77、89、60,问此时若一个文件A需要5个盘块,系统进行分配后又有个文件B被删除,它占用的盘块块号为100、101、109、500,分析分配和回收过程,说明上述操作过后空闲盘块号栈里的空闲块个数及内容如何?
5、了解提高磁盘I/O速度的途径。