操作系统—文件管理随记

发布于:2022-12-09 ⋅ 阅读:(1038) ⋅ 点赞:(0)

概念性内容

        磁盘设备在工作时,以恒定的速率旋转,为了读和写,磁头必须能移动到所要求的磁道上,并等待所要求的扇区的开始位置旋转到磁头下,然后再开始读和写,故把对磁盘的访问时间分为寻道时间、旋转延时时间、传输时间三部分。其中,寻道时间和旋转延时时间属于机械操作,占用时间最多。

        转换后备缓冲器TLB(快表)是小、专用、快速的硬件缓冲,只包括页表中的一小部分条目。其中,对快表和页表的查找是并行的。

        可以提高文件系统的性能的方法有块高速缓存、磁盘驱动调度和目录项分解法,此外还可以采用引入当前目录以及相对路径文件名的方式。

        FAT也就是Windows支持的,采用链接结构的物理结构文件分配表。其在文件命名时不区分大小写。FAT文件系统以簇为单位进行分配,目录项记录着文件名、大小、文件内容起始地址以及其他一些元数据(其每个文件只有一个集中的目录项);在FAT目录结构中,每个文件都给出了它在卷的起始簇号,起始簇号是文件所使用的第一个簇的地址,每个簇都包含一个指针,指向文件中的下一个簇;FAT文件系统是无法设置访问权限的,因为内部本身就没有存储权限信息的结构。

        FAT卷的结构包括引导扇区、FAT1、FAT2、根目录、其他目录和文件。实现FAT文件系统时必须用到的有引导扇区、FAT1、FAT2、根目录。

        能够进行随机存取(直接通过计算或者直接映射获取地址位置)的文件物理结构连续结构与索引结构,多级索引结构属于索引结构中的一种。其中,文件物理结构基本分三种,分别为连续结构、索引结构、链接结构。

        顺序结构的优点是存取效率高且同时支持顺序存取和随机存取;链接结构的优点是有利于文件动态扩充,有利于文件插入和删除,提高了磁盘利用率;索引结构的缺点是会引起较多的寻道次数和寻道时间。

        文件的逻辑结构有流式结构和记录结构。其还可以分为无结构的字符流式文件、定长记录文件和不定长记录文件构成的记录树。对于系统的日志文件,我们通常采用不定长记录结构。

        文件系统的一个特点是“按名存取”,即用户只要给出文件的符号名就能方便地存取在外存空间的该文件信息而不必了解和处理文件的具体物理地址。

        扫描调度算法(电梯调度算法,磁盘调度):扫描算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。当磁头正在由里向外移动时,SCAN算法所选择的下一个访问对象应是其欲访问的磁道,既在当前磁道之外,又是距离最近的。

        最短寻道时间优先调度算法(SSTF,磁盘调度):SSTF选择的请求距当前磁头位置有最小的寻道时间。由于寻道时间通常正比于两个请求的磁道差值,所以磁头移动总是移到距当前最近的磁道上去。但SSTF调度的缺点是可能导致某些请求长期得不到服务且磁头频繁地大幅度移动,容易产生机械振动和误差,对使用寿命有损害

        树形多级目录有许多优点,分别为可以很好反映现实世界复杂层次结构地数据集合、加快了目录的检索速度、只要文件不在同一个子目录中,便可以重名以及易于实现子树中文件保护、保密和共享。

        文件控制块(FCB)一般包括文件标志和控制信息(文件大小、文件创建时间、文件拥有者、文件访问权限等)、文件逻辑结构信息文件物理结构信息文件使用信息文件管理信息

        文件管理的保护等级分为执行文件、读写文件、只读文件、不保护文件。

        文件按存放时限分为临时文件、永久文件、档案文件。

        文件按用途与性质分为系统文件、程序库文件、用户文件。

        文件按组织形式划分为普通文件、目录文件、特殊文件。

        操作系统中的I/O软件可划分为四层,分别为用户级I/O软件、设备无关软件、设备驱动程序、中断处理程序。其中设备无关系统软件的作用是为用户进程提供一个管理I/O功能的接口,该层将经过设备驱动程序所抽象的设备看作逻辑资源进行管理,通过该层用户根据设备标识符和逻辑操作所提供的同一接口来处理设备,提供一致的系统调用。

        文件的存储介质为磁带,那么访问该文件只能是顺序的访问。

        在实现文件系统时,可采用“目录项分解法”加快文件目录的检索速度。其将文件控制块分为符号目录项和基本目录项,符号目录项(查找此项即可以找到文件)包含文件名以及相应的文件号,基本目录项包含文件内部号和文件其他信息。

        进程在打开一个文件的过程中,系统主要完成的工作按顺序有根据文件路径名查目录找到FCB主部合法性检查(根据打开方式、共享说明、用户身份检查)、根据文件号查系统打开文件表,看文件是否已被打开在用户打开文件表中取一空表项,填写打开方式等,并指向系统打开文件表对应表项

        进程创建文件的具体步骤按顺序有检查参数的合法性(文件名是否符合命名规则)、检查同一目录下有无重名文件在目录中有无空闲位置填写目录项内容(填写FCB)

        关闭文件时,系统根据用户提供的文件名或文件描述符查找文件控制块,在该文件上的文件控制块上做修改,同时将共享用户数减1,若共享用户数减为0,再置文件控制块为“非活跃”标志,若该文件控制块内容被修改过,再写回磁盘。

        进程在删除一个文件的过程中需要根据用户提供的文件名或者文件描述符查找文件、检查删除合法性、收回FCB资源、收回文件存储空间。

        对于磁盘、光盘、磁带、磁盘阵列和光盘阵列来说,访问速度都是较快的。

        文件系统的物理基础是磁盘设备,磁盘存储器的服务效率、速度和可靠性就成为文件系统性能和可靠性的关键。提高磁盘的读写速度的常见技术措施有块高速缓存、磁盘空间的合理分配和对磁盘调度算法进行优化。所以提高磁盘读写速度的方法有磁盘存储块优化分布、采用合理的磁臂调度算法和增加磁盘的转速。

        块高速缓存在逻辑上属于磁盘,在物理上则是驻留在内存中的盘块。[1]

        采用多个磁盘并行的方式可以提高读写速度。Raid0方法将数据以条、带的方式分别、同时地存入一组并联的磁盘中,提高写入性能;Raid1又称镜像盘,同时将数据写入工作盘和镜像盘中,利用镜像容错来提高可靠性,具有raid中的最高数据冗余能力。[2]

二、简单计算

(一)UNIX系统中文件权限代码解码

        在UNIX系统中,权限511表示文件属主可执行、同组用户可执行权限414表示文件属主可读、同组用户可执行、其他用户可读;权限755表示文件属主可执行且可读、同组用户可执行、其他用户可读;其他同理计算如下。

 (二)目录分解法加快文件查询(注意分解前和分解后,分解后需要多一次基本目录项查找)

 

参考资料:

[1]61磁盘高速缓存_光怪陆离的节日的博客-CSDN博客_磁盘高速缓存

[2]Raid0、 Raid1、 Raid5、 Raid10的原理、特点、性能区别_huang714的博客-CSDN博客_raid0

本文含有隐藏内容,请 开通VIP 后查看