7.1.6 Linux 文件系统的运行

news2024/12/27 13:22:13

所有的数据都得要载入到内存后CPU才能够对该数据进行处理。为了解决耗时等待磁盘的写入/读取上的问题,Linux使用的方式是通过一个称为非同步处理(asynchronously) 的方式。所谓的非同步处理是这样的:

当系统载入一个文件到内存后,如果该文件没有被更动过,则在内存区段的文件数据会被设置为干净(clean)的。 但如果内存中的文件数据被更改过了(例如你用 nano 去编辑过这个文件),此时该内存中的数据会被设置为脏的 (Dirty)。此时所有的动作都还在内存中执行,并没有写入到磁盘中! 系统会不定时的将内存中设置为“Dirty”的数据写回磁盘,以保持磁盘与内存数据的一致性。

内存的速度要比磁盘快的多,因此如果能够将常用的文件放置到内存当中,就会增加系统性能。

系统会将常用的文件数据放置到内存的缓冲区,以加速文件系统的读/写;

承上,因此 Linux 的实体内存最后都会被用光!这是正常的情况!可加速系统性能;

你可以手动使用 sync 来强迫内存中设置为 Dirty 的文件回写到磁盘中;

若正常关机时,关机指令会主动调用 sync 来将内存的数据回写入磁盘内;

但若不正常关机(如跳电、死机或其他不明原因),由于数据尚未回写到磁盘内, 因此重新开机后可能会花很多时间在进行磁盘检验,甚至可能导致文件系统的损毁(非磁盘损毁)。

7.1.7 挂载点的意义(mount point)

每个 filesystem 都有独立的 inode / block / superblock 等信息,这个文件系统要能够链接到目录树才能被我们使用。 将文件系统与目录树结合的动作我们称为“挂载”。挂载点一定是目录,该目录为进入该文件系统的入口。因此并不是你有任何文件系统都能使用,必须要“挂载”到目录树的某个目录后,才能够使用该文件系统的。

         

XFS filesystem 最顶层的目录之 inode 一般为 128 号,因此可以发现 /,/boot, /home 为三个不同的 filesystem。使用文件系统的观点看,同一个filesystem的某个inode只会对应一个文件内容而已(因为一个文件占用一个inode),因此可以通过判断inode号码来确认不同文件名是否为相同的文件,所以可以这样看:

               

上面的信息中由于挂载点均为 / ,因此三个文件 (/, /., /..) 均在同一个 filesystem 内,而这三个文件的 inode 号码均为 64 号,因此这三个文件名都指向同一个 inode 号码,当然这三个文件的内容也就完全一模一样了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/714591.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SAP ABAP结构复用的两种数据结构

一、定义结构中嵌套一层结构: 断点内表看结构是这样的: 二、定义结构中字段都放平层,注意那个include关键字的颜色,要变蓝色: 断点看内表结构,对了,就是我们想要的一层:

Oracle 查询下载补丁集

想必许多朋友在打开oracle支持网站后有些懵不知道如何查询下载数据库的补丁。 登入 登入Oracle support网站: https://support.oracle.com/portal/ 查询文档编号:2118136.2 选择需要的补丁编号: 选择对应的版本: 提前阅读…

java项目之疫情期间医院门诊管理系统ssm源码+文档

风定落花生,歌声逐流水,大家好我是风歌,混迹在java圈的辛苦码农。今天要和大家聊的是一款基于ssm的疫情期间医院门诊管理系统。项目源码以及部署相关请联系风歌,文末附上联系信息 。 💕💕作者:风…

java fastdfs实现文件(图片)的上传下载

1、首先引入依赖、目录结构&#xff1a; <!--fastdfs--> <dependency><groupId>com.github.tobato</groupId><artifactId>fastdfs-client</artifactId><version>1.26.5</version> </dependency>2、在application.yml中…

redis与分布式

主从复制 概念 主从复制&#xff0c;是指将一台Redis服务器的数据&#xff0c;复制到其他的Redis服务器。前者称为主节点(Master)&#xff0c;后者称为从节点(Slave)&#xff0c;数据的复制是单向的&#xff0c;只能由主节点到从节点。Master以写为主&#xff0c;Slave 以读为…

kong-dashboard安装

简介 kong-dashboard提供了UI界面操作和查看kong&#xff0c;可以进行api、consumers、plugins操作 官网&#xff1a;https://hub.docker.com/r/pgbi/kong-dashboard/ 安装 联网安装 [slviewDEMO:~]$ docker search kong-dashboard INDEX NAME …

终端安全管理系统(软件)能干什么?

随着企业网络化的进程&#xff0c;大多数企业已经开始通过终端安全管理系统来改善企业的网络环境&#xff0c;管控员工的上网行为&#xff0c;但同时还有很多企业不了解其具体的用处&#xff0c;那终端安全管理系统究竟可以干什么呢&#xff1f; 一、加密重要文档&#xff0c;保…

概率DP求期望

