2017年华南师范大学计算机学院408计算机学科专业基础综合之计算机操作系统考研冲刺密押题
● 摘要
一、综合题
1. 令【答案】⑴
(2)当
2. 什么叫进程? 进程和程序有什么区别?
【答案】进程就是可并发执行的程序在一数据集合上的一次执行过程。
进程和程序的区别主要体现在:
①进程是动态的,具有一定的生命周期,而程序是静态的;
②进程可并发执行,而没有创建进程的程序是不能执行的;
③进程是操作系统中申请和分配资源的基本单位,而没有创建进程的程序是不能申请资源的;
④进程包括程序、数据和进程控制块:
⑤同一程序的多次执行对应多个进程。
3. 某段式存储管理中采用如表所示的段表:
表 段式存储管理的段表
为大小为地址为X 的块的伙伴系统地址,试写出 的通用表达式。
(1)给定段号和段内地址,说明段式管理中的变换过程。
(2)计算[0,430],[1,10], [2,500],[3,400],[4, 20], [5, 100]的内存地址,其中方括号内的第一元素是段号,第二元素是段内地址。
(3)说明存取主存中的一条指令或数据至少要访问几次主存。
【答案】(1)为了实现从逻辑地址到物理地址的变换,在系统中需要设置段表寄存器,存放段表起始地址和段表长度TL 。在进行地址变换时,系统将逻辑地址中的段号与段表长度TL 进行
,产生越界中断,若未越界,则根比较。若S>=TL,则表示段号太大,是访问越界(段号越界)
据段表的起始地址和段号,计算出该段对应段表项的位置,从中读出该段在内存中的起始位置和段长SL , 再检查段内地址D 是否超过该面的段长SL 。若超过,即D>=SL,则同样发出越界中断
;若未越界,则将该段的起始地址与段内地址D 相加,即得到要访问的内信号(段内地址越界)
存物理地址。
(2)[0,430]的物理地址是:219+430=-649;
[1,10]的物理地址是:33009+10=3310;
因为,500>100,所以[2,500]越界(段内地址越界)。
[3,400]的物理地址是:1237+400=1637;
[4,20]的物理地址是:1952+20=1972;
因为,5>4, 所以[5,100]越界(段号越界)。
(3)存取主存中的一条指令或数据至少要访问2次主存,一次是访问段表,另一次是访问需要的指令和数据。
4. 在请求分页系统中,常采用哪几种页面置换算法?
【答案】在请求分页系统中,通常采用页面置换算法有:
(1)先进先出(FIFO )页面置换算法
这是最早出现的置换算法。该算法总是淘汰最先进入内存的页面,即选择在内存中驻留时间最久的页面予以淘汰。该算法的特点就是实现简单;
(2)
LRU 置换算法
最近最久未使用(LRU )的页面置换算法,是根据页面调入内存后的使用情况进行决策的。由于无法预测各页面将来的使用情况,只能利用“最近的过去”作为“最近的将来”的近似,因此,LRU 置换算法是选择最近最久未使用的页面予以淘汰。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来所经历的时间t ,当须淘汰一个页面时,选择现有页面中其t 值最大的,即最近最久未使用的页面予以淘汰;
(3)Clock 置换算法
是一种LRU 近似算法,可分为简单的Clock 置换算法,和改进型的Clock 置换算法。在改进型Clock 算法中,除须考虑页面的使用情况外,还须再增加一个因素,即置换代价,这样,选择页面换出时,既要是未使用过的页面,又要是未被修改过的页面。把同时满足这两个条件的页面作为首选淘汰的页面。由访问位A 和修改位M 确定淘汰页;
(4)最少使用(LFU
:
面被访问的频率。
(5)页面缓冲算法(PBA :
)置换算法 在采用最少使用置换算法时,应为在内存中的每个页面设置一个移位寄存器,用来记录该页) 页面缓冲算法(PBA )既可改善分页系统的性能,又可采用一种较简单的置换策略。
5. 为什么要引入读一拷贝一修改锁(Rcu )? 它对读者和写者分别有何影响?
【答案】(1)RCU 的引入
读写自旋锁允许多个进程同时读,但只要有一个写进程在写,便禁止所有读进程去读,使读者进入阻塞状态。如果写的时间非常长,将严重影响到多个读进程的工作。解决上述问题的方法是改变写进程对文件(共享数据结构)进行修改(写)的方式。此即,当某写进程要往某文件中写入数据时,它先读该文件,将文件的内容拷贝到一个副本上,以后只对副本上的内容进行修改。修改完成后,在适当时候再将修改完后的文件全部写回去。
(2)对读者和写者的影响
①读者不会被阻塞。读者在访问被RCU 保护的共享数据时不会被阻塞。这一方面极大地提高
了读进程的运行效率,另一方面也使读者所在的CPU 不会发生上下文切换,减少了处理机的开销。
②无需为共享文件(数据)设置同步机构。在采用该机制时,允许多个读者和一个或多个写者同时访问被保护的数据,无需为共享数据设置同步机构,因而读者没有什么同步开销,也不需要考虑死锁等问题。但是写者的同步开销却比较大,需要复制被修改的数据结构,延迟数据结构的释放,还必须使用某种锁机制,与其它写者的修改操作同步并行。尽管RCU 锁对读者带来了很大的好处,但RCU 并不能完全替代读写自旋锁。如果读操作较多,而写操作很少,用RCU 的确是利大于弊;反之,如果写比较多,对读者的性能提高可能不足以弥补给写者带来的损失,此时还是应当采用读写自旋锁。
6. 在实现后台打印时,SPOOLing 系统应为请求I/O的进程提供哪些服务?
【答案】在实现后台打印时,SPOOLing 系统应为请求I/O的进程提供以下服务
(1)由输出进程在输出井中为之申请一个空闲磁盘块区,并将要打印的数据填入其中; (2)输出进程为用户进程申请空白的用户请求打印表,并将用户的打印要求填入其中,并将该表挂到请求打印队列;
(3)—旦打印机空闲,输出进程便从请求打印队列的队首取出一张请求打印表,根据表中要求将要打印的数据从输出井传送到内存缓冲区,再由打印机打印。
7. 在链接式文件中常用哪种链接方式? 为什么?
【答案】(1)链接方式的分类
链接方式可分为隐式链接和显式链接两种方式。链接文件中常用的链接方式是显式链接。 ①在采用隐式链接分配方式时,在文件目录的每个目录项中,都需含有指向链接文件第一个盘块和最后一个盘块的指针。隐式链接分配方式的主要问题在于:它只适合于顺序访问,它对随机访问是极其低效的。
②显式链接是指把用于链接文件各物理块的指针,显式地存放在内存的一张链接表中。该表在整个磁盘仅设置一张,表的序号是物理盘块号,从0开始,直至N-l ,N 为总块数。在每个表项中存放链接指针,即下一个盘块号。在该表中,凡是属于某一文件的第一个盘块号,或者说是每
一条链的链首指针所对应的盘块号,均作为文件地址被填入相应文件的FCB 的物理地址字段中。
相关内容
相关标签