操作系统是软考上午必考的内容,虽然这部分的考题不多,但复习起来的内容还是比较多的。主要涉及到操作系统的类型的功能,操作系统的层次结构和进程概念,作业、处理机、存储、文件和设备等管理的原理和方法。细看起来每一部分都有可能出题。如果考生对操作系统知识不熟悉,光看王春森的高程教程是不够的,建议考生复习时参考汤子瀛的《计算机操作系统》。
1.在UNIX操作系统中,当用户执行如下命令:
1ink("/user/include/myfile.sh","/usr/userwang/youfile.sh")
则文件名"/usr/userwang/youfile.sh"存放在____。
A. user目录文件中 B. include目录文件中
C. userwang目录文件中 D. youfile.sh的文件内容中
答案:C
解析:1ink命令属于文件系统调用,主要是为了实现文件共享,它有两个参数:path1和path2,path1是源文件名称,path2是新建立的目录文件名称。1ink命令的实质是为文件建立一个新目录项,为文件增加一个新的路径名。上述1ink命令就使得用户userwang可以使用"/usr/userwang/youfile.sh"路径名对"/user/include”路径下的myfile.sh进行访问。如果用户不想共享文件了,还可以执行un1ink命令。
复习提示:考生应该对UNIX中的文件系统管理方式清楚。
2.假设在系统中—个文件有两个名字,它与—个文件保存有两个副本的区别是____。
A. 前者比后者所占用的存储空间更大
B. 前者需要两个目录项,后者只需要一个目录项
C. 前者存取文件的速度快,后者存取文件的速度慢
D. 前者改变与某个名字相联系的文件时,另一个名字相连的文件也改变;后者的另一个副本不改变
答案:D
解析:系统中—个文件有两个名字,则该文件有两个目录项与之关联,实际存储的文件只有一个。而对于—个文件保存有两个副本,则文件需要目录项,副本也需要目录项,而且实际存储的是三个文件:文件及两个副本。由此答案A显然不对,应该是后者比前者所占用的存储空间更大。答案B也不对,因为后者需要三个目录项。答案C不对,因为文件的存取速度与文件的存储方式有关,上题中前者与后者存储方式一样,只不过是目录项的个数有区别。一个文件有多个名字,可以看成是多个名字共享一个文件,所以改变与某个名字相联系的文件时,另一个名字相连的文件也改变,但后者文件与副本之间可以看成是独立的,所以另一个副本不改变。
3.在某超市里有一个收银员,且同时最多允许有n个顾客购物,我们可以将顾客和收银员看成是两类不同的进程,且工作流程如下图所示。为了利用PV操作正确地协调这两类进程之间的工作,设置了三个信号量S1、S2和Sn,且初值分别为0、0和n。这样图中的a应填写__(1)__,图中的b1、b2应分别填写__(2)__,图中的c1、c2应分别填写__(3)__。
(1) A. P(S1) B.P(S2) C.P(Sn) D.P(Sn)、P(S1)
(2) A.P(Sn)、V(S2) B.P(Sn)、V(S1) C.P(S2)、V(S1) D.V(S1)、P(S2)
(3) A.P(S1)、V(S2) B.P(Sn)、V(S1) C.P(S2)、V(S1) D. V(S1)、 P(S2)
答案:(1)C (2)D (3)A
解析:这是一道考查PV操作的题,所以首先得弄清楚那些地方需要互斥、那些地方需要同步。题目中给出了两类进程:顾客进程与收银元进程,由于超市是顾客进程之间的公有资源,而且超市里限制最多允许有n个顾客购物,所以要设置一个公有信号量Sn,初值是n,顾客进程在进入超市时要执行P(Sn),离开超市时要执行V(Sn)操作。顾客购物后要到收银员处付款,因此顾客进程与收银员进程之间是同步的关系,一次只允许一个顾客进程付款,整个超市只有一个收银员进程收费,所以需要为顾客进程设置一个私有信号量S2,为收银员进程设置一个私有信号量S1,由于开始时没有顾客去付款,收银员也没有收费,所以S1和S2的初值为0。当有顾客买完东西去付款时执行V(S1),通知收银员进程有顾客付款,此时收银员进程执行P(S1)操作后就可进入收费,收费完成后收银元进程执行V(S2),以通知顾客收费完毕,此时顾客执行P(S2)就可离开收银台,在离开超市时需执行V(Sn),释放资源。
复习提示:PV操作在操作系统中处于很重要得地位,要想合适的运用PV操作,必须很好的理解进程之间的互斥与同步,即那些进程之间是互斥的,那些进程之间是同步的。