第7章 文件管理_第1页
第7章 文件管理_第2页
第7章 文件管理_第3页
第7章 文件管理_第4页
第7章 文件管理_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第7章文件管理本章内容7.1文件与文件系统

7.2文件的逻辑结构与物理结构7.3文件的存取方式7.4文件目录7.5文件的共享与安全7.6文件存储空间的管理7.7文件操作7.8文件的完整性7.9Linux文件管理

本章学习目标理解文件的组织形式和存取方法理解文件目录管理和存储空间的管理理解文件的共享方法和安全性理解文件的完整性和操作掌握Linux文件管理的常用命令和系统调用47.1文件与文件系统7.1.1文件的概念

7.1.2文件分类

7.1.3文件系统的概念与功能

57.1.1文件的概念文件是信息的一种组织形式,是存储在外存上的具有符号名的一组相关信息集合。文件具有一个文件名,用以识别不同的文件。文件系统通过文件说明来完成对文件的管理。因此,文件系统中的文件由文件说明和文件体两部分组成。67.1.2文件分类按文件性质和用途分类系统文件。有关操作系统及其它系统实用程序组成的文件。库文件。由标准子程序及某些应用程序组成的文件。用户文件。由用户建立、保存的各种文件。77.1.2文件分类按文件的属性分类

只读文件。允许文件主及被授权用户读文件内容,但不允许改写文件内容。可读可写文件。允许文件主及被授权用户读、写该文件内容,但禁止非法用户进行读写。可执行文件。此类文件是指一些应用程序,只允许核准的用户调用执行,而不允许用户进行读写。非保护文件。所有用户都可以使用的文件。

87.1.2文件分类按文件管理的方式分类

普通文件。由表示程序、数据或正文的字符串构成,内部无固定的结构的文件。目录文件。由文件目录信息构成的一类文件。对它的处理(读、写、执行)在形式上与通文件相同。特别文件。由一切输入输出慢速字符设备构成的文件,即视设备为特殊文件。

97.1.2文件分类按信息流向分类

输入文件。只能读入的文件。如纸带输入、读卡机、只读存储器、只读光盘中的文件。输出文件。只能写的文件。如穿孔机、打印机上的文件。输入/输出文件。既可读,又可写的文件。如磁盘、磁带和可读可写光盘上的文件。

107.1.2文件分类按信息的逻辑结构分类

流式文件。文件内的信息不再划分结构,文件就是一串信息,以结束符作为文件的结束标志。记录文件。文件内的信息可再划分为多个记录,用户以记录为单位组织使用信息。

117.1.3文件系统的概念与功能文件系统的概念

文件系统是负责存取和管理文件信息的软件集合,它是由文件目录、一组文件操作和数据文件组成的。它负责为用户建立文件,撤销、读写、修改和复制文件,还负责按名对文件进行存取控制。

127.1.3文件系统的概念与功能文件系统的功能

有效地分配文件存储器空间。提供方便适宜的存取方法。对文件及文件目录的管理。支持文件共享与保护。提供操作系统与用户的接口。137.2文件的逻辑结构与物理结构7.2.1文件的逻辑结构

7.2.2文件的物理结构

147.2.1文件的逻辑结构字符流式文件

字符流式文件也称流式文件,是指把文件信息作为一个整体来管理和使用的文件。它是由字符序列组成的文件,其内部信息不再划分结构,字符或字节是文件的基本信息单位。

157.2.1文件的逻辑结构记录式文件

记录式文件是指文件信息进一步划分为多个记录,用户以记录为单位来组织和使用信息。记录式文件是一种有结构文件。167.2.2文件的物理结构连续文件结构

连续文件也称顺序文件,它是指把由连续的逻辑记录构成的逻辑文件分配到依次连续的物理块中的物理文件。文件系统为每个文件都建立一个文件控制块FCB,FCB是文件说明部分,它指出存放该文件信息的文件名、第一个物理地址和文件长度(所占的块数)以及文件类型。

177.2.2文件的物理结构串连文件结构

串连文件也称链接文件,它是采用链接块方式分配的文件,通过连接字将信息存于若干个不一定连续的物理块的物理文件。187.2.2文件的物理结构索引文件结构

索引文件也称随机文件,它是由若干个不一定连续的物理块组成的,每个块中不包含连接字,它被集中存放在一个叫做索引表的数据结构中。索引表是由文件系统为每个文件建立的一张表,表中标明了文件的逻辑块号所对应的物理块号。

197.2.2文件的物理结构散列文件结构

散列结构是定义一个hash函数,它的自变量是逻辑记录中的键值,函数值是外存地址。

207.3文件的存取方式顺序存取:按照文件的逻辑地址依次存取。在提供记录式文件结构的系统中,顺序存取法就是严格按物理记录排列的顺序依次存取。随机存取:在记录式文件结构系统中,随机存取法就是用户按照记录的编号随意存取文件中的任何一个物理记录。按键存取:按键存取法实质上也是随机存取法,是根据文件中各记录内容进行存取的,而不是根据记录编号或地址位移来存取的。

217.4文件目录7.4.1文件目录的概念

7.4.2目录文件的结构

