典型题目讲解 下载本文

(4)采用隐式链接,将第一个数据插入文件尾部(102次)

2、在UNIX中,若盘块为1KB,每块可放256个地址,如何将下列文件的偏移量转换为物理地址:9000,18000,420000

3、某文件系统中,外存为硬盘,物理块大小为512B。有文件A,包含590个逻辑记录,每个记录占255B,每个物理块存放2个逻辑记录。文件A所在的目录如图所示。每个目录项占127B,每个物理块放4个目录项。问:

(1)若文件采用串联结构,链接字占2B,那么要将A读入内存,至少需要存取几次硬盘?(300次)

(2)若文件采用连续结构,那么要将A的第480号记录读入内存,至少要存取几次硬盘?(5次)

Root

Bin dev etc boot usr tmp

Mike marv you he

File dir1 dir2

A B C D E

4、某操作系统的文件管理采用直接索引和多级索引混合方式,文件索引表共有10项,其中前8项是直接索引项,第9项是一次间接索引项,第10项是二次间接索引项,假定物理块的大小是2K,每个索引项占用4B,问:

(1)该文件系统中最大的文件可以达到多大? (2)假定一个文件的实际大小是128MB,该文件实际占用磁盘空间多大(包括间接索引块)? 5、一个文件有100个磁盘块,假设文件控制块在内存。在下列情况下,分别计算并说明在连续分配和显示链接分配方式下,分别需要执行多少次磁盘I/O操作?(假设每读或写一块磁盘块就是一次磁盘操作;假设在连续分配下,文件头部无空闲的磁盘块,但文件尾部有空闲的磁盘块)

(1)在文件开始处添加一个磁盘块(需要往添加的磁盘块中写数据); (2)在文件第50块前添加一个磁盘块(不需要往添加的磁盘块中写数据); (3)删除文件第50块磁盘块;

(4)在文件结尾处删除一个磁盘块。

6、假定磁盘块的大小为1KB,对于540MB的硬盘,其文件分配表FAT需要占用多少存储空间?如果硬盘容量是1.2GB呢?

7、判断:使用链接结构组织的文件适合于采用随机访问的方式。

8、在磁盘上有一个文件系统,磁盘每块512字。假定每个文件在目录中占有一个目录项,该目录项给出了文件名、第一个索引块的地址、文件长度(块数)。在索引块中(包括第一个索引块)前面511个字指向文件块,即第i个索引项(i=0,1,2,…510)指向文件的第i块,索引块中最后一个字指向下一个索引块,最后一个索引块中最后一个字为null。假定目录在存储器中,每个文件的逻辑块号均从0开始编号,逻辑块与物理块长相同。对这样的

41

索引物理结构,该系统应如何将逻辑块号变换成物理块号? 提示:(1)计算组号:a=m/511,再计算组内块号:b=mQ1,设置i=0,转(2)

(2)若i==a,则读出该组内第b+1个索引项,该索引项指向的块号就是物理块号,结束;若i!=a,读出第512项索引项,并读出该索引项对应的索引块,转(2)。

9、有一个文件系统如下图所示。图中的方框表示目录,圈表示普通文件。根目录常驻内存,目录文件组织成链接文件,不设文件控制块,普通文件组织成索引文件。目录表目指示下一级文件名及其磁盘地址(各占2个字节,共4个字节)。若下级文件是目录文件,指示其第一个磁盘块地址。若下级文件是普通文件,指示其文件控制块的磁盘地址。每个目录文件磁盘块最后4个字节供拉链使用。下级文件在上级目录文件中的次序在图中为从左至右。每个磁盘块有512字节,与普通文件的一块等长。普通文件的文件控制块内容包括:该文件的有关描述信息和文件地址信息,其中前10个地址直接指示该文件前10个块的地址,第11、12、13个地址分别是一级索引、二级索引、三级索引。问: (1)一个普通文件最多可以有多少个数据块?

(2)若要读文件J中的某一块,最多启动磁盘多少次? (3)若要读W文件中的某一块,最少启动磁盘多少次?

(4)就(3)而言,为最大限度减少启动磁盘的次数,可采用什么方法?此时,磁盘最多启动多少次?

根目录ABCDEFGHIJKLMNPQRSTUVW

13、回答:(1)在unix文件系统中,inode节点包括哪些内容?(2)当两个进程打开同一个文件是,在内核中是否会存在该文件的两个i节点?两个进程读写文件的偏移量是否始终相同?(3)假设unix文件系统采用2级索引结构,每个磁盘块大小为4K字节,保存一个

22

磁盘块号需要4个字节,则文件的最大长度可以为多少个字节?(40K+2K) 14、假设某个采用页式虚拟内存管理的unix类型的操作系统中,每个i节点中包含12个直接块指针以及一次、二次、三次间接指针各一个。另外,假设页面大小和磁盘扇区大小都是8192字节,每个磁盘块指针占用64位。假设该操作系统的文件系统带有按照磁盘扇区大小划块的内存缓冲区,且被访问的文件已被打开。若某用户程序要访问该文件第13423956个字节,最多需要多少次磁盘访问?请说明每次访问磁盘的目的。

42

15、设一个文件占据了100个物理块,对于连续结构、链接结构和索引结构的文件,如果要将一块信息按下述要求操作,假设文件的文件控制块已经在内存,问分别要启动多少次磁盘I/O操作?

(1)加在文件的首部(连续结构201次,链接结构1次,索引结构1次) (2)加在文件中间(101次,51次,1次) (3)加在文件的尾部(1次,2次,1次) (4)从文件的首部删去(0次,1次,1次) (5)从文件的中间删去(98次,52次,1次) (6)从文件的尾部删去(0次,1次,1次)

