第11章 文件管理.

Slides:



Advertisements
Similar presentations
数据结构的引入. 通讯录管理 社团机构管理 校园导航管理 通讯录管理 社团机构管理 校园导航管理.
Advertisements

操作系统 Operating System.
PURSUING EXCELLENCE / TOWARD SUCCESS WUCHANG UNIVERSITY OF TECHNOLOGY
第六 章数据库访问页 6.1 数据访问页视图 6.2 创建数据访问页 6.3 编辑数据访问页 6.4 查看数据访问页 退出.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
数据结构 第8章 文件 山东大学管理学院.
第六章 文 件 管 理 6.1 文件和文件系统 6.2 文件的逻辑结构 6.3 外存分配方式 6.4 目录管理 6.5 文件存储空间的管理
操作系统教程(第4版) 第六章 文件管理 高等教育出版社 2008年4月.
第八章 文件系统 教学目的与要求: 1.掌握文件、目录等基本概念 2.理解并掌握文件结构、管理、保护与共享 重点与难点:
第八章 磁盘存储器的管理.
第六章 文件管理.
第三章 数据类型和数据操作 对海量数据进行有效的处理、存储和管理 3.1 数据类型 数据源 数据量 数据结构
第六章 文件管理.
实用操作系统概念 张惠娟 副教授 1.
Oracle数据库 Oracle 子程序.
文件系统 第8章 文件系统.
§5.3 定积分的换元法 和分部积分法 一、 定积分的换元法 二、 定积分的分部积分法 三、 小结、作业.
Chapter 11: File-System Interface(文件系统接口)
全国计算机等级考试 二级基础知识 第二章 程序设计基础.
第六章    文件管理.
在PHP和MYSQL中实现完美的中文显示
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Hadoop I/O By ShiChaojie.
强连通分量 无向图 1、任意两顶点连通称该图为连通图 2、否则将其中的极大连通子图称为连通分量 A D C B E 有向图
存储系统.
辅导课程六.
网络常用常用命令 课件制作人:谢希仁.
李元金 计算机与信息工程学院 第 22 讲 磁盘存储器的管理(1) 李元金 计算机与信息工程学院 1/
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
2019/1/12 GDP设计协同 超级管理员操作手册 GDP项目组.
第3章 Linux文件系统 任何操作系统都是基于文件系统上的,Linux中所有的内容都是由文件组成。文件系统是文件组织的抽象,学习Linux文件系统的相关知识有助于深入理解Fedora Core 6操作系统。Red Hat Linux操作系统从Red Hat 7.2版本开始就支持新的ext3文件系统,而不再使用以前的ext2文件系统。
Online job scheduling in Distributed Machine Learning Clusters
CPU结构和功能.
第四章 附件 (应用程序软件包).
用event class 从input的root文件中,由DmpDataBuffer::ReadObject读取数据的问题
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
Java语言程序设计 清华大学出版社 第8章 输入输出流(1).
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
第六章 文件管理 6.1 文件和文件系统 6.2 文件的逻辑结构 6.3 外存分配方式 6.4 目录管理 6.5 文件存储空间的管理
NoteExpress进阶 宋敏 电子资源部
从zval看PHP变量
C++语言程序设计 C++语言程序设计 第七章 类与对象 第十一组 C++语言程序设计.
C语言程序设计 主讲教师:陆幼利.
第四章 文件权限 应用背景 由于UNIX系统是一个多用户系统,通常有多个用户同时在其上工作。这些用户都可以遵循路径名到达不同的目录并读取或执行属于他人的文件。为使用户保护自己的文件,以免别人读取、修改或删除,用户可以使用AIX提供的命令来设置文件权限的相应位,以便用户决定谁能使用你的文件,谁不能。
操作系统原理与设计 Operating Systems: Design and Implementation
顺序表的删除.
本节内容 随机读取 视频提供:昆山爱达人信息技术有限公司.
VB与Access数据库的连接.
姚金宇 MIT SCHEME 使用说明 姚金宇
单链表的基本概念.
第六章 文 件 管 理 6.1 文件和文件系统 6.2 文件的逻辑结构 6.3 外存分配方式 6.4 目录管理 6.5 文件存储空间的管理
操作系统原理 Operating System Principles
本节内容 线性地址的管理 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
本节内容 文件系统 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
Visual Basic程序设计 第13章 访问数据库
Python 环境搭建 基于Anaconda和VSCode.
实验目的:掌握数据的顺序存储结构及它们在计算机中的操作。 实验内容:
Google的云计算 分布式锁服务Chubby.
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
本节内容 动态链接库 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
本节内容 导出表 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第8章 创建与使用图块 将一个或多个单一的实体对象整合为一个对象,这个对象就是图块。图块中的各实体可以具有各自的图层、线性、颜色等特征。在应用时,图块作为一个独立的、完整的对象进行操作,可以根据需要按一定比例和角度将图块插入到需要的位置。 2019/6/30.
本节内容 进程 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第四章 UNIX文件系统.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
第6章 文件管理 本章学习目标 6.1 文件与文件系统 6.2 文件的逻辑结构 6.3 文件的物理结构 6.4 UNIX系统文件索引结构举例
第七章 文 件 管 理 7.1 文件和文件系统 7.2 文件的逻辑结构 7.3 文件目录 7.4 文件共享 7.5 文件保护.
Presentation transcript:

