学习必备欢迎下载2010 年自学考试《计算机系统结构》重点习题总结1 1.举例说明何种文件长度是固定不变的,何种文件长度是动态变化的。答:某些系统可执行程序,如shell 、vi 的长度通常是固定不变的;而用户正在编辑的文本文件或源代码文件的长度通常是动态变化的。2.比较文件名、文件号、文件描述符之间的关系。答:文件名是文件的外部名字,通常是一个符号名( 字符串 ) ,同一文件可以有多个文件名( 如通过 link)。文件号是文件的内部名字,通常是一个整数, 文件号与文件具有一对一的关系。文件描述符是文件打开时返回的整数( 入口地址 ) ,对应用户打开文件表( 如 UNIX中的u_ofile)中的一个入口。 同一文件可以被多个用户同时打开,此时返回的文件描述符一般不同。同一文件也可以被同一用户多次打开,每次打开时返回的文件描述符一般也不同。3.将文件控制块分为两部分有何好处?此时目录项中包含那些成分?答:将文件的FCB划分为次部和主部两部分具有如下两个主要的优点: (1) 提高查找速度:查找文件时,需用欲查找的文件名与文件目录中的文件名字相比较。由于文件目录是存于外存的,比较时需要将其以块为单位读入内存。由于一个 FCB包括许多信息,一个外存块中所能保存的FCB个数较少, 这样查找速度较慢。 将 FCB分为两部分之后,文件目录中仅保存FCB的次部,一个外存块中可容纳较多的FCB,从而大大地提高了文件的检索速度。(2) 实现文件连接: 所谓连接就是给文件起多个名字,这些名字都是路径名,可为不同的用户所使用。 次部仅包括一个文件名字和一个标识文件主部的文件号,主部则包括除文件名字之外的所有信息和一个标识该主部与多少个次部相对应的连接计数。当连接计数的值为0时,表示一个空闲未用的FCB主部。4.文件在使用之前为何需要打开?多个进程共享同一文件时,其 FCB为何在内存中只能保持一个副本?答:当一个文件被打开使用时,其FCB中的信息需要经常地被访问。如果每次访问FCB都去读写外存,则速度会大大地降低。为了解决这一问题,在内存中设立系统打开文件表,将文件对应的FCB读入内存并保存在该表中, 以备需要时使用由于文件是可共享的,多个进程可能会同时打开同一文件,而其打开方式可能是不同的,当前的读写位置通常也是不一样的。为了防止信息冗余,将这些个性化信息记录在另外一个表中,该表称作用户打开文件表,每个进程有一个,表中包含以下内容:文件描述符打开方式读写指针系统打开...