15、采用直接存取法存取文件时,对(索引文件)效率最高,对(链接文件)效率最低。 16、文件结构、文件存储设备和存取方法之间的关系。

文件的物理结构密切依赖于文件存储器的特性和存取方法。常用的文件存储器有磁带和磁盘、磁带属于顺序存储设备,适合构造连续结构文件,相应的存取法通常是顺序存取法。磁盘属于直接存储设备,各种物理结构都可采用:如果采用顺序存取法,几种物理结构都可以存钱;如果采用直接存取法,则索引文件效率最高,连续文件效率居中,串联文件效率最低。

17、文件存储器、文件物理结构和存取方法的关系:

存储设备 文件结构 存取方法 磁盘 连续 顺序、直接 链接 顺序 索引 顺序、直接 磁带 连续 顺序 18、判断:文件的物理结构与具体的文件存储设备无关。

19、假定unix系统中的磁盘块大小为512B,现在要对一个已经打开的1M大小的文件遍历一遍,将要发生多少次磁盘完成中断?

20、对于连续文件、串联文件和索引文件三种物理结构,连续文件适合的场合是(没有);串联文件适合的场合是(全适合);索引文件适合的场合是(3,4)。 (1)从文件头部扩展;(2)从文件中部扩展;(3)从文件尾部扩展; (4)从文件头部删除;(5)从文件中部删除;(6)从文件尾部删除 21、下面说法正确的是(1,4)

(1)在磁带上的顺序文件中插入新的记录时,必须复制整个文件; (2)在磁盘上的顺序文件中插入新的记录时,必须复制整个文件; (3)在索引顺序文件的最后添加新的记录时,一定复制整个文件; (4)在磁带上的顺序文件的最后添加新的记录时,不必复制整个文件。

6.4 目录管理

1、在某个文件系统中,每个盘块为512B,FCB为64B,其中文件名占8B,如果采用类似UNIX系统的方法,将文件名与文件其他描述信息分开存放,在文件目录项中只包括文件名和索引节点的编号,索引节点编号占2B,对一个存放在磁盘上的1024个目录项的目录,试比较引入索引节点前后,为找到其中一个文件的FCB,平均启动磁盘的次数。

2、在实现文件系统时吧文件目录的目录项分成两部分:索引节点和符号目录项,有什么好处?

3、设置当前目录的主要原因是(节省主存空间;加快文件查找速度;节省辅存空间;便于打开文件) 4、UNIX系统中,数据结构磁盘索引节点(dinode)中有数据项di_nlink,活动索引节点(inode)

43

中有数据项i_count而系统打开文件表(file)中有数据项f_count。简述这三个数据结构之间的联系。并指出这三个数据项的作用。

提示:di_nlink指出文件(或目录)的连接数是(相对)静态的

i_count则是活动的,即正在使用该内存i节点的计数,即动态的

nlink方便使用不同目录(尤其是“离”得较远时),打开一文件后即f_count 为 1,i_count增1;关闭时各减1

f_count为0时,系统打开文件表项为自由的 i_count为0时,内存活动索引节点表项为自由的

di_nlink为0时,该文件被删除,收回文件空间和i_node空间

5、使用文件系统时,通常要显式地进行OPEN和CLOSE操作,这样做的目的是什么?如果一个文件系统采用基于文件分配表的多级目录结构,假设文件分配表大小为500KB,盘块大小为1KB,文件分配表的每一个表项占2.5字节,根目录区大小为32KB,目录项大小为16B,计算文件系统可管理的数据区大小,根目录中容纳的文件数目。并针对该文件系统,说明OPEN操作过程中对文件系统的操作。

6.5文件存储空间的管理

1、在UNIX系统中有卷资源表如图所示:

(1) 现有一个进程要释放4个物理块,其块号为150#、156#、172#、177#,画出卷

资源表的变化。

(2) 在(1)的基础上假定一个进程要求分配5个空闲块,画出分配后的卷资源表。

S_nfree=98

S_nfree[0]=120

S_nfree[1]=121

?

S_nfree[96]=145

S_nfree[97]=210

2、在UNIX中,每个i节点中有10个直接地址和一、二、三级间接索引。若每个盘块512B,每个盘块地址4B,则一个1MB的文件分别占用多少间接盘块?20MB的文件呢?

3、若8个字(字长32位)组成的位示图管理内存,假定用户归还一个块号为100的内存块时,它对应位示图的位置为(4,4)

4、假设一个磁盘组共有100个柱面,每个柱面有8个磁道,每个盘面被分为4个扇区。逻辑记录的大小与扇区大小相等,柱面、磁道、扇区的编号均从“0”开始,现用字长为16位的200个字(第0到199字)组成位示图来指示磁盘空间的使用情况。问:

(1)文件系统发现位示图中第15字第7位为0而准备分配给某一记录时,该记录会存放到磁盘的哪一块上?此块的物理位置(柱面号、磁道号和扇区号)是多少?

(2)删除文件是还要归还存储空间,第56柱面第6磁道第3扇区的块就变成了空白块,此时,位示图中的第几位应该由1改成0?

44

6.6文件共享和保护

1、判断:用户对文件的访问,将由用户访问表、目录访问权限及文件属性三者的权限所确定。

2、为防止用户使用共享文件时可能造成文件被破坏,通常可采用()方法来保护文件。(选项:建立多个副本;定时转储文件;规定使用权限;设置口令)

3、系统及安全管理的主要任务是防止(未经核准的用户进入系统);用户级安全管理的主要任务是为用户(分配“文件访问权”);目录级安全管理的主要任务是为保护系统的(各级目录);文件级安全管理的主要任务是控制(用户对文件的访问)。

45