第11章 文件管理

本章基本内容与要求 基本内容 基本概念与术语 文件的结构 文件目录 文件存储空间的管理 文件的共享 文件的存取控制

本章基本内容与要求 要求 掌握基本概念与术语 掌握文件的结构、文件目录、文件存储空间的管理 了解文件的共享、文件的存取控制

11.1 基本概念与术语 1.文件与文件系统的概念 文件 具有标识符(文件名)的一组相关信息的集合。 包括两部分:文件体,即文件本身的信息;文件属性,即文件存储和管理信息,如文件名、文件内部标识、文件存储地址、访问权限和访问时间等 文件系统 操作系统中负责存取和管理文件信息的机构。 由管理文件所需的数据结构(如文件控制块,存储分配表等)和相应的管理软件以及访问文件的一组操作组成。

11.1基本概念与术语 2.文件分类 从操作系统的角度讲,文件按组织形式可分为普通文件、目录文件、特殊文件 另外按照文件的逻辑结构可分为有结构文件(记录式文件)和无结构文件(流式文件);按照文件的存取控制属性分为可执行文件、只读文件和读写文件;按文件的物理结构分为顺序(连续)文件、链接文件和索引文件。

11.1基本概念与术语 3.文件存取控制方法与存储设备 用户通过对文件的存取来完成对文件的修改、追加和搜索等操作。常用的存取方法有三种: 顺序存取法,随机存取法(直接存取法)和按键存取法。 常用的存储设备有磁盘、光盘、磁带等。其中磁盘又可分为硬盘和软盘。由于存储设备的特性决定了文件的存取设备和方法

11.2 文件的结构 文件的逻辑结构 文件的物理结构

1.文件的逻辑结构 文件的逻辑结构是用户可见结构。按文件的逻辑结构可分为有结构文件和无结构文件。 有结构文件是指由若干个相关的记录构成的文件,又称记录式文件。这种文件又分为定长记录文件和变长记录文件。变长记录文件包括顺序文件、索引文件和索引顺序文件。 无结构文件又称流式文件,组成流式文件的基本信息单位是字节或字,其长度是文件中所含字节的数目,如大量的源程序,库函数等采用的就是流式结构。文件长度以字节为单位。对流式文件的访问,是采用读写指针来指出下一个要访问的字符。可以把流式文件看作是记录式文件的一个特例。 UNIX、Windows中,所有的文件都被看作是流式文件。

