IO、存储、硬盘、文件系统相关常识总结
一、IO(输入/输出)
定义:
IO(输入/输出)是一个广泛的概念,通常指代计算机与外部设备(如键盘、鼠标、打印机、显示器等)或其他计算机组件(如磁盘、网络等)之间的数据交换过程。IO操作可以涉及到多种类型的数据传输和设备。
分类:
- 同步IO:在操作完成前会阻塞执行线程。
- 异步IO:允许执行线程在操作完成前继续执行其他任务。
IO流:
在编程领域,IO流是实现IO操作的一种方式,它是以顺序、连续的方式处理数据的抽象概念。IO流分为输入流和输出流,用于处理文件读写、网络通信和内存操作等任务。Java中,IO流通过java.io包中的类和接口实现,具有层次化的结构,包括字节流、字符流、缓冲流和数据流等。
二、存储
定义:
存储是计算机系统中用于保存和访问数据的组件。根据数据的持久性,存储分为主存储(内存)和辅助存储(外部存储)。
主存储:
- 定义:主存储是计算机系统的临时存储区域,用于存储正在执行的程序和相关数据。
- 特点:主存储通常由随机访问存储器(RAM)组成,具有较高的数据访问速度,但断电后数据会丢失。
辅助存储:
- 定义:辅助存储是计算机系统的永久存储区域,用于长期保存数据和程序。
- 设备:包括硬盘驱动器(HDD)、固态硬盘(SSD)、光盘、闪存盘等。
- 特点:访问速度相对较慢,但断电后仍能保留数据。
三、硬盘
定义:
硬盘是一种主要用于存储数据的非易失性存储设备,它通过磁性存储技术在旋转的磁盘上读取和写入数据。硬盘通常安装在计算机内部,但也有外置硬盘供外部使用。
组成:
- 控制电路板:管理数据传输和硬盘运作,包括接口和缓存。
- 磁盘盘片:硬盘内部的圆形磁性盘片,数据被记录在这些盘片的表面。
- 磁头:悬停在盘片上方,负责读取和写入数据。
- 主轴马达:驱动盘片高速旋转。
- 执行机构:控制磁头在盘片上的移动。
类型:
- 机械硬盘(HDD):传统的磁盘驱动器,使用磁性介质存储数据,容量大、价格相对便宜,但速度较慢,易受物理损伤。
- 固态硬盘(SSD):使用闪存芯片(NAND Flash)存储数据,速度快、耐用性高、能耗低,但价格较高,容量相对较小。
- 混合硬盘(SSHD):结合HDD和SSD的优点,使用小容量SSD作为缓存来提高访问速度,仍具有大容量存储。
四、文件系统
定义:
文件系统是操作系统用于在磁盘上存储、检索和管理文件的一种数据结构。文件系统将硬盘划分为多个逻辑区域(分区),并在每个分区上构建文件系统,以组织和管理文件。
文件类型:
- 文本文件:包含人类可读的文本数据,如文本文档、源代码文件等。
- 二进制文件:包含机器可读的二进制数据,如图片、音频、视频、可执行程序等。
文件路径:
- 绝对路径:从根目录开始,到文件所在位置的完整路径。
- 相对路径:从当前目录(或指定基准目录)开始,到文件所在位置的路径。
文件系统操作:
- 增加(Create):创建新文件或目录。
- 读取(Retrieve):读取文件内容。
- 更新(Update):修改文件内容。
- 删除(Delete):删除文件或目录。
常见文件系统:
包括FAT、NTFS、HFS+、EXT等,不同的操作系统可能使用不同的文件系统。
通过以上总结,可以全面了解IO、存储、硬盘和文件系统的基本概念、组成、类型以及它们之间的关系和操作。