7.4.3文件的物理结构7.4.4文件和目录操作227.4.1文件目录的概念基本信息

文件名。用于标识一个文件的符号名。文件物理位置。用于标识文件在外存上的存储位置。文件逻辑结构。用于标识文件是流式文件还是记录式文件。文件的物理结构。用于标识文件是连续文件,还是串连文件,或是索引文件及散列文件。237.4.1文件目录的概念存取控制信息

存取控制信息类包括文件主、核准用户和一般用户的存取权限,用以实现文件的共享及保密。247.4.1文件目录的概念使用信息

文件建立的日期和时间。文件上一次修改的日期和时间。当前使用的状态信息。257.4.2目录文件的结构单级目录

单级目录(一级目录)结构是管理文件目录的简便方法,即为文件存储器中的所有文件建立一张目录表,表中的每一目录项对应一个文件目录,包含相应的文件说明。。267.4.2目录文件的结构二级目录

二级目录结构将存储在设备上的目录文件分成两级:第一级为系统目录,也称主目录。第二级为用户目录,用来登记该用户所有文件的文件目录,此文件目录记录着相应文件的名字、物理地址等。

277.4.2目录文件的结构多级目录

在多级目录中,第一级为系统目录,是树型的根结点,所以又称为根目录,其它级上的目录统称为子目录,而文件作为树的叶结点。

287.4.3目录的实现线性链表

制作目录结构最简单的方法就是使用线性链表将所有文件以及子目录都链接起来,当我们需要某个目录中所有的文件与子目录据数据时,就通过读取这个线性链表来完成。虽然这种方法在实现上比较容易,但效果不佳。

297.4.3目录的实现哈希表

为了更快速的随机访问目录中的文件,我们可以建立一个哈希机制:利用文件名称作为哈希函数的输入值,而输出则是某个数值范围内的固定值。

307.4.4目录的实现目录文件管理命令

目录文件管理是指建立文件目录、改变当前目录、显示目录、删除目录和设置目录路径等操作。

317.4.4目录的实现文件控制命令

创建文件。删除文件。打开文件。设置文件的属性。327.4.4目录的实现文件存取命令

读文件。写文件。337.5文件的共享与安全7.5.1文件共享的实现

7.5.2文件安全的管理

347.5.1文件共享的实现绕道法

在绕道法中,用户对所有文件的访问都是相对于当前目录进行的。当用户要访问的共享文件不在当前目录下,则从当前目录出发,提供一条可以到达被共享文件的路径给系统,由于不是通过自己的目录直接到达,所以称作绕弯法。

357.5.1文件共享的实现链接法

链接法是将一个目录项直接指向共享文件的目录项。它是在相应的目录项之间进行连接。

367.5.1文件共享的实现基本文件目录

该法采用了有利于共享的文件目录,这种文件目录中,包括基本文件目录(BFD)和符号文件目录(SFD)。基本文件目录中记录了所有文件的惟一ID和它们的物理地址等内容。

377.5.2文件安全的管理系统级安全管理

系统级安全管理是通过拒绝未经核准户进入系统,来保护系统中各种资源的安全。通常采用的方法是注册登录法。387.5.2文件安全的管理用户级安全管理

用户级安全管理是通过对用户分类和限定各类用户对目录和文件的访问权限来保护系统中目录和文件的安全。通常把用户分成以下三类:文件主、同组用户和其他用户。文件主是指文件的创建者。同组用户是指与文件主相关的或处理同一类问题的用户。除上述用户之外的用户。397.5.2文件安全的管理目录级安全管理

目录级安全管理是通过目录的操作权限来保护目录及其文件的安全。通常可设置的目录权限有:读(R)。允许进程读目录。写(w)。允许进程请求系统内核建立新目录项,或删除已有的目录项。执行(E)。允许进程检索目录。

407.5.2文件安全的管理文件级安全管理

文件级安全管理是通过系统管理员或文件主设置文件的属性来控制用户对文件的访问。文件属性规定了文件被共享和程序。

417.6文件存储空间的管理存储空间的分配单位

文件系统把文件的存储空间划分成若干固定大小的物理块,并以该块为单位进行空间分配和信息交换。块的大小直接影响着磁盘空间的利用率和存取时间。

427.6文件存储空间的管理空闲空间的管理

空闲文件目录表法。把一个连续未分配的存储区域叫做一个空闲文件,系统为所有空闲文件单独建立一个目录表,称为空闲文件目录表。空闲块链表法。空闲链表是将所有空闲空间以空闲块或空闲盘区(每个盘区可包含多个块)为单位形成一个链表。

位示图法。位示图也称盘图。系统利用一片连续存储区为文件存储空间建立一张位示图,反映整个存储空间的分配情况。437.7文件操作文件控制块(FCB)文件操作的主要数据结构是文件控制块(FCB)。在文件不处于活动期间,FCB的部分信息作为文件目录项存放在相应物理卷的文件目录中。当文件在活动期间则存在于内存之中。文件控制块的内容包括:文件目录项所包含的全部信息。文件所在的设备的设备号。文件读写指针。

447.7文件操作文件操作