2.文件的物理结构 文件的物理结构,又称为文件的存储结构,是指文件在外存上的存储组织形式。事实上,由于文件的物理结构决定了文件信息在存储设备上的存储位置,因此,文件信息的逻辑块号(逻辑地址) 到物理块号(物理地址) 的变换也是由文件的物理结构决定的。 常用的文件物理结构有连续分配、链接分配与索引分配。

2.1连续分配 连续分配是一种最简单的物理文件结构。它把一个在逻辑上连续的文件信息依次存放到物理块中,为每个文件分配一组相邻的盘块。 连续分配的优点是算法简单,支持顺序存取和随机存取,顺序存取速度快,另外所需的磁盘寻道次数和寻道时间最少。 连续分配的缺点是文件不能动态增长,文件存取要求有连续的存储空间,必须事先知道文件的长度,要预留空间,预留过大则造成空间浪费;不利于文件插入和删除;会产生外部碎片问题,解决要采用存储压缩技术。

2.1连续分配

2.2 链接分配 链接分配是将文件存储在离散的盘块中,离散的盘块之间通过指针链接。将同属于一个文件的多个离散的盘块链接成一个链表,由此所形成的物理文件称为链接文件。链接文件盘块动态分配,无外碎片。

2.2 链接分配 显式链接文件目录和FAT表

2.3索引分配 一个文件的信息存放在若干不连续物理块中,系统为每个文件建立一个专用数据结构——索引表,并将这些块的块号存放在一个索引表中。索引分配通过为每个文件分配一个索引块,存放索引表,记录文件的盘块号,文件目录项中保存索引块的盘块号。

2.3索引分配 索引分配保持了链接结构的优点,又克服了其缺点;即能顺序存取又能随机存取;同时满足了文件动态增长、插入删除的要求。 索引分配的缺点是需较多的寻道次数和寻道时间,此外索引块本身带来了系统开销。

11.3 文件目录 文件控制块(FCB) 文件的目录结构

1.文件控制块(FCB) 一个文件包括两部分:文件说明和文件体,文件体指文件本身的信息,文件说明有时也叫文件控制块(FCB)。文件控制块的有序集合即为文件目录,每一个文件控制块就是一个文件目录项。文件目录是一种文件,称为目录文件。文件系统利用目录文件完成按名存取和对文件信息的共享与保护。 FCB中包括基本信息类、存取控制信息类和使用信息类。其中基本信息类中包含文件名、文件内部标识、文件物理位置、文件逻辑结构和文件的物理结构等信息。

2.文件的目录结构 文件的目录结构关系到文件系统的存取速度、文件的共享性、文件的安全性。文件目录可分为单级目录、二级目录和多级目录。 (1) 单级目录 单级目录是一种最简单、最原始的目录结构。整个目录组织是一个线性结构,系统中的所有文件都建立在一张目录表中。每个文件的信息占用一个目录项。 优点:简单,易于实现,实现了“按名存取”。 缺点:在文件较多时,查找速度慢、不允许重名和不便于实现文件共享(即别名问题,一个文件有多个不同的文件名)。

2.文件的目录结构 (2) 二级目录 各个文件的说明信息被组织成目录文件,且以用户为单位把各自的文件说明划分为不同的组。然后,把这些不同的组名和有关存取控制信息存放在主目录(MFD)目录项中。 与主目录 MFD相对应,用户文件的文件说明所组成的目录文件被称为用户文件目录(UFD)。

2.文件的目录结构 (3) 多级目录(树型目录) 多级目录结构由根目录和各级目录组成,为管理上的方便,除根目录外,其它各级目录均以文件的形式组成目录文件。 根目录中的每个目录项可以对应一个目录文件,也可以对应一个数据文件,同样目录文件中的每个目录项可以对应一个目录文件,也可以对应一个数据文件。如此类推,就形成多级目录结构。

(3) 多级目录(树型目录)

