1. 文件
-
本质:一整块有关系的数据
-
举例:
-
文本文件
-
音乐文件
-
照片、视频
-
2. 文件格式(File format)
-
随意排列文件数据完全没有问题,但按格式排会更好,这就是文件格式
-
可以发明自己的文件格式,程序与偶尔会这么做,但最好用现成标准
-
举例
-
最简单的格式:文本文件 .txt (本质:一长串二进制数)
-
WAV 存储音频数据
-
元数据:数据的数据。
-
比如:码率,单声道,立体声
-
存在文件开头,在实际数据前面,因此也叫 文件头(Header)
-
电脑和手机麦克风,每秒可以对声音进行上千次采样,每次采样可以用一个数字表示,声压越高,数字越大,也叫「振幅」,WAVE 文件里存的就是这些数据,每秒上千次的振幅
-
播放声音文件时,扬声器会产生相同的波形
-
-
位图 (Bitmap) .bmp
-
用途:存图片
-
计算机上,图片由很多个叫「像素」的方块组成,每个像素由红、绿、蓝三种颜色组成,叫「加色三原色」,混在一起可以创造其他颜色
-
BMP 文件开头也是元数据,有图片宽度、图片高度、颜色深度
-
-
-
本质:文件在底层全是一样的:一长串二进制
3. 文件系统
-
在很早期,计算机只做一件事,比如算火炮射程表。此时,整个存储器就像一整个文件。
-
随着计算机能和存储容量的提高,存多个文件变得非常有用。
-
最简单的方式是把文件连续存储
-
目录文件
-
为了存多个文件,需要一个特殊文件,记录其他文件的位置。这个特殊文件有很多名字,这里泛称「目录文件」,这个文件一般放在最开头,方便查找
-
目录文件中,存储其他文件的名字。格式:文件名 + "." + 扩展名
-
目录文件也存储了文件的元数据,比如:创建时间、最后修改时间、文件所有者、是否可以读/写
-
最重要:目录文件有文件起始位置和长度
-
目录文件以及对目录文件的管理,是一个非常简单的文件系统例子。
-
平面文件系统:上面这个例子叫「平面文件系统」,因为文件都在同一个层次
-
-
-
优点:使得我们不必关心文件在磁带或者磁盘的具体位置,整理和访问文件更加方便,
4. 碎片
-
增、删、改文件导致的,不可避免
-
对很多存储技术来说,碎片是坏事
-
碎片整理
- 计算机会把数据来回移动,排列成正确的顺序
5. 分层文件系统(Hierarchical File System)
-
相关文件放在同一个文件夹,然后文件夹套文件夹,这个叫做「分层文件系统」
-
最大变化:目录文件不仅要指向文件,还要指向目录,还需要额外元数据,来区分开文件和目录,这个目录文件在最顶层,因此叫根目录