Linux文件系统(操作系统的文件管理)

这篇具有很好参考价值的文章主要介绍了Linux文件系统(操作系统的文件管理)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux

参考Linux内核源码版本------linux-2.4.3

一.内存中的文件管理(文件与进程)

  • 操作系统之下,进程是计算机系统执行计算任务的基本单位,进程访问文件执行数据读写之前,操作系统会从外设获取相应的文件信息,在内存中建立struct file结构体对象来描述和管理文件,进程借助struct file结构体提供的文件信息执行文件操作.Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
  • 进程PCBstruct task_struct与文件struct file之间的关联:Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
    Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
    Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
  • Linux系统下,打开文件的系统调用接口:
    • int open(const char *pathname, int flags, mode_t mode);
    • 接口的返回值其实是fd_array列表中的元素数组下标,称为文件描述符,通过数组下标和fd_array列表,可以找到指定文件的struct file对象
  • Linux系统下,文件重定向接口:
    • int dup2(int oldfd, int newfd);
    • dup2接口原理:先关闭fd_array[newfd]指向的文件,然后在fd_array列表中,指针fd_array[oldfd]覆盖掉指针fd_array[newfd],后续使用oldfdnewfd执行文件操作,操作的便是同一个文件。
    • 进程替换不会影响进程PCB的大部分内容(包括struct file结构体),因此文件重定向在执行进程替换之后仍然生效.

二 .Linux系统视角下的计算机外设

Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux文章来源地址https://www.toymoban.com/news/detail-744881.html

  • 操作系统之下,计算机外设与计算机内存之间的交互必须依托于进程
  • 冯诺依曼计算机除了内存和CPU外,其他的与计算机内存进行交互的IO设备Linux系统中统一被视为被进程打开的文件
  • 与其他被进程打开的文件相同,工作中的IO设备在Linux内核中被统一描述为struct file结构体对象,不同的具体IO设备的struct file对象中的成员函数指针会指向不同的接口实现:
    Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
  • 不同的IO设备对应的struct file中的函数指针指向不同的接口实现,这本质上就是C语言的多态编程,“Linux下一切皆文件”其实就是在Linux系统内核中体现的最早期的多态编程,这种编程模式在Linux内核中被频繁使用 (面向对象编程语言的始祖)

三.磁盘上的文件管理

  • Linux系统视角下,磁盘空间在呈线性排列,一个磁盘被分为多个分区,每个分区由多个块组构成,块组的结构如下:Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
  • 块组的组成部分:
    • SuperBlock(超级块):包含的是整个文件系统的全局信息,比如 inode 总个数、块总个数、每个块组的 inode 个数、每个块组的块个数等等。SuperBlock的存在意义是备份文件系统的重要全局信息,保证文件系统的安全性和稳定性
    • GroupDescriptorTable(块组描述符):包含文件系统中所有块组的属性信息,与SuperBlock的作用类似。
    • BlockBitmap(数据位图)和inodeBitmap (inode 位图): 用于标识对应的数据块或inode是空闲的,还是正在被使用中。
    • inodeTable(inode 列表):包含了块组中所有的inodeinode与磁盘文件是一一对应的关系,inode中存储磁盘文件的文件信息和文件的数据块引索
    • Data blocks(数据块):存储文件的有效数据.
      Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
      Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux
      Linux文件系统(操作系统的文件管理),青菜的Linux专栏,linux

