《计算机操作系统第9章.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统第9章.ppt(82页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的物理结构文件的物理结构文件的物理结构文件的物理结构文件目录文件目录文件目录文件目录文件的共享与安全文件的共享与安全文件的共享与安全文件的共享与安全文件操作与文件备份文件操作与文件备份文件操作与文件备份文件操作与文件备份LinuxLinux文件系统文件系统文件系统文件系统1文件系统文件系统文件系统文件系统主要内容主要内容主要内容主要内容21.1.文件文件文件文件什么是文件什么是文件什么是文件什
2、么是文件 文件是在逻辑上具有完整意义的信息集合,它有一个名 字以供标识,文件名是以字母开头的字母数字串。构成文件的基本单位构成文件的基本单位构成文件的基本单位构成文件的基本单位信息项、记录信息项、记录文件的其他描述文件的其他描述文件的其他描述文件的其他描述文件是具有符号名的信息文件是具有符号名的信息(数据数据)项的集合项的集合文件是具有符号名的记录的集合文件是具有符号名的记录的集合 文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念3文件分类文件分类文件分类文件分类按文件的性质和用途分类按文件的性质和用途分类系统文件 程序库文件 用户文件按
3、文件保护级别分类按文件保护级别分类按文件保护级别分类按文件保护级别分类不保护文件 执行文件只读文件 读写文件按文件流向分类按文件流向分类按文件流向分类按文件流向分类输入文件输出文件输入输出文件 文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念4文件名与属性文件名与属性文件名与属性文件名与属性文件名文件名文件名文件名 每个文件有一个给定的名字,这个名字是由串描述且由 文件内容来表示,包括文件符号名和内部标识符。用户使用文件符号名进行文件操作系统使用文件内部标识符管理文件文件扩展文件扩展文件扩展文件扩展文件扩展表示文件的使用特征,如:.c .
4、obj .lib 等。文件属性文件属性文件属性文件属性文件的属性字,表示文件类别、保护级等信息。文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念52.2.文件系统文件系统文件系统文件系统什么是文件系统什么是文件系统什么是文件系统什么是文件系统 文件系统是操作系统中负责管理和存取文件信息的软件机构。管理文件所需的数据结构(如目录表、文件控制块、存储分配表)管理程序一组操作文件系统的功能文件系统的功能文件系统的功能文件系统的功能从用户角度看 文件系统实现了“按名存取”的功能从系统角度看 构造文件结构提供文件共享功能辅存空间管理文件系统文件系统
5、文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念提供存取文件的方法文件保护提供一组文件操作命令 6安全可靠安全可靠安全可靠安全可靠 提供防护措施,在文件遭受破坏时,能及时复。全量备份、增量备份、动态备份、远程备份既能共享,又能保密既能共享,又能保密既能共享,又能保密既能共享,又能保密 身份验证、存取权限验证。文件系统的特点文件系统的特点文件系统的特点文件系统的特点使用简单使用简单使用简单使用简单 使用文件名、一组文件操作命令。文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念73.3.文件组织的两种结
6、构文件组织的两种结构文件组织的两种结构文件组织的两种结构文件的逻辑结构文件的逻辑结构文件的逻辑结构文件的逻辑结构什么是逻辑文件什么是逻辑文件 从用户角度看到的文件面貌。即用户对信息进行逻辑 组织形成的文件结构。研究文件逻辑结构的目的研究文件逻辑结构的目的为用户提供一种逻辑结构清晰、使用简便的逻辑文件形式;用户按文件的逻辑结构形式去存储、检索和加工文件中的信息。文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念8文件的物理结构文件的物理结构文件的物理结构文件的物理结构什么是物理文件什么是物理文件 文件的物理结构是信息在物理存储器上的存储方式,
7、是数据的物理表示和组织。研究文件物理结构的目的研究文件物理结构的目的选择工作性能良好、设备利用率高的物理文件形式;系统按照文件的物理结构形式和外部设备打交道,控制信息的传输。文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念9逻辑记录与物理记录逻辑记录与物理记录逻辑记录与物理记录逻辑记录与物理记录(磁盘块磁盘块磁盘块磁盘块)逻辑记录逻辑记录 文件中按信息在逻辑上的独立含义来划分的信息单位,逻辑记录是对文件进行存取操作的基本单位。物理记录物理记录 在存储介质上,由连续信息所组成的一个区域称为块,也叫物理记录。逻辑记录与物理记录的区别与联系逻辑
8、记录与物理记录的区别与联系一个是逻辑的概念,一个是物理的概念逻辑记录最终要存放到物理记录上 文件系统文件系统文件系统文件系统文件系统的基本概念文件系统的基本概念文件系统的基本概念文件系统的基本概念101.1.文件的逻辑结构文件的逻辑结构文件的逻辑结构文件的逻辑结构流式文件流式文件流式文件流式文件什么是流式文件什么是流式文件什么是流式文件什么是流式文件 流式文件是相关的有序字符的集合,是无结构的。流式文件的存取流式文件的存取 流式文件是按信息的个数或以特殊字符为界进行存取的。记录式文件记录式文件记录式文件记录式文件什么是记录式文件什么是记录式文件 记录式文件是一种有结构的文件。这种文件在逻辑上总
9、 是被看成一组连续顺序的记录的集合。文件系统文件系统文件系统文件系统文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法11定长记录与变长记录定长记录与变长记录定长记录与变长记录定长记录与变长记录定长记录定长记录 文件系统文件系统文件系统文件系统文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法变长记录变长记录 r0r1 riRPTR定长记录定长记录01L2L l0r0 riRPTR变长记录变长记录0L0+1 li122.2.文件存取方法文件存取方法文件存取方法文件存取方法顺序存取顺序存取顺序存取顺序存取
10、 后一次存取总是在前一次存取的基础上进行的。顺序存取时不必给出具体的存取位置。随机存取随机存取随机存取随机存取 用户以任意次序请求某个记录。随机存取时要指出起始存取位置(例如记录号)。文件系统文件系统文件系统文件系统文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法文件的逻辑结构与存取方法13常用的文件物理结构:常用的文件物理结构:连续文件、串联文件、索引结构连续文件、串联文件、索引结构连续文件、串联文件、索引结构连续文件、串联文件、索引结构1.1.连续连续连续连续文件文件文件文件什么是连续文件什么是连续文件什么是连续文件什么是连续文件连续文件结构是由一组分配在磁盘连续区
11、域的物理块组 成的。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构连续文件结构例连续文件结构例连续文件结构例连续文件结构例文件有三个记录(逻辑记录与物理块大小相等,都为 512),采用连续文件结构,r0存放在块号为100的磁 盘块上。14文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构文件文件A 3 100 r0 r1 r2 磁盘块号磁盘块号100101102文件目录文件目录文件文件A目录项目录项连续文件的特点连续文件的特点连续文件的特点连续文件的特点连续存取时速度较快文件长度一经固定便不易改变文件的增生和扩充不
12、易 问题:在连续文件结构下,存取问题:在连续文件结构下,存取 r i 记录时,应如何操作记录时,应如何操作?152.2.串联文件串联文件串联文件串联文件什么是串联文件什么是串联文件什么是串联文件什么是串联文件串联文件结构是按顺序由串联的块组成的,即文件的信 息存于若干块物理块中,每个物理块的最末一个字作为 链接字,它指出后继块的物理地址。文件的最后一块的 链接字为结束标记“”,它表示文件至本块结束。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构串联文件结构例串联文件结构例串联文件结构例串联文件结构例16文件系统文件系统文件系统文件系统文件的物理结构文件
13、的物理结构文件的物理结构文件的物理结构串联文件的特点串联文件的特点串联文件的特点串联文件的特点能较好地利用辅存空间易于对文件进行增生和扩充连续存取时速度较快文件文件A 100 r1 57 r2 r0 150磁盘块号磁盘块号 100磁盘块号磁盘块号 150磁盘块号磁盘块号 57文件目录文件目录文件文件A目录项目录项 问题:在串联文件结构下,存取问题:在串联文件结构下,存取 r i 记录时,应如何操作记录时,应如何操作?173.3.索引文件索引文件索引文件索引文件什么是索引文件什么是索引文件什么是索引文件什么是索引文件系统为每个文件建立逻辑块号与物理块号的对照表。这张表称为该文件的索引表。文件由数
14、据文件和索引 表构成。这种文件称为索引文件。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构18索引文件结构例索引文件结构例索引文件结构例索引文件结构例文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构文件文件A索引表指针索引表指针文件文件A目录项目录项 r0 r1文件目录文件目录 0 23 1 19 2 26 3 29 r2 r3磁盘块号磁盘块号 23磁盘块号磁盘块号 19磁盘块号磁盘块号 26磁盘块号磁盘块号 29文件索引表文件索引表逻辑块号逻辑块号物理块号物理块号19索引文件的操作索引文件的操作索引文件的操作索
15、引文件的操作索引文件在存储区中占两个区索引文件在存储区中占两个区索引区:存放索引表数据区:存放数据文件访问索引文件的操作访问索引文件的操作查文件索引,由逻辑块号查得物理块号由此磁盘物理块号而获得所要求的信息索引文件的特点索引文件的特点索引文件的特点索引文件的特点易于文件的增删易于文件的增删直接读写任意记录直接读写任意记录文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构204.4.索引表的组织索引表的组织索引表的组织索引表的组织多级索引多级索引多级索引多级索引直接索引直接索引直接索引直接索引文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的
16、物理结构文件的物理结构 文件目录项中有一组表项用于索引。每一个表项登记的是逻辑记录所在的磁盘块号。文件文件A目录项目录项 r0 r1文件目录文件目录 r2 r3磁盘块号磁盘块号 23磁盘块号磁盘块号 89磁盘块号磁盘块号 126磁盘块号磁盘块号 229 23 89 126 229 21一级间接索引一级间接索引一级间接索引一级间接索引文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构 文件目录项中有一组表项,其内容登记的是第一级索引表块的块号。第一级索引表块中的索引表项登记的是文件逻辑记录所在的磁盘块号。文件文件A目录项目录项文件目录文件目录 52 66 1
17、26 229 r0块号块号 23 23 89 r1块号块号 89 r256块号块号 178 178 49 r511块号块号 49 一级间接索引一级间接索引 磁盘块号磁盘块号 52磁盘块磁盘块 22二级间接索引二级间接索引二级间接索引二级间接索引文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构 文件目录项中有一组表项,其内容登记的是第二级索引表块的块号。第二级索引表块中的索引表项登记的第一级索引表块的块号,第一级索引表项中登记的是文件逻辑记录所在的磁盘块号。文件文件A目录项目录项文件目录文件目录 二级间接索引二级间接索引 磁盘块磁盘块 一级间接索引一级间接
18、索引 235.UNIX5.UNIX系统的索引文件结构系统的索引文件结构系统的索引文件结构系统的索引文件结构文件索引节点文件索引节点文件索引节点文件索引节点目录项目录项UNIX系统把文件目录项中除了名字以外的信息全 部存放到一个数据块上,这种数据块就是文件索引 节点(index node),简称i节点。在目录项中只有文件的名字和对应i节点的编号。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构24索引节点结构索引节点结构 文件所有者标识文件所有者标识 i_uid,i_gid地址索引表地址索引表 i_addr13文件类型文件类型 i_type文件存取许可权文
19、件存取许可权 i_mode联接计数联接计数 i_ilink文件存取时间文件存取时间 i_time文件长度文件长度 i_size文件所有者标识文件所有者标识 定义对一个文件具有存取权的用户集合,分为文件所有者、用户组所有者文件类型文件类型 分为正规文件、目录文件、字符特殊文件或块特殊文件文件存取许可权文件存取许可权 按文件所有者、文件的用户组所有者及其他用户三个类别对文件施行保护。每类都具有读、写、执行该文件的存取权,并且能分别地设置。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构25文件所有者标识文件所有者标识 i_uid,i_gid地址索引表地址索引
20、表 i_addr13文件类型文件类型 i_type文件存取许可权文件存取许可权 i_mode联接计数联接计数 i_ilink文件存取时间文件存取时间 i_time文件长度文件长度 i_size文件联结数目文件联结数目 表示在文件目录结构中,有多少个文 件名指向该文件。每当增加一个名字 时,i_ilink值加1,减少一个名字时其 值减1。当其值减为0时,该文件才能 真正删除。地址索引表地址索引表 文件数据的磁盘地址明细表,即地址 索引表,在UNIX 第七版本用 i_addr8 来描述。在UNIX system中用 i_addr13来描述。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结
21、构文件的物理结构文件的物理结构26索引节点示例索引节点示例所有者所有者 mjb用户组用户组 os类类 型型 正规文件正规文件许可权许可权 wrx_rx_x最后一次读文件最后一次读文件 20101023下午下午1 45最后一次写文件最后一次写文件 20101022 上午上午10 30最后一次改变索引节点最后一次改变索引节点 20101023下午下午1 30文件长度文件长度 6030字节字节磁盘地址磁盘地址 i_addr13文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构27UNIXUNIX文件索引结构文件索引结构文件索引结构文件索引结构UNIX系统的文件采
22、用不连续分配,文件所在的磁盘物系统的文件采用不连续分配,文件所在的磁盘物 理块号是不连续的。理块号是不连续的。UNIX系统采用文件索引结构系统采用文件索引结构 讨论讨论讨论讨论UNIXUNIX第七版本第七版本第七版本第七版本 的文件索引结构的文件索引结构的文件索引结构的文件索引结构 UNIX system UNIX system 的文件索引结构的文件索引结构的文件索引结构的文件索引结构文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构28 i_addr0i_addr1i_addr2i_addr3i_addr4i_addr5i_addr6i_addr7100
23、5710020057200在文件i节点中使用一个具 有8个数据项的数组i_addr 来描述文件物理结构构造小型文件时,数组 i_addr 作为直接索引表。文件的大小:8512BUNIX第七版本的文件索引结构第七版本的文件索引结构小型文件小型文件小型文件小型文件文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构29大型文件大型文件大型文件大型文件数组i_addr 用于一级间接索引,只使用 i_addr0-addr6系统支持的文件最大可为:7256512B 文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构 i_addr0
24、i_addr1i_addr2i_addr3i_addr4i_addr5i_addr6i_addr7387972001005837387100373222005832230巨型文件巨型文件巨型文件巨型文件文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构296466 i_addr0i_addr1i_addr2i_addr3i_addr4i_addr5i_addr6i_addr738713920010058 48276838976829687200 5893379348287387 10037389 46610810831巨型文件支持的文件大小巨型文件支持的文
25、件大小巨型文件支持的文件大小巨型文件支持的文件大小i_addr0i_addr6 用于一级间接索引i_addr7 用于二级间接索引 系统支持的文件最大可为 (7256+2562)512B 文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构UNIX system 的文件索引结构的文件索引结构UNIX system V 采用 i_addr13地址表来构造文件的索引结构。文件系统文件系统文件系统文件系统文件的物理结构文件的物理结构文件的物理结构文件的物理结构32系统支持的文件最大可为:(10+256+2562+2563)512B 一级间接索引二级间接索引三级间接索
26、引i_addr0i_addr1i_addr2i_addr3i_addr4i_addr5i_addr6i_addr7i_addr8i_addr9i_addr12i_addr11i_addr10331.1.文件目录有关概念文件目录有关概念文件目录有关概念文件目录有关概念什么是文件目录什么是文件目录什么是文件目录什么是文件目录 文件目录是记录文件的名字、存放地址及其他有关文件 的说明信息和控制信息的数据结构。文件目录项的内容文件目录项的内容文件目录项的内容文件目录项的内容文件名文件名文件逻辑结构文件逻辑结构 说明该文件的记录是否定长、记录长度及记录个数等。文件系统文件系统文件系统文件系统文件目录及其
27、结构文件目录及其结构文件目录及其结构文件目录及其结构34文件物理结构文件物理结构:记录文件的物理结构形式记录文件的物理结构形式 连续文件连续文件指出文件第一块的物理地址、文件所占块数 串联文件串联文件指出该文件第一块的物理地址 索引文件索引文件指出索引表地址存取控制信息存取控制信息 文件主具有的存取权限、核准的其他用户及其相应的存取权限 管理信息管理信息 文件建立日期、时间,上一次存取时间、要求文件保留的时间等文件类型文件类型 文件的类型,例如可分为数据文件、目录文件、块存储设备文件、字符设备文件文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构3
28、52.2.一级文件目录一级文件目录一级文件目录一级文件目录什么是一级文件目录什么是一级文件目录什么是一级文件目录什么是一级文件目录 系统将已建立的所有文件的文件名、存放地址及有关的说 明信息放在一张表中,这张表称为一级文件目录。表表9.2 一级文件目录一级文件目录 文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构文文 件件 名名物物 理理 地地 址址其其 他他 信信 息息patestcompilerassemblerabcwang36一级文件目录的特点一级文件目录的特点一级文件目录的特点一级文件目录的特点实现了按名存取的功能,比较简单;要求文件名
29、和文件之间有一一对应的关系,即:不允许两个文件有相同的名字。在多用户环境中,出现了重名问题,或称为命名冲突在多用户环境中,出现了重名问题,或称为命名冲突重名问题重名问题重名问题重名问题所谓“重名”,是指不同用户对不同文件起了相同的名字,即两个或多个文件只有一个相同的符号名。又称为命名冲突。为了解决命名冲突、获得更灵活的命名能力,文件系统为了解决命名冲突、获得更灵活的命名能力,文件系统 必须采用多级目录结构必须采用多级目录结构文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构373.3.树型文件目录树型文件目录树型文件目录树型文件目录什么是树型文件目
30、录什么是树型文件目录什么是树型文件目录什么是树型文件目录 在多级目录系统中在多级目录系统中(除最末一级外除最末一级外),任何一级目录的目,任何一级目录的目 录项可以描述一个目录文件,也可以描述一个非目录文录项可以描述一个目录文件,也可以描述一个非目录文 件件(数据文件数据文件),而数据文件一定在树叶上。这样,就构,而数据文件一定在树叶上。这样,就构 成了一个树形层次结构。成了一个树形层次结构。文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构38树型文件目录结构树型文件目录结构树型文件目录结构树型文件目录结构 文件系统文件系统文件系统文件系统文件目
31、录及其结构文件目录及其结构文件目录及其结构文件目录及其结构abcfedabcahjhjmrgaacid=13id=21id=14id=15id=16id=17 id=18 id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6 id=7根目录根目录/子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目录 f子目录子目录 e子目录子目录 d39文件路径名文件路径名文件路径名文件路径名多级目录中,文件的路径名是由根目录到该文件的通路上所有目录文多级目录中,文件的路径名是由根目录到该文件的通路上所有目录文件符号名和该文
32、件的符号名组成的字符串,相互之间用分隔符分隔。件符号名和该文件的符号名组成的字符串,相互之间用分隔符分隔。文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构图中图中id为为15的文件的文件路径名为的文件的文件路径名为 /b/f/Jabcfedabcahjhjmrgaacid=13id=21id=14id=15id=16id=17 id=18 id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6id=7根目录根目录/子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目
33、录 f子目录子目录 e子目录子目录 d40如何解决重名问题如何解决重名问题如何解决重名问题如何解决重名问题文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构图中id为13的文件与id为20的文件有相同的文件名,都为a。id为13的文件的文件路径名?id为20的文件的文件路径名?/a/a/a/b/d/a abcfedabcahjhjmrgaacid=13id=21id=14id=15id=16id=17 id=18 id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6id=7根目录根目录/
34、子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目录 f子目录子目录 e子目录子目录 d41当前目录当前目录当前目录当前目录什么是当前目录什么是当前目录 又称值班目录。它是当前用户正在使用的文件所在的目录。当指定当前目录后,用户对文件的所有访问都是相对于 “当前目录”进行的。这时,文件路径名是由“当前目录”到信息文件的通路上所 有各级目录的符号名加上该信息文件的符号名组成。文件系统文件系统文件系统文件系统文件目录及其结构文件目录及其结构文件目录及其结构文件目录及其结构例例例例当指定当前目录为当指定当前目录为id=3 时时,id为为20的文件的文件 文件路径名为文件路径名
35、为 d/a424.4.文件共享与安全文件共享与安全文件共享与安全文件共享与安全文件共享文件共享文件共享文件共享什么是文件共享什么是文件共享 是指某一个或某一部分文件可以让事先规定的某些用户 共同使用。建立建立“当前目录当前目录”实现文件共享实现文件共享 系统规定标识文件的通路可以往上“走”,并用“”表示一 个给定目录文件的父结点。文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全43当前目录当前目录id=8,共享子目录,共享子目录c的文件的文件a(id=12)文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全使用文件路
36、径名使用文件路径名 /c/a 访问访问id=12的文件的文件abcfedabcahjhjmrgaacid=13id=21id=14id=15id=16id=17 id=18 id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6 id=7根目录根目录/子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目录 f子目录子目录 e子目录子目录 d44采用采用“链接技术链接技术”实现文件共享实现文件共享 所谓“链接”,就是在相应目录表目之间进行链接,即 一个目录中的表目直接指向另一个目录表目所在的物 理位置。注意,这种链
37、接不是直接指向文件,而是指向相应的 目录表目。这种办法也称为连访,被共享的文件称为 连访文件。文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全45子目录子目录f共享子目录共享子目录e中的文件中的文件j假定当前目录为假定当前目录为id=8,子目录子目录 f 共享子目录共享子目录e中的文件中的文件 j用文件用文件路径名路径名 k直接存取文件直接存取文件j,id=17文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全kabcfedabcahjhjmrgaacid=13id=21id=14id=15id=16id=17id=
38、18id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6id=7根目录根目录/子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目录 f子目录子目录 e子目录子目录 d46子目录子目录d共享子目录共享子目录c中的文件中的文件a假定当前目录为假定当前目录为id=3,子目录子目录b共享子目录共享子目录c中的文件中的文件a用文件用文件路径名路径名 d/f 存取文件存取文件a,id=12文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全fabcfedabcahjhjmrgaacid
39、=13id=21id=14id=15id=16id=17id=18id=19id=20id=1id=2id=3id=4id=11id=12id=5id=8id=9id=10id=6id=7根目录根目录/子目录子目录 a子目录子目录 b子目录子目录 c子目录子目录 a子目录子目录 f子目录子目录 e子目录子目录 d47文件安全文件安全文件安全文件安全什么是文件安全什么是文件安全 所谓文件安全,就是文件的保护问题。文件的保护是指文件本身不得被未经文件主授权的任何 用户存取,而对于授权用户也只能在允许的存取权限内 使用文件。如何进文件的保护如何进文件的保护 需要对用户的权限进行验证。所谓存取权限的验
40、证,是指用户存取文件之前,需要检 查用户的存取权限是否符合规定,符合者允许使用,否 则拒绝。文件系统文件系统文件系统文件系统文件共享与安全文件共享与安全文件共享与安全文件共享与安全481.1.文件操作文件操作文件操作文件操作常用的文件操作命令常用的文件操作命令常用的文件操作命令常用的文件操作命令create创建一个新文件创建一个新文件delete从系统目录中撤消一个文件从系统目录中撤消一个文件rename 在系统目录中改变文件的名字在系统目录中改变文件的名字open打开文件打开文件 在用户和文件(或设备)之间建立一个逻辑通路close关闭文件关闭文件 在用户和文件(或设备)之间撤消一个逻辑通路
41、write写到一个文件写到一个文件(或设备或设备)上上read从一个文件从一个文件(或设备或设备)读入数据信息读入数据信息文件系统文件系统文件系统文件系统文件操作和文件备份文件操作和文件备份文件操作和文件备份文件操作和文件备份49“打开文件打开文件打开文件打开文件”和和和和“关闭文件关闭文件关闭文件关闭文件”操作操作操作操作操作操作操作操作打开文件操作打开文件操作 所谓打开文件就是把该文件的有关目录表目复制到主 存中约定的区域,建立文件控制块,建立用户和这个 文件的联系。关闭文件操作关闭文件操作 所谓关闭文件就是用户宣布这个文件当前不再使用,系统将其在主存中的文件控制块删去,因而也就切断 了用
42、户同这个文件的联系。文件系统文件系统文件系统文件系统文件操作文件操作文件操作文件操作502.2.文件备份文件备份文件备份文件备份什么是文件备份什么是文件备份什么是文件备份什么是文件备份为了能在软、硬件失效的意外情况下恢复文件,保证文件的完整性、数据的连续可利用性,文件系统提供适当的机构,以便复制备份。文件备份的方法文件备份的方法文件备份的方法文件备份的方法周期性转储周期性转储按固定的时间周期把存储器中所有文件的内容转存到某种介质上,通常是磁带或磁盘。在系统失效时,使用这些转存磁盘或磁带,将所有文件重新建立并恢复到最后一次转存时的状态。文件系统文件系统文件系统文件系统文件操作和文件备份文件操作和
43、文件备份文件操作和文件备份文件操作和文件备份51增量性转储增量性转储这种技术转储的只是从上次转储以后已经改变过的信息;增量转储的信息量较小,故转储可在更短的时间周期内进行。文件备份的发展文件备份的发展文件备份的发展文件备份的发展动态备份动态备份远程备份技术远程备份技术 文件系统文件系统文件系统文件系统文件操作和文件备份文件操作和文件备份文件操作和文件备份文件操作和文件备份521.1.虚拟文件系统虚拟文件系统虚拟文件系统虚拟文件系统(VFS)(VFS)概述概述概述概述什么是虚拟文件系统什么是虚拟文件系统什么是虚拟文件系统什么是虚拟文件系统 虚拟文件系统也成称为虚拟文件系统转换,它是一个内核软 件
44、层,用来处理与UNIX标准文件系统相关的所有系统调用。虚拟文件系统支持的文件类型虚拟文件系统支持的文件类型虚拟文件系统支持的文件类型虚拟文件系统支持的文件类型磁盘文件系统磁盘文件系统磁盘文件系统管理本地磁盘分区中可用的存储空间或者其它可以起到磁盘作用的设备(如USB闪存)。Linux使用的文件系统,如Ext2、Ext3和Reiser文件系统;UNIX家族的文件系统,如System文件系统、USF、MINIX文件系统以及ScoUnix Ware;微软公司的文件系统,如MS-DOS、VFAT及NTFS。文件系统文件系统文件系统文件系统LinuxLinux文件系统文件系统文件系统文件系统53网络文件
45、系统网络文件系统网络文件系统支持对其他网络计算机上文件系统包含文件的访 问。虚拟文件系统支持的网络文件系统有NFS、AFS、CIFS等。特殊文件系统特殊文件系统特殊文件系统不管本地或远程磁盘空间,包含操作系统内核的 数据结构,它提供一种便利的方式让系统程序员可以访问这些 数据结构。其例子是/proc文件系统。文件系统文件系统文件系统文件系统LinuxLinux文件系统文件系统文件系统文件系统542.VFS2.VFS通用文件系统模型与通用文件系统模型与通用文件系统模型与通用文件系统模型与VFSVFS对象对象对象对象VFSVFS通用文件系统模型通用文件系统模型通用文件系统模型通用文件系统模型VFS
46、提供了一个通用的文件系统模型提供了一个通用的文件系统模型 该模型包括了所有不同类型的文件系统常用的功能和操 作,它定义了所有文件系统都支持的基本的、概念上的 接口和数据结构。VFS提供了一个抽象层提供了一个抽象层 该抽象层提供的统一接口隐藏了实际文件系统的具体的 实现细节。文件系统文件系统文件系统文件系统LinuxLinux文件系统文件系统文件系统文件系统55VFS使用的例使用的例 用户程序中的写操作的实施过程用户程序中的写操作的实施过程 一个用户程序中的写操作请求通过VFS的映射、实际 文件系统的具体实施,最终将信息写到物理介质上。文件系统文件系统文件系统文件系统LinuxLinux文件系统
47、文件系统文件系统文件系统 write();用户程序用户程序sys_write()文件系统写方法文件系统写方法VFS虚拟文件系统虚拟文件系统具体文件系统具体文件系统 如如Ext2物理存储介质物理存储介质56VFSVFS对象类型对象类型对象类型对象类型超级块对象超级块对象(superblock object)代表已安装的文件系统,存放已安装文件系统的所有 信息。索引节点对象索引节点对象(inode object)代表一个文件,描述一个具体文件的所有信息。目录项对象目录项对象(dentry object)代表一个目录项,是路径名的一个组成部分。文件对象文件对象(file object)它代表由进程打
48、开的文件。文件系统文件系统文件系统文件系统LinuxLinux文件系统文件系统文件系统文件系统573.3.与进程相关的数据结构与进程相关的数据结构与进程相关的数据结构与进程相关的数据结构 每个进程都有当前目录(或根目录),进程活动期间都要打开各种文件。Linux系统使用fs_struct和file_struct结构体描述以上信息。fs_structfs_struct结构体结构体结构体结构体描述进程的当前目录描述进程的当前目录(或根目录或根目录)的信息;的信息;每个进程描述符的每个进程描述符的fs字段就指向该进程的字段就指向该进程的fs_struct结构体结构体 文件系统文件系统文件系统文件系统
49、LinuxLinux文件系统文件系统文件系统文件系统表表9.13 fs_struct结结构的主要字段构的主要字段 字字 段段说说 明明count共享此结构的进程个数共享此结构的进程个数*root根目录的目录项对象根目录的目录项对象*pwd当前工作目录的目录项对象当前工作目录的目录项对象*rootmut根目录所安装的文件系统对象根目录所安装的文件系统对象*pwdmut当前工作目录所安装的文件系统对象当前工作目录所安装的文件系统对象 58file_structfile_struct结构体结构体结构体结构体描述与每个进程所有相关的信息,如打开的文件及文件 描述符等;该结构的地址存放在进程描述符的fi
50、le字段中。文件系统文件系统文件系统文件系统LinuxLinux文件系统文件系统文件系统文件系统表表9.14 fs_struct结结构的主要字段构的主要字段 字字 段段说说 明明count共享此结构的进程个数共享此结构的进程个数max_fds文件对象当前的最大数目文件对象当前的最大数目*fd指向文件对象指针数组的指针指向文件对象指针数组的指针*close_on_exec指向执行指向执行exec()时需要关闭的文件描述符的指针时需要关闭的文件描述符的指针*open_fds指向打开文件描述符的指针指向打开文件描述符的指针*fd_array文件对象指针的初始化数组文件对象指针的初始化数组 594.V