【操作系统】4.文件系统和IO子系统

本文详细介绍了文件系统的核心概念,包括文件系统的作用、文件的用户视图与系统视图、文件描述符和i节点,强调了目录、文件别名的管理和虚拟文件系统的重要性。同时,探讨了I/O子系统的设备特性、进程I/O操作方式以及磁盘I/O,包括磁盘调度算法和磁盘缓存。通过深入解析,帮助读者理解操作系统如何高效地管理和访问数据。
摘要由CSDN通过智能技术生成

1. 文件系统

1.1 文件系统和文件

文件系统是操作系统中管理持久性数据的子系统,提供数据存储和访问功能,可以提供组织、检索、读写访问数据功能。在没有文件系统时,我们在计算机上操作的数据无法有效保存,在计算机关机再重启时数据就丢失了。大多数计算机系统都有文件系统,我们常用的谷歌也是一个文件系统,支持分布式应用的数据管理,可以支持系统监控、故障检测、故障容忍和自动恢复,提供很高的可靠性。

文件是具有符号名,由字节序列构成的数据项集合。

  • 文件是文件系统的基本数据单位
  • 文件名是文件的标识符号

文件系统的功能

  • 分配文件磁盘空间
  • 管理文件集合
  • 保证数据可靠和安全。

文件属性包括名称、类型、位置、大小、保护、创建者、创建时间、最近修改时间等。

文件头是文件系统元数据中的文件信息,里面包含文件属性和文件存储位置和顺序。

文件描述符

进程访问文件数据前必须先打开文件,内核会跟踪进程打开的所有文件,操作系统为每个进程维护一个打开文件表,文件标识符是打开文件的标识。

文件指针
最近一次读写位置,每个进程分别维护自己的打开文件指针。

文件打开计数
当前打开文件的次数,最后一个进程关闭文件时,将其从打开文件表中移除。

文件的用户视图和系统视图

用户来看,文件是持久的数据结构。

操作系统看来,文件是数据块的集合。

数据块是逻辑存储单元,而扇区是物理存储单元。

用户视图到系统视图的转换
文件系统中最小基本单位为数据块,磁盘最小访问单位为扇区。

进程读文件步骤

  • 获取字节所在的数据块(数据块是逻辑存储单位)
  • 返回数据块内对应部分

进程写文件步骤

  • 获取数据块
  • 修改数据块内容
  • 写回数据块

访问模式

访问模式就是进程如何访问文件。

  • 随机访问
    • 从中间读写
    • 不常用,但很重要
    • 虚拟内存中把内存页存储在文件
  • 索引访问
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程芝士

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值