系统

文件系统(file system)

文件系统(file system)是操作系统把磁盘上的一切,整理成一个个有名字、归在文件夹里的文件,并能在日后重新找到它们的方式。一块光秃秃的磁盘,其实只是一片浩瀚的、编了号的数据块汪洋;文件系统就是架在上面的那位图书管理员,守着一份目录,写明「你叫它 beach.jpg 的那张照片,住在这几个数据块里,在 Pictures 文件夹中」。没有它,你的文件虽以原始比特的形式存在,却没有任何东西能说清一个文件到哪儿结束、下一个从哪儿开始。

你靠路径(path)在里面穿行——一串文件夹名,精确地钉住一个文件待在哪儿,比如 /Users/jo/notes/todo.txt 或者 C:\Users\Jo\todo.txt。从左往右读:从顶端出发,一层层走进每个文件夹,最后那个名字就是文件本身。这串字符是个地址,顺着它走,总能落到这棵树里某一个精确的位置。

文件夹层层嵌套成一棵树,从唯一的顶端——叫做根(root)——向下分叉。正是这种形状,让同一个 notes.txt 能安然地待在两个不同的文件夹里:它们的完整路径不同,系统就绝不会把它们搞混。文件系统还记着每个文件的大小、时间戳、以及谁有权打开它——正是这些记账的功夫,把一堆原始存储变成了你真能浏览翻找的东西。

$ ls /Users/jo/notes
todo.txt   ideas.md
$ pwd
/Users/jo/notes

ls 列出一个文件夹里有什么;pwd 打印出你此刻在这棵树里所站的路径。

「文件系统」也用来指那套格式本身——Windows 上的 NTFS、macOS 上的 APFS、Linux 上的 ext4——它们是关于这些数据块如何排布、如何追踪的、各不相同的规则。

又称
filesystemdirectory treefs