zoukankan      html  css  js  c++  java
  • 操作系统重点快览第六章

    第六章 文件系统


    文件系统的功能
    文件存储空间的管理
    目录管理
    文件的读写管理
    文件的共享和保护
    提供友好的接口方便用户使用信息资源

    文件逻辑结构
            是指从用户观点出发所看到的文件组织形式,即用户对文件中信息的组织方式,它又称为文件组织。


    无结构文件(即字符流式文件)ps:现代OS普遍采用无结构方式
    有结构文件(包括顺序文件、 索引文件、 索引顺序文件)
    文件物理结构
           文件在存储介质上的存储组织方式,它与文件存储空间的分配策略和存储介质的性能相关。
    顺序结构文件(也叫连续文件)
    链接结构文件(包括隐式链接和显式链接)(如 MS-DOS)
    索引结构文件(包括单级、多级、混合索引结构)(如UNIXLINUXMINIX)

    逻辑文件与物理文件
    逻辑文件指从用户观点出发所看到的文件,如现代OS中的流式文件(也叫无结构文件)。
    物理文件是指存放在文件存储器中的文件。
    流式文件中信息按字节为单位从0开始编号,此即逻辑地址,它可以转换成逻辑块号,和块内偏移量。
    物理文件中每个单元的地址则以物理块号和块内偏移表示,此即物理地址。
    逻辑地址到物理地址的转换


    文件存储空间的分配方式
    连续分配
    链接分配:隐式链接分配,显式链接分配
    索引分配:单级索引、多级索引、混合索引

    文件物理结构的比较

    顺序文件:顺序存取效率最高;随机访问也很方便。但文件动态地增长和缩小系统开销很大;文件创建时要求用户提供文件的大小;存储空间浪费较大。
    隐式链接文件:克服了连续文件的不足之处,但不适合随机访问,可靠性差。
    显式链接文件:能随机访问,但对大文件随机访问性能差。
    单级、多级索引:既适合顺序访问,也适合随机访问,但索引表比较浪费文件存储空间。
    混合索引:既适合顺序访问,也适合随机访问,比普通索引方式节约存储空间,是一种比较好的文件物理结构。UNIX系统采用混合索引方式。

    目录管理的要求

    (1)实现“按名存取”。 ←文件系统最基本的目标
    (2) 提高对目录的检索速度。 
    (3) 文件共享。 
    (4) 允许文件重名。 

    文件控制块 (FCB)
    文件控制块是OS用来存放描述文件、管理文件的文件属性信息(包括文件名、文件的物理地址、文件的长度、文件的存取权限、创建使用的时间等)的数据结构。
    文件 = FCB + 文件内容
    文件与FCB一一对应
    FCB是文件存在的唯一标志
    FCB与文件一起存放在文件存储空间中,对文件执行打开操作时,FCB被读入内存


    FCB的实现方式:
    一个FCB就是一个目录项,目录项的有序集合形成文件目录(如MS-DOS)。
    将FCB拆分成文件名和索引结点两部分(如UNIX)
          目录项=文件名+索引结点编号
           一个文件只有一个磁盘磁盘索引结点,但可有多个目录项
    引入索引结点的目的
          减少目录文件的内容(长度),从而提高在目录中检索文件的速度。

    目录结构
    单级目录
    两级目录
    多级目录(树形目录)ps:目前最常用的目录结构
          根目录、当前工作目录
    层次清晰;
     进一步提高目录检索速度;
     文件重名更方便;
     容易实现共享和保护

    文件存储空间的管理
    空闲表
    空闲链表
    位示图
    成组链接法

    文件的共享
    基于索引结点的共享(硬链接文件)
            被共享的文件:1个磁盘索引结点(其中的链接计数为N),N个目录项,若干个存放文件的数据盘块;
            链接计数保证被共享的文件不会被文件主删除,因此系统不会出现链接失效的情况。
    基于符号链的共享(符号链接文件)
           符号链文件:1个磁盘索引结点(其中的链接计数为1),1个目录项,1个存放文件内容的数据盘块(文件的内容为被共享文件的路径名)
            被共享的文件: 1个磁盘索引结点(其中的链接计数为1或X),1个或X个目录项,若干个存放文件内容的数据盘块

  • 相关阅读:
    开源项目
    [Accessibility] Missing contentDescription attribute on image [可取行]失踪contentDescription属性图像
    Android 布局 中实现适应屏幕大小及组件滚动
    EF 错误记录
    EasyUI 加载时需要显示和隐藏 panel(面板)内容破版问题
    IE 报表缩放后页面破版
    VS 2017 引入nuget 问题
    SSRS 报表显示页面 asp net session丢失或者找不到 asp net session has expired or could not be found()
    log4net 配置
    网站
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3170372.html
Copyright © 2011-2022 走看看