文件系统的基本认知笔记

news2024/11/18 5:45:22

1.什么是文件系统

  • 常规认知:Linux下的根目录
  • 文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法,即在存储设备上组织文件的方法,这种所谓的方法就是文件管理系统(程序),简称文件系统

2.文件系统(管理文件的方法)的分类

ext2 : 早期linux中常用的文件系统
ext3 : ext2的升级版,带日志功能
ext4 : 基于磁盘(存放根目录分区)
NFS : 网络文件系统,由SUN发明,主要用于远程文件共享
NTFS : Windows NT/XP 操作系统采用的文件系统

XFS : 由SGI开发的先进的日志文件系统,支持超大容量文件
ISO9660 : 大部分光盘所采用的文件系统
SMBFS : Samba 的服务的共享文件系统
tmpfs : 临时文件系统(内存文件系统)

  • windows下:

在这里插入图片描述

  • Linxu下:
    在这里插入图片描述

vfat : 存放 boot(bootloader, kernel)
ext4 : 根目录
tmpfs : 内存文件系统

3.什么是分区

  • windows: 随意(面向普通用户PC),目录即分区
    C盘(装系统的位置)也可以随意在C盘存放文件
    D盘(用户随意发挥)
    在这里插入图片描述
  • Linux:按照功能来分区,每个分区严格存放文件(开发者),目录不是分区,和windows不同
    嵌入式系统可以分为4个区,分别是
    bootloader: 启动代码
    para : 启动代码向内核传递参数的位置
    kernel : 内核分区
    根分区等 : 文件系统结构
    在这里插入图片描述

4.什么是文件系统目录结构
参考文章
1)

  • windows:以多根的方式组织文件C:\ D:\
  • Linux:以单根的方式组织文件 /
  • 在 Linux 系统中,所有内容都是以文件的形式保存和管理的,即「一切皆文件」。普通文件是文件,目录(Windows 下称为文件夹)是文件,硬件设备(键盘、监视器、硬盘、打印机)是文件,就连套接字(socket)、网络通信等资源也都是文件。
  • linux只有一个根目录,而且文件和目录被组织成一个单根倒置树结构, 此结构最上层是根目录,用“/”表示
  • 根文件系统(rootfs):root filesystem 标准Linux文件系统(如:ext4)
  • 如下图:
  • 在这里插入图片描述
    在这里插入图片描述
    2)目录作用说明
  • / 整个文件系统的根目录,目录的源头
  • /bin 存放Linux的二进制文件、命令(普通用户和超级用户都可以执行)
  • /sbin 存放Linux的二进制文件(只有超级管理员可以执行的命令)
  • /boot 存放系统启动的引导文件
  • /etc 存放系统所有的配置文件
  • /home 普通用户的家目录
  • /root root用户的家目录
  • /run 存放系统内部正在运行程序的相关文件
  • /dev 存放设备文件
  • /tmp 用于存放各种临时文件,是公用的临时文件存储点
  • /usr 存放第三方软件
  • /var 存放系统运行时需要改变数据的文件(系统日志等)
  • /lib 存放库文件的目录(32位)
  • /lib64 存放库文件的目录(64位)
  • /opt 存放第三方安装的软件
  • /mnt 临时挂载的文件目录。比如cdrom,u盘等,直接插入光驱无法使用,要先挂载后使用
  • /srv 站点的具体数据,由系统提供
  • /media 存放多媒体的文件
  • /proc 虚拟文件系统,以目录的形式,将进程的pid号存储下来(系统信息都存放在这个目录下)
  • /sys 存放和系统有关的文件目录

后面学到到相关的再添加

5.什么是虚拟文件系统Virtual File System

  • Virtual File System(虚拟文件系统):vfs就是对各种文件系统的一个抽象,它为各种文件系统提供了一个通用的接口
    在这里插入图片描述

  • 虚拟文件系统的作用
    简化应用程序的开发,不管是什么文件类型,不管文件是磁盘还是设备,都只用open read write统一操作

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

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

