一:什么是文件系统
- 一般解读为根目录的这些文件
- 文件系统是操作系统用于明确存储设备组织文件的方法
- 这里提到的方法就是文件管理系统(程序),简称文件系统,实际上是一个程序
二:文件系统(文件管理系统的方法)的种类(格式)有哪些
- FAT VFAT NTFS EXT1/2/3/4 HFS ....
- 树莓派查看文件系统的命令:df -T
- vfat :boot(bootloader, kernel)
- ext4 :根目录
- tmpfs : 内存文件系统
三:文件系统的分区
- Windows:比较随意,因为面向的是普通用户PC,目录即分区
- C盘:装系统的地方,也可以安装软件;D盘:用户随意发挥
- Linux:按照功能分区,每个分区严格存放文件,是面向开发者开发的
- 嵌入式系统可以分为四个区:
- boot loader:启动代码
- para:启动代码向内核传递参数的位置
- kernel:内核分区
- 根分区等:文件系统结构
- 嵌入式系统可以分为四个区:
- 对Windows来说,文件存放的位置就是固定好了的,在C盘目录下就是在C盘
- 但是Linux不一样,即使都存放在根目录下,它指向的分区是不一样的,有的文件指向boot,有的文件指向para。不是连续的一大块的空间都存放着一个分区的内容
四:什么是文件系统目录结构
文件系统目录结构才是根目录,根目录不是分区!和Windows不同
五:虚拟文件系统Virtual File System
- 什么是VFS:
- vfs就是对各种文件系统的一个抽象,它为各种文件系统提供了一个通用的接口
- 就是一个中间商,使得用户与内核或者硬件进行沟通,有一个统一的交流方式
- 作用:
- 简化应用程序员的开发
- 不管文件是磁盘还是设备,都是用open、read、write统一操作(就是一个中间商,使得用户与内核或者硬件进行沟通,有一个统一的交流方式,不会局限于文件类型的不同)
- 比如进行cp指令的时候,不用关心两者是什么类型能否拷贝,有了vfs直接读取写入即可,否则两种文件类型不一样里面内容肯定也是不一样的就不能进行拷贝
内核结构框图