您好、欢迎来到现金彩票网!
当前位置:棋牌游戏 > 文件控制块 >

目录与文件管理

发布时间:2019-06-27 02:02 来源:未知 编辑:admin

  为了能对一个文件进行正确的存取,必须为文件设置用于描述和控制文件的数据结构,称之为“文件控制块”(FCB)

  记录文件名及其存放地址、文件的说明和控制信息。(是谁?在哪里?什么权?)

  把文件控制块的有序集合称为文件目录,即一个文件控制块就是一个目录项。通常一个文件目录也被看作是一个文件,称为目录文件

  文件FCB组成的“目录”文件存放于磁盘;需要时,要从磁盘将目录内容调入内存进行检索和使用。

  文件目录占越大量的盘块,需进行的磁盘读写开销越大。减少实际检索的信息量就减少移动磁头的开销,提高速度;

  目录一般是按名检索。而直到找到正确文件前,只关心文件名,不需要其它的文件描述信息,目录中这部分内容的调入不是必须的。

  存放在磁盘上的索引结点。主要包括以下内容:文件主标识符、文件类型、文件存取权限、文件物理地址、文件长度、文件连接计数、文件存取时间。

  文件被打开后,将磁盘索引结点拷贝到内存索引结点中以便使用。比磁盘索引结点增加了以下内容:索引结点编号、状态、访问计数、文件所属文件系统的逻辑设备号、链接指针。

  目录结构的组织,关系到文件系统的存取速度,也关系到文件的共享性和安全性。

  不便于实现文件共享(因为不能重名,不同用户使用的共享文件必须不同名字,标识哪些用户共享文件也不方便),一般只适用单机环境。

  为每一个用户建立一个单独的用户文件目录UFD,UFD由用户所有文件的文件控制块组成。

  系统建立一个主文件目录MFD, MFD中每个用户目录文件都占有一个目录项,其中包括用户名和指向UFD的指针。

  不提供子目录操作,还不方便;各用户之间被完全隔离的话用户访问其他用户文件时,不方便合作。

  主目录称为根目录,数据文件为树叶,其它目录为结点。多级目录缩小检索范围提高检索速度和文件系统的性能。

  从根目录到任何数据文件都只有一条唯一通路。目录文件名和数据文件名依次用“/”连接起来,即构成数据文件的路径名。

  从当前目录开始,逐级经过中间的目录文件,最后达到要访问的数据文件。这一路径上的目录和数据文件名用“/”连接成路径名,称为相对路径名。

  按名检索:系统利用提供的文件名对目录(根据目录层次,需要做的检索次数也不同)进行查询

  文件管理:把所管理的程序和数据组织成一系列的文件,并能进行合理的存储、使用等操作。

  数据项:描述对象某种属性的字符集;是数据组织中可以命名的最小逻辑数据单位。

  文件的物理结构:根据外存上的物理块的分配机制,记录文件外存的存储结构。用户感知不到的。

  变长:从第1个记录开始顺序扫描,直到扫描到要检索的关键字标识的记录(例如:数据库、文件系统的基于文件名排序的目录检索)

  单记录的查找、修改等交互性差;增减不方便(改进办法:把增删改的记录登记在一个事务文件中,在某段时间间隔后再与原文件合并更新)。

  为了方便单个记录的随机存取,为文件建立一个索引表,记录每项记录在文件的逻辑地址及记录长度;该索引表按关键字排序,。

  索引表本身即是个按记录键排序的定长顺序文件,所以能利用算法提高索引表检索速度

  会产生外存碎片。可紧凑法弥补,但需要额外的空间,和内存紧凑相比更花时间。

  创建文件时要给出文件大小;存储空间利用率不高,不利于文件的动态增加和修改;

  适用于变化不大顺序访问的文件,在流行的UNIX系统中仍保留了连续文件结构。如对换区

  设置链接指针,将同属于一个文件的多个离散盘块链接成一个链表,这样形成的文件称为链接文件。会有链接成本。

  物理磁盘分逻辑卷(分区),每卷都有一个单独区域存放自己的文件系统目录和FAT表。

  FAT表记录簇号,表项数量减少,一定程度上提高了检索速度,减少了指针开销,

  若磁盘容量为8G,则每簇大小达到128K(8G/2^16),簇内碎片最大会到128K。浪费严重。

  FAT32规定每簇4KB(即8个512B的盘块),该格式能管理的单个最大磁盘空间为2^32*4KB=2TB。

  簇大小合适,空间利用率提高;但分配表的扩大使运行速度相对慢了;可支持长文件名;有最小空间管理限制,卷必须大于512M,单个文件长度不能大于4G,不能向下兼容。

  磁盘格式化时确定卷的簇大小(物理磁盘扇区的整数倍),512M以内的小磁盘默认簇大小为512B,1G的默认大小为1KB。。。大多数情况是4KB

  卷上簇编号为LCN,用户用到的簇顺序编成用户虚拟簇号VCN,NTFS可进行VCN到LCN的映射

  以卷为单位,将卷的所有文件信息、目录信息、可用未分配空间记录在主控文件表MFT中。

  文件属性信息、文件数据较少时就直接写在MFT中;较多超出1KB时,记录存放这些信息的簇地址指针。

  顺序检索的时间成本:不能支持高效的盘块直接存取。要对一个文件进行直接存取,仍需在FAT中顺序的查找许多盘块号。

  链接信息的空间成本:FAT需占用较大的内存空间。当磁盘容量较大时,FAT可能要占用数MB以上的内存空间。这是令人难以忍受的

  一个索引结点定义为13个地址项:iaddr(0)~iaddr(12),总的来说分为两种:直接地址、间接地址

  UNIX系统中采用成组链接法,这是将两种方法结合而形成的一种空闲盘块管理方法。

  (N兼具栈顶指针用。栈底为S.free(0),栈满时栈顶到达S.free(99),N=100,表示有100个盘块供使用。

  先检查空闲盘块号栈是否上锁,如没有,便从栈顶取出一空闲盘块号,将与之对应的盘块分配给用户,然后将栈顶指针下移一格。

  若该盘块号已是栈底,即S.free(0),到达当前栈中最后一个可供分配的盘块号。

http://neillarcherroan.com/wenjiankongzhikuai/273.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有