计算机 文件系统
随意排列文件数据 完全么有问题, 但是按顺序排列会更好, 偶尔也可以自己发明文件格式
但是 最好用现成的标准
文本
文本文件只是一长串二进制数:
解码数据的关键是 ASCII
将其解析为 十进制,然后与 ASCII 对照, 翻译成字母:
音频
更复杂的 波形(WAVE)文件, WAV文件, 存储音频
在解码前需要知道 码率(bit rate), 以及单声道还是立体声
关于数据的数据, 叫做 元数据 , 在文件开头, 有些部分是一样的, 有些是需要根据数据变化的.
数字代表每次捕获多次的声音幅度
播放文件是, 音箱会产生相同的波形.
位图(Bitmap)
位图的后缀是 .bmp
图片有很多像素组成, 每个像素由 红绿蓝三色组成, 叫 加色三原色 , 相互混合创建其他颜色
8(bit)位 和 1字节(Byte) 是一回事
第一个像素的颜色是 rgb = (255,255,255), 混在一起是 白
文件底层是一样的: 一长串二进制
为了知道文件是什么, 文件格式至关重要。
文件存储
随着存储容量的不断增大, 存储多个文件变得非常必要。
最简单的方法就是将文件连续存储。
但是怎么知道哪里是文件的头尾呢?
需要一个特殊的文件, 记录其他文件的位置, 这里泛称"目录文件", 经常存在开头
扩展名 帮助 知道文件类型
目录文件 还存储文件的元数据, 比如 创建时间
对文件进行增删改, 需要更新 目录文件
像上面这样,所有的文件都在同一个层次, 是一个 “平面文件系统”,
问题是, 给前面的文件中间插入数据, 会覆盖到后面的数据的一部分.
解决方案: 块存储
01 把空间划分为一个个小块
而目录文件 记录 这些文件在哪些块里面
02 拆分文件, 存在多个块里面
删除数据 只是在目录文件中删除了 文件记录, 文件的数据并没有被擦除.
所以 才会有 数据恢复 !
同一个文件在多个块里面, 就会形成碎片, 这个是不可避免的, 它是由增删改导致的.
在不同的快里面 读取文件会比较慢, 所有需要 进行碎片整理.
碎片整理: 计算机把数据来回移动, 排列成正确的顺序, 是文件的存储块尽可能的连续.
随着文件量的增长, 所有文件都放在同一个目录里面变得不再适用, 需要将同类型的文件放在 同一个文件夹下面, 然后文件夹套文件夹, 这个叫 分层文件系统
这个目录文件夹在文件的最顶层,所有叫 根目录
文件移动: 修改文件目录即可, 而不是真正的移动文件数据