软考 -文件控制块

文章讲述了文件控制块(FCB)在文件系统中的重要性,包括文件名、结构、物理位置和存取控制等信息。为了提高目录文件检索速度,采取了文件控制块分解法,将FCB分为两部分存储,从而减少了平均访问磁盘的次数。通过比较分解前后的磁盘访问次数,阐述了分解法的有效性。
摘要由CSDN通过智能技术生成

一.文件控制块(FCB)

文件控制块一般在创建该文件时建立,打开文件时只是将文件控制块的内容读入内存,读和写文件时对文件内容操作,它们必须依靠文件控制块的指示,例如外存地址、读写权限等。关闭文件只是将文件控制块写回磁盘,删除文件时将文件控制块清除

文件控制块至少应该包含以下信息:

  • 文件名

  • 文件的结构:说明文件的逻辑结构是记录式文件还是流式文件,若为记录式文件还需要进一步说明记录是否定长、记录长度及个数;说明文件的物理结构是顺序文件、索引顺序文件还是索引文件

  • 文件的物理位置:如对于连续文件应给出文件第一块的物理地址及所占块数,对于索引顺序文件只需要给出第一块的物理地址,对于索引文件则应给出索引表地址

  • 存取控制信息

  • 管理信息

二.例题

在实现文件系统时,为加快文件目录的检索速度,可利用“文件控制块分解法”。假设目录文件存放在磁盘上,每个磁盘块为512B,文件控制块占64B,其中文件名占8B。通常将文件控制块分解成两部分,第一部分占10B(包括文件名和文件内部号),第二部分占56B(包括文件内部号和文件其他描述信息)。假设某一目录文件共有254个文件控制块,试分别给出采用分解法前和分解法后,查找该目录文件某一文件控制块的平均访问磁盘次数。

假设某一目录文件共有254个文件控制块,而每个磁盘块为512B,文件控制块占64B。 采用分解法前,一个盘块可存放:512/64=8个文件控制块,则254个文件控制块要占:254/8=32个磁盘块,故平均查找一个文件控制块需访问磁盘:32/2=16次。

采用分解法后,将文件控制块分解成两部分,第一部分占10B(包括文件名和文件内部号),第二部分占56B(包括文件内部号和文件其他描述信息i)。一个盘块可存放:512/10=51个文件控制块,这样254个文件控制块要占:254/51=5个磁盘块。平均查找一个目录项需访问磁盘:5/2≈3次,而得到文件控制块还应访问一次磁盘,故总共需访问磁盘:3+1=4次。

通常目录文件分解前占用n个盘块,分解后改用m个盘块存放文件名和文件内部号部分,那么访问磁盘次数减少的条件是

目录文件分解前占用n个盘块,分解后改用m个盘块存放文件名和文件内部号部分,那么访问磁盘次数减少的条件是m<n-2。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值