相关文章

Linux【网络编程】之深入理解TCP协议

Linux【网络编程】之深入理解TCP协议 TCP协议TCP协议段格式4位首部长度---TCP报头长度信息 TCP可靠性(确认应答)&& 提高传输效率确认应答(ACK)机制32位序号与32为确认序号 16位窗口大小---自己接收缓冲区剩余空间的大小16位紧急指针---紧急数据处…

Unity 使用SharpZipLib解压时报错

报错信息: NotSupportedException: Encoding 936 data could not be found. Make sure you have correct international System.Text.Encoding.GetEncoding (System.Int32 codepage) ICSharpCode.SharpZipLib.Zip.ZipConstants.ConvertToString。 出现问题分析&…

三种简单易用的制作符合要求的证件照片的方法

在生活和学习中,我们经常需要上传一些证件照片。但是在准备上传之前,我们可能会发现底色不正确,这会导致无法通过审核。重新拍照既费时间又浪费金钱,这让人感到非常困扰。然而,我们可以借助一些方法和工具来轻松更改证…

Java作业1

1.编写程序数一下 1到 100 的所有整数中出现多少个数字9 十位 n/10 个位 n%10 public static void main(String[] args) {int count 0;for (int i 1; i < 100; i) {if(i / 10 9){count;}if(i%109){count;}}System.out.println(count);} 2.给定一个数字&#xff0c;判…

过滤器,监听器与拦截器的区别

过滤器&#xff0c;监听器与拦截器的区别 ​ 过滤器和监听器不是Spring MVC中的组件&#xff0c;而是Servlet的组件&#xff0c;由Servlet容器来管理。拦截器是Spring MVC中的组件&#xff0c;由Spring容器来管理 ​ Servlet过滤器与Spring MVC 拦截器在Web应用中所处的层次如…

身为测试人“我“不再背锅,完整一套软件测试流程汇总...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 关于测试流程&…

FPGA优质开源模块 - SRIO

本文介绍一个FPGA常用模块&#xff1a;SRIO&#xff08;Serial RapidIO&#xff09;。SRIO协议是一种高速串行通信协议&#xff0c;在我参与的项目中主要是用于FPGA和DSP之间的高速通信。有关SRIO协议的详细介绍网上有很多&#xff0c;本文主要简单介绍一下SRIO IP核的使用和本…

【论文精读2】用于多文档摘要生成的层次Transformer方法

前言 论文分享 来自2019ACL的多文档摘要生成方法论文&#xff0c;作者来自英国爱丁堡大学&#xff0c;引用数310 Hierarchical Transformers for Multi-Document Summarization 代码地址hiersumm 多文档摘要抽取的难点在于没有合适的数据集&#xff0c;同时过长的文档文本也导…

剑指 Offer 55 - II. ! 平衡二叉树

剑指 Offer 55 - II. 平衡二叉树 输入一棵二叉树的根节点&#xff0c;判断该树是不是平衡二叉树。如果某二叉树中任意节点的左右子树的深度相差不超过1&#xff0c;那么它就是一棵平衡二叉树。 来自力扣K神的解法1&#xff0c;真的是太巧妙了&#xff01; 方法recur检查以nod…

什么是自动化测试框架?自动化测试框架有哪些?

一、自动化测试 1、为什么要做自动化测试&#xff1f; 自动化测试就是把以人为驱动的测试行为转化为机器执行的一种过程&#xff0c;即模拟手工测试的步骤&#xff0c;通过执行测试脚本自动地测试软件自动化测试就是程序&#xff08;脚本&#xff09;测试程序&#xff0c;使用…

LeNet卷积神经网络-笔记

