在软盘和硬盘等旋转磁盘介质的背景下,这些术语是否都指相同的底层概念,仅在于哪个平台使用哪个术语而有所不同?
互联网上有许多资料交替使用这两个术语,或声称它们是同义词;但很难找到一个资料明确说明前三个术语是否是同义词,或者是否存在细微的差别。找到资料也不难,例如这个 YouTube 视频,似乎对比了两个术语,或者至少赋予了它们不一样的定义。
它们似乎都是指一个抽象/逻辑的存储单元,它由多个不一定连续的物理部门。
显然,部分或全部术语在其他语境中也有其他含义。这个问题试图关注它们如何用于磁盘存储。“颗粒”是 TRS-80 型号、克隆、兼容和操作系统中使用的术语。(一个 TRS-80 操作系统,新操作系统/80实际上有“块状”和“颗粒”。
另外,“分配单元”是否是跨平台普遍理解的最佳总称?
答案1
正如您在提到 TRS-80 时所暗示的那样,操作系统/文件系统之间的术语有所不同。Linuxext4文件系统“以‘块’为单位分配存储空间。一个块是 1KiB 到 64KiB 之间的一组扇区,扇区数量必须是 2 的整数幂。块又被分组为更大的单元,称为块组。”
另据StackExchange 线程,然而,“Unix 工具经常使用‘块’这个词来表示任意大小的单位……与任何特定的文件系统或磁盘硬件无关。”
Windows FAT32 和 NTFS 文件系统使用簇,也称为分配单位。
旧版 Apple II DOS 3.3 文件系统使用 256 字节的物理扇区,而 Apple ProDOS 和 GS/OS 操作系统使用 512 字节的块,每个块包含 2 个扇区。
因此,我认为术语因文件系统的不同而有很大差异;一些文件系统规范可能会为“块”、“簇”或“分配单元”等术语指定精确的含义。在 Windows 中,“簇”和“分配单元”可能含义完全相同事物,而在其他文件系统中,操作系统可直接寻址的最小单位可能被称为“块”,而“分配单元”可能是一个更通用的术语。一些实用程序及其文档使用术语“块”来表示与文件系统“块”不同的东西,这增加了更多的歧义。
简而言之,Windows 中的基本分配单元可能被称为“簇”或“分配单元”,而在类 Unix 系统中,基本分配单元是“块”,但“块”也可能指任意“数据块”,其大小为 512 字节、1024 字节或其倍数,可能与物理扇区有关,也可能无关。抱歉,这个答案不是结论性的。
答案2
当谈到软盘和硬盘等旋转磁盘介质时......
“旋转磁盘介质”是一个过于描述性的术语。固态硬盘和其他大容量存储设备模拟 HDD,因此其中一些术语也适用于这些设备。
分配单元
这实际上是一个文件系统(随机访问设备)术语,而不是磁盘或大容量存储术语。
文件系统负责管理存储设备,需要记录正在使用的内容(以及哪个文件使用的内容)和可用的内容。
为简单起见,分配单元将由固定数量的连续寻址物理存储块(又称扇区)组成。这提供了分配单元编号和起始扇区编号(或 LBA)之间的简单算术转换。
如果扇区(或 LBA)不是连续编号的,则每个分配单元都需要自己的子分配列表(这将是荒谬的)。
作为文件系统术语,这是一个超越任何实现的通用概念。
该术语以首字母缩略词 AU 的形式出现,在视频存储模式下,SD 卡中的 NAND 闪存转换层也会使用该术语(如 SD 规范第 1 部分物理层简化规范中所述)。在这种情况下,NFTL 提供类似文件系统的服务,使用随机访问介质模拟顺序访问介质(如磁带)来录制视频。
堵塞
这个词在计算机编程、计算机硬件和通信领域具有多种含义和用途
。“堵塞”即使指定与磁盘驱动器相关的上下文,其含义仍然不明确。如果
没有上下文和限定描述符或形容词,该词除了一些字节或数据分组外,没有其他具体定义。
您引用的维基百科文章试图解释“块”一词作为名词有多种含义,但并不完整。
该文章忽略了“块”在逻辑构造中的用法,例如由多个 LBA 组成的任意大小的逻辑块,或分配内存块(不受物理边界定义)。例如,Linux男人页面malloc(3)提到了 7 次“block”(内存)。
本文重定向了“block”作为与进程调度相关的动词的用法,例如由于待处理的 I/O 操作而阻塞(暂停)进程。
这ext4 参考另一个答案中引用的“块”一词有多种含义/用法,这是一个完美的例子。
在特定上下文中,该文档试图传达“块”是指 ext4 文件系统的分配单位。
但“块”一词仍用于其他含义,但有限制,例如超级块,以及称为描述符块、撤销块和提交块的日志条目。这些“块”的长度与分配“块”大小无关。
另请参阅我以前关于“blocks”的回答。
簇
由于微软操作系统和 PC 上的文件系统无处不在,术语“簇”被广泛理解为(文件的)分配单位。
也许不太为人理解的是,这个定义实际上仅适用于 FAT 或 NTFS 文件系统。
颗粒
我不熟悉这个术语,但您提供的参考资料清楚地表明这是软盘上文件的分配单位。
“分配单元”是否是跨平台普遍理解的最佳总称?
是的。