文件缓冲区(内核级,OS内部的)存在的意义:系统调用将数据写入缓冲区后函数即可返回,是从内存到内存的,提高了程序的效率。之后将缓冲区数据刷新到硬盘则是操作系统的事了。无论读写,OS都会把数据加载到内存。
计算机中大部分文件是未被打开的,都在磁盘中保存。没有被进程打开的文件要通过文件系统进行管理(快速定位文件)。文件系统就是对打开和没打开的文件进行管理。
文件=属性+内容
磁盘CHS寻址法,先找磁头,再找磁道,最后定位扇区(大小一般为512字节,或者4KB,读取写入的基本单元)
将磁盘盘片想象为线性空间,将线性空间划分给几个盘面,再对每个盘面进行磁道的划分,再将每个磁道划分为一个个扇区。这样可以把磁盘抽象为由无数个扇区构成的数组,对磁盘的管理就变成了对数组的管理。
OS可以按照扇区为基本单位进行存取,但为了减少IO次数,操作系统也可以基于文件系统按照文件块为基本单位进行存取,8个扇区为一个文件块(4KB,称为LBA逻辑块地址),这样转化后LBA地址即为下标,会进行LBA->CHS地址的转换。从此文件系统不再关心磁头、盘面、磁道,只关心4KB的block[n]数组,对存储设备的管理,在OS层面就变成了对文件块数组的增删查改。