LeNet卷积神经网络-笔记 手写分析LeNet网三卷积运算和两池化加两全连接层计算分析 基于paddle飞桨框架构建测试代码 #输出结果为&#xff1a; #[validation] accuracy/loss: 0.9530/0.1516 #这里准确率为95.3% #通过运行结果可以看出&#xff0c;LeNet在手写数字识别MNIST验证…

如何开启一个java微服务工程

安装idea IDEA常用配置和插件&#xff08;包括导入导出&#xff09; https://blog.csdn.net/qq_38586496/article/details/109382560安装配置maven 导入source创建项目 修改项目编码utf-8 File->Settings->Editor->File Encodings 修改项目的jdk maven import引入…

【C++】类和对象——拷贝构造函数、运算符重载、日期类实现、const成员、取地址操作符重载

目录 拷贝构造函数运算符重载日期类实现const成员取地址及const取地址操作符重载 拷贝构造函数 拷贝构造函数&#xff1a;只有单个形参&#xff0c;该形参是对本类类型对象的引用(一般常用const修饰)&#xff0c;在用已存在的类类型对象创建新对象时由编译器自动调用。 拷贝构…

SOLIDWORKS 钣金零件怎么画?

一、SOLIDWORKS 钣金功能介绍 SOLIDWORKS 是一款广泛应用于机械设计领域的 CAD 软件&#xff0c;其钣金功能可以帮助用户快速创建钣金件的 3D 模型。钣金折弯是一种常见的加工方式&#xff0c;可以将平面材料通过弯曲变形成为所需形状。 二、如何使用 SOLIDWORKS 钣金功能 步骤…

shell清理redis模糊匹配的多个key

#!/bin/bash# 定义Redis服务器地址和端口 REDIS_HOST"localhost" REDIS_PORT6380# 获取匹配键的数量 function get_matching_keys() {local key_pattern"$1"redis-cli -h $REDIS_HOST -p $REDIS_PORT -n 0 KEYS "$key_pattern" }# 删除匹配的键 …

一文带你详细了解Open API设计规范

写在前面&#xff1a; OpenAPI 规范&#xff08;OAS&#xff09;定义了一个标准的、语言无关的 RESTful API 接口规范&#xff0c;它可以同时允许开发人员和操作系统查看并理解某个服务的功能&#xff0c;而无需访问源代码&#xff0c;文档或网络流量检查&#xff08;既方便人…

Atlas200DK A2联网实战

文章目录 1.Atlas原始网络信息2. 开发板联网2.1 使用Type-c 连接开发板2.2 修改本地网络适配器2.3 修改开发板网络信息2.4 测试外网连接 1.Atlas原始网络信息 Type-C 网口 ETH0 网口 ETH1 网口 2. 开发板联网 2.1 使用Type-c 连接开发板 使用xshell 等ssh终端登录开发板&…

【C++从0到王者】第十五站:list源码分析及手把手教你写一个list

文章目录 一、list源码分析1.分析构造函数2.分析尾插等 二、手把手教你写一个list1.结点声明2.list类的成员变量3.list类的默认构造函数4.list类的尾插5.结点的默认构造函数6.list类的迭代器7.设计const迭代器8.list的insert、erase等接口9.size10.list的clear11.list的析构函数…

【java安全】CommonsBeanUtils1

文章目录 【java安全】CommonsBeanUtils1前言Apache Commons BeanutilsBeanComparator如何调用BeanComparator#compare()方法&#xff1f;构造POC完整POC 调用链 【java安全】CommonsBeanUtils1 前言 在之前我们学习了java.util.PriorityQueue&#xff0c;它是java中的一个优…

2.2 身份鉴别与访问控制

数据参考&#xff1a;CISP官方 目录 身份鉴别基础基于实体所知的鉴别基于实体所有的鉴别基于实体特征的鉴别访问控制基础访问控制模型 一、身份鉴别基础 1、身份鉴别的概念 标识 实体身份的一种计算机表达每个实体与计算机内部的一个身份表达绑定信息系统在执行操作时&a…