文件的创建和撤消文件的创建:用户将一批信息作为文件保存时,须向系统提出创建文件的请求,并给出创建文件的文件名或路径名,文件控制等信息。

文件的撤消:当一个文件完成了其使命之后,没有存在的意义就要撤消它。撤消一个文件须向系统投出撤消文件的请求,并给出撤消文件的路径名。

457.7文件操作文件操作

文件的打开和关闭

文件的打开:当用户想使用一个已经存在的文件时,必须向系统提出打开文件的请求,并给出打开文件的路径名,操作类型(读或写)和存取控制信息等。

文件的关闭:当文件不使用时就要请求系统服务,并给出要关闭文件的FCB首址或文件号。

467.7文件操作文件操作

文件的读写

文件打开或创立之后就可对文件进行读写操作,在一般系统中分两种方式进行。一种是顺序读写,一种是随机读写。477.8文件的完整性全量转储

把文件存储器中的全部文件定期(每周一次)复制到磁带上,即把磁带视为更可靠的后备库。增量转储每隔一段时间,把上次转储以来修改过的文件和新增加的文件转储到磁带上,关键性的重要文件也可再次转储,这种转储的方法克服了全量转储的缺点但也存在转储到磁带上的信息不紧凑的缺点。487.9Linux文件管理7.9.1Linux文件管理概念

7.9.2Linux文件管理命令7.9.3Linux文件管理编程

497.9.1Linux文件管理概念根目录(/)

目录结构上的最高点被称为根目录。它使用了与超级用户相同的名称。单个字符斜杠(“/”)表示根目录。工作目录与用户主目录

用户在登录到Linux系统中之后,每时每刻都“处在”某个目录之中,此目录被称作工作目录或当前目录(WorkingDirectory)。

每个用户都有自己的主目录,不同用户的主目录一般互不相同。用户刚登录到系统中时,其工作目录便是该用户主目录,通常与用户的登录名相同。507.9.1Linux文件管理概念Linux文件系统目录说明

/etc目录。该目录用来存放系统管理所需要的配置文件和子目录。usr目录。/usr是最庞大的目录,因为所有的系统应用程序几乎都存放在这个目录下。

var目录。/var目录包括系统运行时要改变的数据,而/usr下存放的通常是固定的部分。/dev目录。/dev目录包括所有设备的设备文件。/proc目录下的文件。/proc文件系统是一个虚拟的文件系统,它并不存在于某个磁盘上,而是由核心在内存中产生。517.9.1Linux文件管理概念Linux文件系统目录说明

bjn和/sbin目录。bjn是binary的缩写,在/bin目录下存放着使用者最经常使用的命令和系统程序。sbin中的s是SuperUser的意思.也就是说/sbin下存放的是系统管理员使用的系统管理和维护的程序和命令。/boot。该目录下存放的是启动Linux时使用的一些核心文件,包括一些链接文件以及镜像文件。/home。该目录用来存放系统的每一个用户的工作目录。/lib该目录下存放的是共享程序库映像文件,这些映像文件中包含许多程序共享代码。527.9.1Linux文件管理概念Linux文件系统目录说明

lost+found该目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。/mnt是mount的缩写。在Linux系统中,除了Linux的文件系统外,其他文件系统在加载到系统上时,应该被安装在该目录下,以免打乱原来的文字系统层次结构;/mnt目录下通常有一些子目录,这些子目录就是一些设备的加载点。root该目录是超级用户root默认的主目录。/tmp临时文件目录,主要用来存放临时文件。537.9.2Linux文件管理命令改变文件的所属组

命令名称:chgrp--changegroupownership命令格式:chgrp[OPTION]...GROUPFILE...chgrp[OPTION]...--reference=RFILEFILE...功能说明:需要说明的是该命令只有root用户才可使用。在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。547.9.2Linux文件管理命令设置访问权限

命令名称:chmod--changefilemodebits命令格式:chmod[OPTION]...MODE[,MODE]...FILE...chmod[OPTION]...OCTAL-MODEFILE...chmod[OPTION]...--reference=RFILEFILE...功能说明:Linux/Unix的文件调用权限分为三级:文件拥有者、群组、其他。利用chmod

可以藉以控制文件如何被他人所调用。

557.9.2Linux文件管理命令存取控制命令

命令名称:chown--changeowner命令格式:chmon[-cfhvR][--help][--version]user[:group]file...功能说明:该命令只有该文件或目录的拥有者和root用户才可以使用。用来改变文件的拥有者。567.9.2Linux文件管理命令查找文件

命令名称:find-searchforfilesinadirectoryhierarchys命令格式:find[-H][-L][-P][path...][expression]功能说明:将文件系统内符合expression的文件列出来。你可以指要文件的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。577.9.3Linux文件管理编程文件的创建—creat函数

create函数用来创建一个新的文件。头文件:#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>函数原型:int

creat(constchar*pathname,mode_tmode);功能:创建一个新文件。返回值:如果文件创建成功,返回一个文件描述符。失败是返回-1。

587.9.3Linux文件管理编程文件的打开—open函数

open函数用来打开一个文件。头文件:#include<sys/types.h>#include<sys/stat.h>

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论