【操作系统】文件系统(一)

  1. 为什么要引入文件系统?
    在大容量magnetic disk出现之前,数据和程序都是存储在磁带上,那时还没有文件的概念。当大容量的磁盘出现了以后,需要将数据或者程序存储在磁盘上。如果没有文件,我们只能自己管理数据在磁盘上的位置。例如一个程序或者数据被分成若干个子块,每个子块都分布在磁盘的不同的位置,读取一个数据时,要手动地逐个读取每个子块才能获取完整的数据。这样就显得非常麻烦,尤其是当文件被增删改查的时候,管理磁盘空间就变得非常繁琐。
    有了文件这个虚拟化概念以后,这个文件就是逻辑的存储单元,是一组相关的数据的集合。这样有了文件以后,用户可以直接通过文件来访问数据,OS封装了所有对磁盘的操作。
  2. 文件系统
    文件系统是对文件的管理系统。文件系统应该具有以下功能:
  • 按照文件名查找文件
  • 通过文件的逻辑地址找到磁盘上的物理地址
  • 文件的读写
  • 安全访问
  • 文件占用的磁盘空间的分配与回收

文件系统与内存管理系统比较

  • 都是管理空间,分为连续存储和不连续存储
  • 将一个进程的空间分页存储在memory,用一个页表保存逻辑页到物理页的映射关系
  • 文件系统将一个文件分块存放于外存,文件控制块包含文件定位信息。

文件的结构

  • 流式文件: 文件被OS视为字节流,各个字节的意义有使用文件的程序解释
  • 记录式文件:由OS解释记录

文件的(逻辑)访问方式

  • 顺序访问: 程序依次访问文件的内容
  • 直接/随机访问: 程序访问文件,依据每个文件的逻辑位置,进行访问

文件的物理存储

  • 磁带: 顺序存储
  • 磁盘: 直接/随机存储。文件可以连续、链表式或者随机存放(需要通过类似页表的索引结构访问)。将磁盘等分成物理块(block),利于文件不连续存放(类似将内存等分成页),提高了磁盘空间的利用率。
    - 顺序结构
    - 链式结构:易于扩展,不利于随机访问
    - 索引结构:文件不连续存放,用一个索引表定位文件块的物理地址(类似于内存的页表)。
    - 多级索引:解决索引表过大的问题

文件控制块(FCB)(类似PCB?)
描述文件的数据结构,包含:

  • 文件名
  • 创建者
  • 文件物理位置信息
  • 权限

文件目录(directory)
利用文件名找到对应文件控制块(难道用的是类似java里的TreeMap? 排序Map?)

  • 一级目录
  • 二级目录
  • 树形目录
  • 无环图目录(可能一个文件属于不同的目录)

空闲磁盘空间管理

  • bitmap: 0-空闲,1-占用
  • 空闲块成组链接
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: educoder操作系统文件管理是指操作系统文件的创建、读取、写入、删除等操作的管理。文件是计算机中存储数据的一种方式,操作系统需要对文件进行管理,以便用户能够方便地访问和使用文件文件管理涉及到文件的组织、存储、保护和共享等方面,是操作系统中重要的功能之一。在educoder操作系统中,学习者可以学习到文件系统的基本概念、文件的组织方式、文件的存储管理、文件的保护和共享等知识,从而掌握操作系统文件管理的基本原理和方法。 ### 回答2: educoder操作系统文件管理一,主要是讲授操作系统文件管理的基础知识和原理。文件管理是操作系统中最基本的功能之一,主要涉及文件的创建、修改、删除和查询等操作。在操作系统中,每个文件都有自己的名称、大小、属性和存储位置等信息,在文件管理中,需要通过文件系统来管理这些信息。 文件系统是一个重要的概念,是操作系统中管理文件的底层实现。在文件系统中,每个文件都有相应的存储位置,可以通过文件路径和文件名来访问文件文件系统的组织方式有很多种,常见的有单级目录、多级目录和索引节点等方式。 文件的创建、修改和删除是文件管理中最基础的操作。在创建文件时,需要给文件指定名称、类型、大小和存储位置等信息。而对于修改文件和删除文件,则需要找到相应的文件,进行相应的修改和删除操作。在文件管理中,可以通过命令行或文件管理器等方式来进行操作。 文件的查询是文件管理中常见的操作之一,可以通过文件名、文件类型、文件大小等属性来查询文件。查询操作可以提高文件的查找效率和准确率,避免了手动查找文件的麻烦。在操作系统中,有很多工具和命令可以用来查询文件,如ls、find、grep等命令。 在文件管理中,还需要关注文件安全和权限管理等问题。文件安全涉及到文件的保密性、完整性和可用性等方面,需要通过访问控制、加密等方式来实现。而文件的权限管理则涉及到文件的所有者、读写权限等方面,可以通过chmod、chown等命令来进行设置和修改。 总体而言,educoder操作系统文件管理一主要介绍了文件管理的基本原理和常见操作,是操作系统学习中重要的一部分。在实际的操作系统开发和管理中,需要灵活运用文件管理的各种功能,满足不同用户和应用的需求。 ### 回答3: educoder操作系统文件管理一是一门关于操作系统文件管理的课程。在这门课程中,主要介绍了文件文件系统的基本概念,文件的分类和操作以及文件存储管理等相关的知识点。 首先,该课程简单介绍了文件的概念,包括了文件的定义、属性和存储方式等基础知识。然后,课程对文件的分类进行了详细的讲解,包括文本文件、二进制文件和特殊文件等。其次,该课程还介绍了文件的操作,涉及到文件的打开、读取、写入、关闭等基本操作。此外,还讲解了文件指针的概念和使用方法。 接着,该课程开始引入文件系统的概念,简单介绍了文件系统的作用和一些常见的文件系统类型。此外,还介绍了目录和路径的概念和使用方法。然后,课程继续介绍了文件存储管理的相关知识,包括文件的物理存储结构和磁盘空间管理等。 最后,该课程还对一些常见的文件管理问题进行了详细的讲解,如文件的权限和保护、文件的备份与恢复等等。这些问题对于系统管理员和文件管理人员都非常重要,可以帮助他们更加高效地管理文件。 总的来说,educoder操作系统文件管理一是一门非常实用的课程,包含了操作系统文件管理的基本知识和一些实践方法,可以帮助学生深入了解文件管理的相关知识,为日后的操作系统学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值