一、选择题(每题1分,共25分) 得分:
评分标准:选对得1分,选错0分。
二、综合题(共75分)
1.(5分)
多道程序设计技术是指同时把多个程序放入内容并允许它们交替执行和共享系统中的各类资源;当一个程序因某种原因(如i/o请求)而暂停执行时,cpu立即转去执行另一个程序。操作系统在引入多道程序设计技术后,使得系统内存有了多个程序(进程),它们宏观是行并行,微观上串行。要保持正常运行,在技术上需要解决以下问题:
1)在多道程序之间应如何分配被它们共享的处理机,使得cpu既能满足各程序运行的需要,又有较高的利用率。此外,一旦将cpu分配给某程序后,应何时收回。
2)如何为每道程序分配必要的内存空间,使它们各得其所,但又不会因相互重叠而丢失信息。此外,应如何防止因某道程序出现异常情况而破坏其他程序。
3)系统中可能有多种类型的i/o设备供多道程序共享,应如何分配这些i/o设备,如何做到既方便用户对设备的使用,又能提高设备的利用率。
4)在现代计算机系统中通常都存在着大量的程序和数据,应如何组织它们才便于用户使用。此外,还有信息保存的安全性和一致性问题。
5)对于系统中的各种应用程序,它们有的是属于计算型,有的属于i/o型,有些既重要又紧迫,有些又要求系统能及时响应,这些系统应如何组织和安排这些作业(程序)的工作流程。
评分标准:每个知识点满分各1分,回答准确满分;能说出基本含义0.5分。
2.(10分))
评分标准:1)信号量设置完全正确:1分,少设置或没有初始化0.5分;
2)p1算法完全正确:3分;若只实现了互斥,不能多个进程同时读取访问,则1分;若没有实现互斥,0分。
3)p2算法完全正确:2分;若没有实现互斥,0分。
4)p3算法全正确:4分;若只实现了互斥,不能多个进程同时读取访问,则1分;若没有实现互斥,0分。
int readcount=0; semaphore rmutex,mutex=1,1;
p1:while(1)
p3:while(1)
3.(10分))
评分标准:进程状态变迁图正确:5分;部分正确,1~4分;对调度算法的说明,每项满分1分,若能说明基本含义,但表述不够准确则得0.5分。
有合理的响应时间:采用时间片调度;
有较好的外部设备利用率:请求i/o的进程,i/o完成后进入中优先就绪队列;
缺页影响最小:请求页面的进程,当调页完成后,进入高优先级就绪队列。
低优先级进程(计算量大的进程):每次获得cpu后具有较长的时间片;
调度开销与进程数量无关:引入一个8位的位示图,实际只用了前3位,对应三个优先级队列,当某个优先级队列插入进程时,将对应二进制位置1;调度时先检查位示图的值,找到有就绪进程的优先级最高的队列,取队首进程运行即可。
4. (10分)
1)采用unix system v结构保存该文件,请描述字节偏移量为1120和500000的物理地址转换过程; (编物理块号计算或直接图示均给分)
unix system v 采用 i_addr[13]地址表来构造文件的索引结构。每个索引块能够存放的盘块号数1024/3≈341(个)。(评分标准:完成这一步1分)
字节偏移1120,其逻辑块号和块内字节偏移分别为,其对应的物理地址为i_addr[1]所指向的数据块内字节偏移为96的物理地址。
评分标准:完成该步2分,部分正确1分)
字节偏移500000,其逻辑块号和块内字节偏移分别为,其对应的物理地址转换:在i_addr[11]所指向的二级索引块中占用一个索引项,由其指向一个一级索引块,再从该一级索引块内获得偏移为488-10-341=137的索引项,在该索引项指向的数据块中字节偏移为288的地址即为逻辑地址500000所对应的物理地址。
评分标准:完成该步4分,部分正确1~3分)
2)合理即可。效率部分的分析1.5分;磁盘占有率方面1.5分。满分3分,部分合理1~2分。
5.(10分)
i/o软件的层次结构(2分)
1)中断处理程序(1分)
在i/o软件中最底层的是中断处理程序。当i/o设备完成一次i/o操作时,设备控制器会向中断控制器发信号,然后中断控制器再向cpu发信号,从而触发一次中断。
2)设备驱动程序(1分)
设备驱动程序是与具体的设备类型密切相关的,用来控制设备运行的程序。它一般是由生产厂商提供的。在i/o软件中,真正与i/o设备密切相关的,直接对它们进行控制的软件,就是设备驱动程序。
只有它才会去对设备控制器中的寄存器进行操作,去读状态命令,去写控制命令。每一个i/o设备都需要相应的设备驱动程序,而每一个设备驱动程序一般也只能处理一种类型的设备。
3)设备独立的i/o软件(系统软件)(1分)
在设备驱动程序的上一层,是设备独立的i/o软件,它是系统内核的一部分。
真正的i/o操作是由设备驱动程序来完成的,而设备驱动程序是由硬件厂商提供的,那么对于操作系统的设计者来说,在系统的内核中,需要做以下几个方面与i/o有关的事情:
定义并实现与上层应用程序之间的一个统一接口。
定义并实现与设备驱动程序的统一接口。
提供与设备无关的数据块大小。
缓冲技术。4)用户空间的i/o软件(1分)
前面介绍的各种i/o软件,都位于操作系统内核中,是操作系统的一部分。但也有另外一部分i/o软件,并不在系统内核中。这主要有两种:
库函数:与用户程序进行链接的库函数。
spooling技术。
后两个问题回答要点:
与i/o软件有关的角色有三个:应用程序的开发人员,操作系统的设计者和i/o设备厂商。i/o软件的接口:
一个是应用程序与操作系统之间的接口,另一个是操作系统与i/o设备之间的接口。
1)应用程序与操作系统之间的接口(1分)
操作系统提供一个应用程序编程接口,让编程人员调用。接口的目标:
设备独立性:用户在编写程序、访问各种i/o设备时,无需事先指定特定设备的类型。
统一命名:用简单的字符串或整数的方式来命名一个文件或设备。在unix系统中,命名的规则就是路径名。
阻塞与非阻塞i/o:我们希望操作系统提供的api函数分为两类,一类是阻塞性的,即进程启动一个系统调用后,会被阻塞起来,直到i/o操作完成。另一类是非阻塞性的,即当进程启动一个系统调用后,不管i/o操作是否完成,都会立即返回。
2)操作系统与i/o设备的接口(1分)
在操作系统和设备驱动之间,也有一个接口。对于每一种i/o设备来说,它的设备驱动程序是由硬件厂商提供的。为了实现设备的独立性,操作系统将各种类型的设备分为三类:
块设备、字符设备和网络设备,并为每一类设备定义了一个标准接口。
1分)1分)
6.(10分)
1)需要使用多级页表,基于进程大小的角度解释原因。
2)10bits(外部页号)| 10bits(内部页号)| 12bits(页内地址)
3)一级需两次访存:200ns;二级需三次访存:300ns
4)多级页表增加每次访存的实际访存次数,严重降低访存性能。
5)设置tlb快表。
评分标准:每小题满分2分,全部正确2分;部分正确1分。
7.(10分)
1)评分标准:分区起始地址标识正确:1分;c分配正确1.5分;三次**操作正确各1.5分,满分7分,部分正确合理给分。
2)评分标准:分析准确满分3分,部分正确1~2分。
优点:分配和**速度快;
缺点:不容易产生特别小的外部碎片,但是会产生内部碎片,也会使内存利用率受到影响。
8.(10分)
评分标准:每小题满分2分,全部正确2分;部分正确1分。
答:(a) 解决物理内存不够,不能满足容纳更大进程和更多进程的需求。
b) 现代一般页面大小为4kb。页面大小主要影响的是页表的大小,导致页表占用的内存空间相应变化,且可能需要使用多级页表;其次影响页内碎片的大小。
c) 在现代操作系统中进程可能比较大,页表的项目较多,超过一页的大小,因此需要进行分级。采用多级页表解决此问题。
d) vm可以提高物理内存的利用率,但是不能提高性能。因为与外存之间的交换是很慢的,所以使用vm时性能会变差。
e) 现代计算机配置的存储器已经普遍达到4gb以上(32位),甚至是8gb以上(64位),因此已经能够满足操作系统和应用程序对于物理内存的需求,因此无需再启用vm,为了保证性能反而应该关闭vm。
三、附加题(共10分)
1. linux伙伴系统页分配算法。
2. linux伙伴系统页**算法。
评分标准:每个源码满分5分,分析正确5分;部分正确1~4分。
试卷A答案及评分标准
gps原理与应用 双语 a卷 标准答案及评分标准。一 名词解释 每小题答案全对得4分,不完全正确得1 3分,不对不得分,共计21分。1.gps时间系统 gps时间系统采用原子时at1秒长作为时间基准,但时间起算点的原点定义在1980年1月6日utc 0时。gps原理与应用 双语 a卷 标准答案及评分...
试卷A答案及评分标准
回归分析 a卷 答案及评分标准。一 填空题 在各题横线处填入正确答案,填错或不填均不得分,每小题3分,共30分 1 残差 2 23 检验 4 56 完全负自相关 7 异方差8 多重共线性。9 或 10 二 判断题 在各题括号内填入正确答案,正确填写t,错误填写f,填错或不填均不得分,每小题3分,共1...
试卷答案及评分标准A
南京铁道职业技术学院苏州校区。2008 2009学年第1 学期期 终 试卷 a 卷。科目 机械基础。考试时间 100 分钟考试方式 开卷 使用班级 07模具 一 选择题 2分 10 20分。参 1 c 2 b 3 b 4 a 5 a 6 a 7 b 8 b 9 c 10 b 评分标准 每题2分。二 ...