说点什么吧~
第三讲文件存储
文件系统的基本功能:寻址与定位
应用程序访问目录树中的一个文件
操作系统将文件名交给文件系统
文件系统将文件名翻译为对应的磁盘的具体位置
磁盘转到具体的磁道,定位磁头,完成读写
文件系统的目录树组织
不同的操作系统具有不同的文件目录树组织方式,有些目录具有特定的含义,用以特定的用途
Linux文件系统通过根目录树的组织方式,将所有的文件组织到同一个命名空间中,如果有不同的文件系统的化(例如多个磁盘)也会被安装到目录树的某一个目录下
Windows下的文件系统会根据不同的文件系统的情况分为多个不同的磁盘分别进行访问
虚拟文件系统Virtual File Systems
虚拟文件系统(VFS)是物理文件系统与服务之间的一个接口层,它对Linux的每个文件系统的所有细节进行抽象,使得不同的文件系统在Linux核心以及系统中运行的其他进程看来,都是相同的。
文件系统的目录操作
创建文件 删除文件 移动目录 文件改名
创建目录 删除目录 移动目录 目录改名
列目录下的所有文件以及子目录
组合操作:扫描整个文件系统目录树或者扫描某一个目录下的所有子目录及子目录下的子目录
文件系统的文件读写操作
文件系统的读写操作也具有标准的接口
文件的打开
文件的读取
文件的写入
文件的关闭
文件系统的读写操作实际是整个文件系统主要的操作,完成了整个文件系统绝大多数的数据流量的处理,提要整个系统的读写的高性能
文件系统元数据
文件系统的元数据是对于数据的描述,而不是数据的本身
文件系统的元数据能够反应文件的特征,并对数据的读写具有重要意义
文件系统中针对文件的典型元数据:
• 文件在目录树中的目录名以及文件名
• 文件的大小以及在磁盘上的分布情况
• 文件的访问时间,修改时间
• 文件的用户数据等
文件系统总体的元数据
• 文件系统的编码信息
• 文件系统的格式化的信息
• 文件系统的可用空间等相关信息
局部性
时间局部性
• 时间局部性是某部分内存被访问了,则在不久的将来,它可能再被访问。
空间局部性
• 空间局部性是某部分存储单元被访问,那么它附近的单元也将很快被访问。
文件系统的安全性策略
早期的文件系统没有安全性的策略,例如FAT文件系统没有安全性策略,整个系统没有用户的概念
当前文件系统都有一定的安全性策略,典型的UNIX文件系统策略有用户以及用户组的概念,在权限上区分rwx,即读,写,以及执行(对于目录是访问)
最新的文件系统以及操作系统会加入高级的安全功能,如NTFS支持保证文件和文件夹安全性的访问控制列表(ACL),以及数据加密功能
除了文件系统之外,操作系统也会加入一些安全的模块,例如Linux下的内核seLinux,能够进一步加入对于整个系统的访问安全控制
分布式文件系统提供的文件定位功能
与本地文件系统一样,分布式文件系统同样需要提供文件的定位功能,即从文件名定位到具体的数据的位置
在本地文件系统中,数据的位置是磁盘的参数,而分布式文件系统的数据的位置是在系统中一个节点以及这个具体节点中的某一个文件
• 为何不需要定位到具体的磁盘中的位置?
分布式文件系统的本质的功能:将一个以目录树表达的文件翻译为一个具体的节点,而到磁盘的定位则可以交给本地文件系统去完成
说点什么吧~
欢迎来到学堂在线广场~
在这里你可以玩活动,看资讯,晒笔记。
还可以交学友、发心情、聊人生。
在学堂的每一天,就从这里开始吧!
点击 广场指南 了解更多