[NOIP2016 提高组] 换教室 链接&#xff1a;https://www.luogu.com.cn/problem/P1850 题目描述 对于刚上大学的牛牛来说&#xff0c;他面临的第一个问题是如何根据实际情况申请合适的课程。 在可以选择的课程中&#xff0c;有 2 n 2n 2n 节课程安排在 n n n 个时间段上。…

D352周赛复盘:重点是双指针滑动窗口+质数判断

文章目录 6909.最长奇偶子数组&#xff08;双指针&#xff09;思路完整版 6916.和等于目标的质数对&#xff08;质数判断&#xff0c;重要&#xff09;思路质数判断&#xff1a;埃拉托斯特尼筛法获取所有小于等于n的质数质数定义 完整版为什么只遍历到n/2&#xff1f; 时间复杂…

python 深度学习 解决遇到的报错问题2

目录 一、解决报错UnicodeDecodeError: utf-8 codec cant decode byte 0xe3 in position 15: invalid continuation byte 二、解决ERROR: Could not build wheels for pycocotools, which is required to install pyproject.toml-based pro 三、解决OSError: [WinError 1314…

flutter 中实现动态表单 form generator

flutter 中实现动态表单 form generator 前言 最近有人问我 flutter 前端如何处理动态表单。 这种是企业开发中的常见问题&#xff0c;特别是问卷和工作流审核表单。 今天我们就来实现下这个功能&#xff0c;主要是处理这个业务功能的思路。 原文 https://ducafecat.com/blog/…

通用分页(下)

一.理解分页思想 1.分页的实质 1.1&#xff08;自我概述&#xff09; 用最简单的话来说&#xff0c;就是在一个界面展示不了那么多数据时&#xff0c;通过一点手段将数据一部分一部分的加载出来&#xff0c;从而减少服务器的压力。并且使能够让服务器利用率提高&#xff01; …

把yum源配置为ftp服务

配置yum源为ftp服务 一、在node1部署ftp服务器1.1 挂载镜像1.2 配置ftp的根目录 二、配置node2的yum源为node1的ftp服务器2.1 移除node2中默认的yum源文件2.2 创建新的yum源文件2.3 更新yum软件列表 环境介绍&#xff1a;有node1和node2两台Centos7虚拟机 环境准备&#xff1a;…

C++ 图的遍历

1. 图的遍历 给定一个图 G 和其中任意一个顶点 v0 &#xff0c;从 v0 出发&#xff0c;沿着图中各边访问图中的所有顶点&#xff0c;且每个顶 点仅被遍历一次 。 " 遍历 " 即对结点进行某种操作的意思 。 请思考树以前是怎么遍历的&#xff0c;此处可以直接用来遍…

手搓GPT系列之 - 通过理解LSTM的反向传播过程,理解LSTM解决梯度消失的原理 - 逐条解释LSTM创始论文全部推导公式,配超多图帮助理解(下篇)

本文承接上篇上篇在此和中篇中篇在此&#xff0c;继续就Sepp Hochreiter 1997年的开山大作 Long Short-term Memory 中APPENDIX A.1和A.2所载的数学推导过程进行详细解读。希望可以帮助大家理解了这个推导过程&#xff0c;进而能顺利理解为什么那几个门的设置可以解决RNN里的梯…

Spring中@NotEmpty、@NotBlank、@NotNull 的区别和使用

1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.0.5.RELEASE</version> </dependency>NotEmpty、NotBlank、NotNull 包的位置&#xff1…

i春秋,春秋云镜系列

目录 先提神CVE-2022-32991靶标介绍&#xff1a;复现&#xff1a; CVE-2022-30887靶标介绍&#xff1a;复现 先提神 CVE-2022-32991 靶标介绍&#xff1a; 该CMS的welcome.php中存在SQL注入攻击。 复现&#xff1a; 打开靶场地址&#xff0c;三个随便选一个进去&#xff0c…

Gof23设计模式之适配器模式

1.定义 将一个类的接口转换成客户希望的另外一个接口&#xff0c;使得原本由于接口不兼容而不能一起工作的那些类能一起工作。 适配器模式分为类适配器模式和对象适配器模式&#xff0c;前者类之间的耦合度比后者高&#xff0c;且要求程序员了解现有组件库中的相关组件的内部结…

国产划片机开创了半导体芯片切割的新工艺时代

国产划片机确实开创了半导体芯片切割的新工艺时代。划片机是一种用于切割和划分半导体芯片的设备&#xff0c;它是半导体制造过程中非常重要的一环。在过去&#xff0c;划片机技术一直被国外厂商所垄断&#xff0c;国内半导体制造企业不得不依赖进口设备。 然而&#xff0c;随着…

QT学习笔记6--信号之间的连接

连接 仍然使用connect函数&#xff0c;但是和函数重载类似&#xff0c;需要用到函数指针。如下所示 void (teacher:: *teachersignals)(void) &teacher::hungery;void (student:: *studentslots)(void) &student::treat;connect(zt,teachersignals,st,studentslots)…