350 likes | 562 Views
第六章 UNIX 文件系统. UNIX 文件的概念 UNIX 文件的分类 UNIX 文件系统 UNIX 文件系统内部存储方式 UNIX 文件系统的动态管理技术 用于文件管理的系统调用 文件随机存取技术 文件记录管理技术 文件系统的备份何恢复. 6.2 UNIX 文件的分类. 文件类型 ls – l 命令输出信息的第一列表示文件信息. 普通文件. 文本文件 ASC Ⅱ 码的字符流,组成文件的每个字节都是 ASC Ⅱ 码字符 二进制文件 编译后的执行文件 各种数据文件. 目录文件. 目录 / 文件名 索引节点号. 特殊文件 ( 设备文件 ).
E N D
第六章 UNIX文件系统 UNIX文件的概念 UNIX文件的分类 UNIX文件系统 UNIX文件系统内部存储方式 UNIX文件系统的动态管理技术 用于文件管理的系统调用 文件随机存取技术 文件记录管理技术 文件系统的备份何恢复
6.2 UNIX文件的分类 • 文件类型 • ls –l命令输出信息的第一列表示文件信息
普通文件 • 文本文件 • ASCⅡ码的字符流,组成文件的每个字节都是ASCⅡ码字符 • 二进制文件 • 编译后的执行文件 • 各种数据文件
目录文件 • 目录/文件名 • 索引节点号
特殊文件(设备文件) • UNIX对文件和设备进行统一的管理,它把所有的外部设备都按文件的形式提供给用户使用 • 字符设备文件(无缓冲) • 键盘、终端、打印机 • 块设备文件(采用缓冲机制) • 磁盘、CD-ROM
管道文件 • 作为进程间数据传递的通道,发送进程将数据写入管道,接受进程按照相同的顺序从管道中读取数据 • 特点:先进先出(FIFO) • 无名管道 • 命令中的|或使用pipe()函数创建 • 有名管道 • 使用函数mknod()创建
链接文件 • 硬链接 • 相当于原文件的别名。具有相同的物理地址和inode号 • ln file1 file2 • 软链接 • 快捷方式 • ln –s file1 file2
相关的命令 • 获得文件信息 • ls • -i 显示inode • od • -c 显示ASCII码 • -h 十六进制
6.3 UNIX文件系统 • 系统目录结构 • UNIX的文件系统是以目录形式组织和管理文件的
文件的组织结构 • UNIX采用索引文件组织结构来管理文件 • 方便查询 • 对文件中的每一个可能成为检索条件的域都可以建立索引,对记录的访问通过索引完成 • 索引技术使得文件存储结构清晰,访问速度快
系统中的特殊文件和目录 • / 根目录 • /bin 存放必要的命令 • /boot 存放MBR的复制 • /dev 存放设备驱动文件 • /etc 存放配置文件 • /home 用户文件主目录 • /lib 存放必要的运行库 • /mnt 存放临时的映射文件系统 • /proc 存放存储进程和系统信息 • /root 超级用户的根目录 • /sbin 存放系统管理文件 • /tmp 存放临时文件 • /usr 存放应用程序包的主目录 • /var 存放系统产生的文件
文件系统的安装与卸载 • mount –t 类型 设备名 安装点 • 文件系统的类型可以缺省,OS读取超级块来确定类型 • #mount /dev/hdb1 /mnt/windiskfat • #mount /dev/hdb2 /mnt/windiskntfs • umount 安装点 • #umount /mnt/windiskfat • #umount /mnt/windiskntfs
文件系统的安装与卸载 • Linux下的分区概念是,硬盘上的每个分区也是一个设备。他们的标志是/dev/hdxy,其中hdx表示哪个硬盘,y表示第几个分区。以hda为例。hda1就是第一个分区,hda4就是第四个分区位置。逻辑分区从hda5开始。 • hda1是主分区,格式是windows。hda2是扩展分区,在它上划出了hda5,hda6…,格式是windows。
文件系统表 • 系统的/etc/fstab • 存放了文件系统的信息
6.4 UNIX文件系统内部存储方式 • UNIX文件系统按文件卷(volume)进行构造,文件卷与物理设备相对应
文件系统的存储结构 • 一个UNIX文件系统分为四个部分。 0# 1# 2#~k# k+1#~n#
文件系统的存储结构 • 一个UNIX文件系统分为四个部分。 0# 1# 2#~k# k+1#~n#
文件系统的存储结构 • 一个UNIX文件系统分为四个部分。 0# 1# 2#~k# k+1#~n#
文件系统的存储结构 • 一个UNIX文件系统分为四个部分。 0# 1# 2#~k# k+1#~n#
文件系统的存储结构 • 一个UNIX文件系统分为四个部分。 0# 1# 2#~k# k+1#~n#
索引节点和目录文件的作用 • 传统的Unix目录文件登记项: • Unix System V的目录结构 索引节点号(2字节) 文件名(14字节)
索引节点和目录文件的作用 索引节点表 File2.c索引指针 数据区 File2.c数据
直接 寻址 数据 块 0 1 9 10 11 12 一次 间接 二次 间接 三次 间接 多重索引存储结构(自学)
6.5 UNIX文件系统的动态管理技术 • 支持多种文件系统的机制 • 数据结构的动态管理 • 文件的检索过程 • 文件的共享方式
支持多种文件系统机制 • Linux可以识别的文件系统: • Affs • Extfs • Hpfs • Iso9660 • Minix • Msdos • …
支持多种文件系统机制 • 虚拟文件系统和实际文件系统 • 图6-11
数据结构的动态管理(自学) • 内存超级快 • 活动索引节点表 • 用户代开文件表 • 系统打开的文件表 • 安装表 • 图6-12
文件的检索过程 • 见图6-13
文件共享的方式 • 不同用户不同级别的共享 • 父子进程对文件的共享 • 文件的链接共享 • 在同祖先的进程之间建立管道线的文件共享
文件的链接共享 • ln abc.c xyz.c • ln –s xyz def.c
6.6 用于文件管理的系统调用 • 和C语言的文件函数相似(略讲) • creat() • open() • close() • read/write()
6.7 文件随机存取技术 • 和C语言的文件函数相似(略讲) • lseek() • tell()
6.8 文件记录管理技术 • lockf():文件记录锁定
6.9 文件系统的备份与恢复技术(自学) • 备份 • 恢复
总结 • UNIX文件的概念 • UNIX文件的分类 • UNIX文件系统 • UNIX文件系统内部存储方式