前言:
为什么需要文件管理#
文件是操作系统中的一个重要概念文件,是以计算机硬盘为载体的存储在计算机上的信息。几何文件可以使文本文档、图片程序的。在系统运行时,计算机已经成为单位、单位进行资源的调度和分配,而在用户进行输入输出中,则以文件为基本单位。大多数应用程序的输入都是通过文件来实现的,其输出也都保存在文件中,以便信息的长期存储及将来的访问。当用户将文件用于应用程序的输入输出时,还希望可以访问文件、修改文件和保存文件,实现对文件的维护管理。这就需要系统提供一个文件管理系统.
首先,文件中肯定包括一块存储空间,更准确地说是存储空间中的数据。其次,由于操作系统要管理成千上万的数据,因此必定需要对这些数据进行划分,然后贴上标签以便于分类和索引,所以文件必定包含分类和索引的信息。最后,不同的用户拥有对数据的不同访问权限,因此文件中一定包含一些关于访问权限的信息.
带着问题看看吧
1)什么是文件?什么是文件系统?
文件是以计算机硬件为载体的存储在计算机上的信息集合。它的形式多样,可以是文本、文档、图片、程序的操作系统。负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三个部分组成,与文件管理有关的软件、被管理文件及实时文件管理所需的数据结构
2)文件系统要完成哪些功能?
对于用户而言,文件系统最主要的功能是实现对文件的基本操作,让用户可以按名存储和查找文件,组织成合适的结构,并应当具有基本的文件共享和文件保护功能。对于操作系统本身而言,文件系统还需要管理与磁盘的信息交换,完成文件逻辑结构和物理结构上的变化,组织文件在磁盘上的存放,采取好的文件排放顺序和磁盘调度方法,以提升整个系统的性能
学到这里的时候,我们应该会有一种体会,现代操作系统的管理思想中,到处能够见到面对程序。面向对象程序设计的影子。这个我们学习了一个新的概念文件,实际上就是一个抽象的数据类型,也就是一种数据结构
3)在目录中查找某个文件可以使用什么方法?
可以采用线性列表法或哈希表法。线性链表把文件名组织成一个线性表,查找时依次与线性表中的每个表项进行比较。若把文件名按序排列,则使用折半查找法,可以降低平均的查找时间,但建立新文件时会增加维护线性表的开销。哈希表用文件名通过哈希函数得到一个指向文件的指针。这种方法非常迅速,但要避免冲突
4)文件的逻辑结构和物理结构有什么区别呢?单个文件的逻辑结构和物理结构之间是否存在着某些制约关系?
文件的逻辑结构是用户可见的结构及用户使用文件的结构。文件的物理结构是文件在存储器上的组织结构。他表示一个文件在辅存上安置 链接 编目的方法,它和文件的存取方法以及辅存设备的特性都有着密切的联系。单个文件的逻辑结构和物理结构之间,虽无明显的制约或关联关系,但是如果物理结构选择不慎,也很难体现出逻辑结构的特点。比如一个逻辑结构是顺序结构,而物理结构是影视链接结构的文件。即使理论上可以很快找出某条记录的地址,而实际找时仍然需要在磁盘上一块一块地找.
5)在磁盘上进行一次读写操作需要哪几部分时间?其中哪部分时间最长?
在磁盘上进行一次读写操作花费的时间由寻道时间、延迟时间和传输时间决定。其中,寻道时间是将磁头移动到指指定磁道所需要的时间,延迟时间是磁头定位到某一磁道的扇区所需要的时间,传输时间是从磁盘读出或向磁盘写入数据所经历的时间。一般来说,寻道时间因为要移动磁臂,所以占用时间最长.
6)存储一个文件时,当一个磁道存储不下十,剩下部分是存在同一个盘面的不同磁道好,还是存在同一个柱面上的不同盘面好?
刚才我们已经说到,寻道时间对于一次磁盘访问的影响是最大的,若存在同一个盘面的不同磁道,则磁臂势必要移动,这样会大大增加文件的访问时间,而存在同一个柱面上的不同盘面就不需要移动磁道,所以,一般情况下存在同一个柱面上的不同盘面更好.