打个比方来说IO 是计算机里的“搬运通道”硬盘是存放数据的“仓库”而文件系统则是管理这座仓库的“管理员”。本文就按 IO、硬盘、文件系统的顺序用尽量直白的方式把它们讲清楚。一、IO输入/输出数据的进出通道IO 可以理解成计算机内部的“数据传送带”。它负责在 CPU、内存和外部设备之间来回搬运数据让数据能够顺畅地进入计算机或从计算机中送出去。二、硬盘硬盘就好比存放数据的“仓库”。目前常见的硬盘主要有两类机械硬盘HDD内部包含机械部件读写时需要等待机械部分工作速度相对较慢。固态硬盘SSD不包含机械部件随机读写速度更快。三、文件系统文件系统负责在硬盘上组织和管理数据它的核心概念是 inode也就是“索引节点”。1. 路径解析可以把 inode 想象成每个文件的“档案卡”。路径解析的终点就是 inode每个文件对应一个 inode上面记录着文件的大小、权限、时间以及数据在硬盘上的位置。文件名本身并不存储在 inode 中而是由目录负责把文件名映射到对应的 inode 编号。2. 树形结构与目录文件系统采用树形结构组织文件就像一棵倒过来的树从根目录开始不断向下分叉出子目录和文件。3. 文件路径Path路径用来描述文件在文件系统中的位置常见的有两种绝对路径从根节点出发唯一描述目标文件。例如E:\BaiduNetdiskDownload\.accelerate相对路径从当前节点开始描述文件。例如.\.accelerate。其中..表示当前目录的上一级目录。4. 文件权限操作系统会为文件设置不同的使用权限例如读、写和可执行通过权限系统来保证数据安全。