到了这里,关于Linux文件系统(操作系统的文件管理)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Linux操作系统设置图形化界面及目录和文件管理常用命令

    Linux操作系统设置图形化界面及目录和文件管理常用命令

    目录 1.安装图形化界面  2.开机启动图形化界面 dos界面与图形化界面切换快捷键 3.Windows与Linux文件系统的差别  4.Linux文件系统常用命令  5.使用pwd命令显示工作目录路径 6.绝对路径和相对路径  7.使用ls命令列出目录和文件信息 Linux默认情况下是不会安装图形界面的,所以需要

    2024年02月05日
    浏览(44)
  • Linux操作系统--系统管理

    1.Linux中的服务和进程     计算机中,一个正在执行的程序或命令,被叫做“ 进程 ”( process ) 。    启动之后一直存在、常驻内存的进程,一般被称作“ 服务 ”( service )。    服务可以理解为系统需要持续的为用户提供某一种服务。比如网络服务。这里还有一个概念就

    2024年02月11日
    浏览(16)
  • 【汤4操作系统】深入掌握操作系统-文件管理篇

    【汤4操作系统】深入掌握操作系统-文件管理篇

    数据项记录文件 数据项分为: 基本数据项:描述对象的某些属性,例如学生的年龄,姓名学号等 组合数据项:由若干个基本数据项组合而成 记录:一组相关数据项的集合,用于描述一个对象在某方面的属性 文件:文件是指由创建者所定义的、 具有文件名的一组 相关元素的

    2024年02月09日
    浏览(19)
  • 操作系统——文件管理

    操作系统——文件管理

    操作系统入门知识合集 目录 9.1文件系统概念 思考题: 9.2文件的物理结构 思考题: 9.3文件存储和目录 文件的定义:   文件是计算机信息存取的一种重要组织形式,文件由若干 信息项 有序构成,信息项可以是一个字节,也可以是结构化的数据(多字节)。用户通过读写指针

    2024年02月04日
    浏览(9)
  • 操作系统 四、文件管理

    操作系统 四、文件管理

    无结构文件 :文件内部的数据就是一系列二进制流或字符串流组成。又称“流式文件”。如 txt 文件 有结构文件 :由一组相似的记录组成,又称“记录式文件”。每条记录又由若干个数据项组成。如数据库表文件。一般来说,每条记录有一个数据项可作为。根据各条

    2024年02月07日
    浏览(19)
  • 操作系统实验之文件管理

    操作系统实验之文件管理

    目录 一、实验目的 二、实验内容 三、实验思路 四、主要数据结构 五、实验流程图 六、实现代码 七、运行结果 通过这次实验,掌握文件系统的用户管理,掌握普通文件、目录文件管理的基本原理。 1、通过初始化操作建立一个模拟外存空间的虚拟磁盘文件,在该文件中保存

    2024年02月05日
    浏览(12)
  • 操作系统 | 实验八 文件管理

    操作系统 | 实验八 文件管理

    掌握文件的存取方法;掌握文件的逻辑结构和物理结构;掌握存储空间的分配和回收;掌握磁盘管理与调度。 用程序模拟磁盘的调度过程,并计算各磁盘调度算法包括先来先服务算法、最短寻道时间优先算法、扫描算法和循环扫描算法的平均寻道长度。 本实验是模拟操作系

    2024年02月06日
    浏览(13)
  • 操作系统-笔记-第四章-文件管理

    操作系统-笔记-第四章-文件管理

    一、第一章——操作系统的概念 二、第二章——【进程】 二、第二章——【线程】​编辑 二、第二章——【进程调度】 二、第二章——【进程同步与互斥】 二、第二章——【锁】 三、第三章——内存管理 四、第四章——文件管理 五、第五章——输入输出管理 🚀 学习心

    2024年02月11日
    浏览(8)
  • 【操作系统学习笔记】文件管理1.5

    参考书籍: 王道考研 视频地址: Bilibili 逻辑结构: 从用户角度看,由创建文件的用户自己设计的 无结构文件 有结构文件 顺序文件 顺序存储 链式存储 索引文件 索引顺序文件 物理结构: 从操作系统看,由操作系统决定 连续分配 链接分配 索引分配

    2024年03月09日
    浏览(57)
  • 7-Linux操作系统 权限管理

    7-Linux操作系统 权限管理

    一、权限介绍 在Linux中分别有 读、写、执行 权限: 读权限:   对于文件夹来说,读权限影响用户是否能够列出目录结构   对于文件来说,读权限影响用户是否可以查看文件内容 写权限:   对文件夹来说,写权限影响用户是否可以在文件夹下“创建/删除/复制到/移动

    2024年02月08日
    浏览(8)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包