【操作系统】4.1文件管理(概述)

文件管理概述

文件——就是一组有意义的信息/数据集合

  1. 计算机中存放了各种各样的文件,一个文件有哪些属性
  2. 文件内部的数据应该怎样组织起来?
  3. 文件之间又应该怎么组织起来?
  4. 从下往上看,操作系统应该提供哪些功能,才能方便用户、应用程序使用文件?
  5. 从上往下看,文件数据应该怎么存放在外存(磁盘) 上?
  1. 文件的属性

    1. 文件名:由创建文件的用户决定文件名,主要是为了方便用户找到文件,同一目录下不允许有重名文件,但不同目录下允许有重名,故文件名不能唯一标识一个文件
    2. 标识符:一个系统内的各个文件标识符唯一,对用户来说毫无可读性,是操作系统用于区分各个文件的内部名称
    3. 文件类型:指明文件类型,方便默认文件的打开方式
    4. 位置:文件的存放路径(让用户使用)、在外存中的地址(操作系统使用,对用户不可见)
    5. 文件大小、创 建时间、上次修改时间、所有者信息
    6. 保护信息:对文件进行保护访问控制信息
  2. 文件内部的组织

    1. 无结构文件(如文本文件)——由一些二进制或字符流组成,又称“流式文件”
    2. 有结构文件(如数据库表)——由一组相似的记录组成,又称“记录式文件”(记录实际一组相关数据项的集合——数据库表中的一条记录)
      在这里插入图片描述
  3. 文件之间的组织

    1. 用户可以自己创建一层层目录,各层目录中存放着相应的文件。
    2. 目录其实也是一种特殊的有结构文件(由记录组成),如何实现文件目录是之后会重点探讨的问题。
    3. 所谓“目录”其实就是我们熟悉的“文件夹”
      在这里插入图片描述
  4. 操作系统向上提供的功能

    1. 用户、应用程序调用相关的系统调用来实现某种功能
    2. 常见的几个基本功能:
      1. 创建文件(create系统调用)
        1. 需要调用的参数:所需外存空间大小、文件存放路径、文件名
        2. 主要做两件事
          1. 在外存中找到文件所需空间
          2. 创建该文件对应的目录项
      2. 删除文件(delete系统调用)
        1. 需要调用的参数:文件存放路径、文件名
        2. 主要做两件事
          1. 找到该文件对应的目录项在外存中找到文件所需空间
          2. 回收文件占用的磁盘块
          3. 需要把文件再目录表中对应的目录项删除
      3. 读文件(read系统调用)
      4. 写文件(write系统调用)
      5. 打开文件(open系统调用)——读写文件之前都需要先打开文件
        1. 需要调用的参数:文件存放路径、文件名、要对文件的操作类型
        2. 主要做两件事
          1. 根据文件存放路径找到相应的目录文件,从目录中找到文件名对应的目录项,并检查该用户是否指定的操作系统
          2. 将目录项复制内存中的“打开文件表”中,并将对应表目的编号返回给用户,之后用户使用打开文件表的编号来指明要操作的文件 在这里插入图片描述
            在这里插入图片描述
      6. 关闭文件(close系统调用)——读写文件之后都需要先关闭文件
        1. 主要做两件事
          1. 将进程的打开文件表相应表项删除
          2. 回收分配给该文件的内存空间等资源
          3. 从“系统打开文件表”中将“打开计数器”减1,若count=0,则删除该表项
    3. 可以用基本操作完成更复杂的操作:
      复制文件:先创建一个空文件,再把源文件读入内存,再将内存中的数据写到新文件中
  5. 操作系统向下提供的功能(物理上)

    1. 与内存一样,外存也是由一个个存储单元组成,每个存储单元对应一个物理地址
    2. 类似于内存分为一个个内存块,外存也会被分为一个个**“块/磁盘块/物理块”**
    3. 每个磁盘块的大小都是相等的,每块一般包含 2 的整数次幂个地址
    4. 操作系统同样需要将逻辑地址转换为外存的 物理地址(物理块号,块内地址) 的形式
    5. 块内地址的位数取绝于磁盘块的大小
    6. 如果磁盘块大小为1KB,此时一个文件只有10B,但他依然需要占用1KB的磁盘块
    7. 文件数据在磁盘中(物理上)的存放形式:在这里插入图片描述
  6. 其他功能:
    1. 文件共享:使用多个用户可以共享使用一个文件
    2. 文件保护:如何保证不同用户对文件由不同的操作权限

猜你喜欢

转载自blog.csdn.net/Qmilumilu/article/details/114443744
今日推荐