张森ZS

write code everyday

导航

计算机速成课 第二十集 文件系统

1. 文件

  • 本质:一整块有关系的数据
  • 举例:
    • 文本文件
    • 音乐文件
    • 照片、视频

2. 文件格式(File format)

  • 随意排列文件数据完全没有问题,但按格式排会更好,这就是文件格式
  • 可以发明自己的文件格式,程序与偶尔会这么做,但最好用现成标准
  • 举例
    • 最简单的格式:文本文件 .txt (本质:一长串二进制数)
    • WAV 存储音频数据
      • 元数据:数据的数据。
      • 比如:码率,单声道,立体声
      • 存在文件开头,在实际数据前面,因此也叫 文件头(Header)
      • 电脑和手机麦克风,每秒可以对声音进行上千次采样,每次采样可以用一个数字表示,声压越高,数字越大,也叫「振幅」,WAVE 文件里存的就是这些数据,每秒上千次的振幅
      • 播放声音文件时,扬声器会产生相同的波形
    • 位图 (Bitmap) .bmp
      • 用途:存图片
      • 计算机上,图片由很多个叫「像素」的方块组成,每个像素由红、绿、蓝三种颜色组成,叫「加色三原色」,混在一起可以创造其他颜色
      • BMP 文件开头也是元数据,有图片宽度、图片高度、颜色深度
  • 本质:文件在底层全是一样的:一长串二进制

3. 文件系统

  • 在很早期,计算机只做一件事,比如算火炮射程表。此时,整个存储器就像一整个文件。
  • 随着计算机能和存储容量的提高,存多个文件变得非常有用。
    • 最简单的方式是把文件连续存储
    • 目录文件
      • 为了存多个文件,需要一个特殊文件,记录其他文件的位置。这个特殊文件有很多名字,这里泛称「目录文件」,这个文件一般放在最开头,方便查找
      • 目录文件中,存储其他文件的名字。格式:文件名 + "." + 扩展名
      • 目录文件也存储了文件的元数据,比如:创建时间、最后修改时间、文件所有者、是否可以读/写
      • 最重要:目录文件有文件起始位置和长度
      • 目录文件以及对目录文件的管理,是一个非常简单的文件系统例子。
      • 平面文件系统:上面这个例子叫「平面文件系统」,因为文件都在同一个层次
  • 优点:使得我们不必关心文件在磁带或者磁盘的具体位置,整理和访问文件更加方便,

4. 碎片

  • 增、删、改文件导致的,不可避免
  • 对很多存储技术来说,碎片是坏事
  • 碎片整理
    • 计算机会把数据来回移动,排列成正确的顺序

5. 分层文件系统(Hierarchical File System)

  • 相关文件放在同一个文件夹,然后文件夹套文件夹,这个叫做「分层文件系统」
  • 最大变化:目录文件不仅要指向文件,还要指向目录,还需要额外元数据,来区分开文件和目录,这个目录文件在最顶层,因此叫根目录

posted on 2022-05-01 14:02  张森ZS  阅读(59)  评论(0编辑  收藏  举报