(3) 多级目录(树型目录) 路径名:从树的根(即主目录)开始, 把全部目录文件名与数据文件名,依次地用“/”连接起来, 即构成该数据文件的路径名(path name)。 相对路径(relative path name):把从当前目录开始直到数据文件为止所构成的路径名 绝对路径(absolute path name):从树根开始的路径名。 优点:层次清晰,便于管理和保护;便于文件共享;有利于文件分类;解决了重命名问题;引入当前路径或索引接点,提高了检索速度;并能够进行存取权限的限制。

11.4 文件存储空间管理 空闲表法 空闲链表法 成组链接法

1.空闲表法 为所有空闲区(含多个空闲盘块)建立一张空闲表,每个空闲区对应一个空闲表项,包括表项序号、空闲区第一个盘块号、空闲区长度(块数) 起始空闲盘块号 盘块数 1 2 4 9 3 15 5 ……

2.空闲链表法 就是把空闲盘块或空闲盘区用链表方式组织在一起,该方法可分为空闲盘块链表法和空闲盘区链法。 空闲盘块链法 以盘块为单位拉成一条链。当用户创建文件请求申请空间时,系统从链首开始,依次摘下适当数目的空闲盘块分配给用户;当用户删除文件释放空间时,系统把回收的盘块插入链尾。 空闲盘区链法 以盘区(每个盘区包含若干个盘块)为单位拉成一条链。分配盘区的方法与动态内存分配类似,采用FF或者BF等策略;回收的时候也要考虑分区的合并。

3.成组链接法 可看作空闲块链接法的扩展,UNIX系统采用该方法。 将文件区中的所有盘块等分成若干组(假定每组含m块),把每一组含有的盘块总数和该组所有的盘块号记入前一组的第一个盘块,这样所有空闲块就通过每组的第一个盘块链接起来;最末一组只有m-1个盘块,因此倒数第二组所记录的下一组盘块数为m-1,同时用于记录第m个块的位置的号数设置NIL,表示空闲盘块链的结束。 设置一个堆栈(一般在内存中),即空闲盘块号栈S(临界资源),用于存放当前可用的一组(第一组)空闲盘块的盘块号以及栈中尚有的空闲盘块号数N;将第一组的盘块总数和所有盘块号记入空闲盘块号栈,作为当前可供分配的空闲盘块号

3.成组链接法

11.5 文件的共享 常用的共享方式有基于索引节点的共享方式和利用符号链接实现的共享方式。 基于索引节点的共享方式是将索引节点与文件目录分开,通过不同的目录指向同一索引节点实现共享。文件的删除需要看文件的链接数。可以通过多个文件名,链接到同一个索引接点上,故可以建立同一个文件的多个彼此平等的别名。当文件主删除文件时,只能等到链接计数count=0时,才能真正删除该文件。 基于符号链接的共享方式是在利用符号链方式实现文件共享时,只是文件主才拥有指向其索引结点的指针;而共享该文件的其他用户,则只有该文件的路径名,并不拥有指向其索引结点的指针。

11.6 文件的存取控制 文件的存取控制有多种实现方式,下面介绍3种,分别为按用户分类的存取控制权限、存取控制矩阵和口令方式。 Unix使用按用户分类的存取控制权限,即在文件存取控制上把用户分为创建者(owner)、同组用户(group)和一般用户(public)三种。权限有可读(R)、可写(W)和可执行(X)三种。使用Unix命令chmod可设置某文件的权限

11.6 文件的存取控制 存取控制矩阵方式以一个二维矩阵来进行存取控制。二维矩阵的一维是所有的用户,另一维是所有的文件。对应的矩阵元素则是用户对文件的存取控制权,包括读R,写W和执行X。 Nju Hhu Zhangft …… A.C RWX X B.C RW R D.C W E.C

11.6 文件的存取控制 口令方式有两种: 当用户进入系统,为建立终端进程时获得系统使用权的口令。 每个用户在创建文件时,为每一个创建的文件设置一个口令,且将其置于文件说明中。 显然,口令只有设置者自己知道,若允许其他用户使用自己的文件,口令设置者可将口令赋予其他用户。这样,既可以做到文件共享,又可做到保密。