苹果机HFS+文件系统的几个特性

简介:

HFS+文件系统Winhex模版源码及模版下载[url]http://www.tysjhf.com/jszl/[/url]

u         HFS+文件系统中,磁盘被分成512字节的逻辑块,称为“扇区”。所有的扇区从0开始编号,直到磁盘的最大扇区数减1
u         在一个文件卷内,HFS+把所有的扇区分成等大的组,称其为“分配块(allocateion blocks),一个分配块占用一组连续的扇区。
提示:其实, HFS+ 中的分配块类似于 FAT32 NTFS 中的簇,甚至可以说是相同的,只是工作环境与名称不同而已。
Ø          分配块的大小为2的整数次幂,且大于等于512字节。这个值在卷初始化时被设定,并且在卷存在的过程中不能被修改,除非重新对卷进行初始化。
Ø          HFS+32-bit记录分配块的数量,因此,最多可以管理232次方个分配块。
注意:一般情况下,分配块的大小为 4KB ,这是最优化的分配块大小。
u         所有的文件结构,包括卷头,都包含在一个或者几个分配块中(也有例外的情况比如the alternate volume header--备份卷头,后面介绍)。这点不同于HFSHFS中的特殊结构(包括启动块、主目录块和位图)不属于任何分配块。
提示:用每分配块的大小字节数(在 HFS 卷标头偏移 20H 24H 、或 HFS +的卷标头中偏移 28H 2BH 处的 4 个字节表示)除以 512 字节(每扇区字节数)所得到的“每分配块大小扇区数,直接乘以分配块号就可以得到一个分配块的第一个扇区所在位置。
u         为了减少文件碎片的产生,HFS+在为文件分配存储空间的时候,会尽可能地为其分配一组连续的分配块或块组。块组的大小通常为分配块大小的整数倍,这个值在卷头中说明。
注意:域文件( extend files )在实际存储过程中并不严格遵循这一算法,在卷头和目录记录中记录它的“块组”值并不是必需的,只需要有存储它们的值的空间就可以了。
u         对于非连续存储的文件,Mac OS采用“下一可用分配策略”为其分配存储空间。即当Mac OS接收到文件空间分配请求时,如果首先找到的空闲空间无法满足请求的空间大小,则继续从下一个找到的空闲块开始继续分配,如果这次找到的连续空闲空间足够大,则根据请求空间的大小分配“块组”大小的整倍数空间给这个文件。





















本文转自老骥伏枥51CTO博客,原文链接:http://blog.51cto.com/sjhfml/140318,如需转载请自行联系原作者





相关文章
|
1月前
|
存储 Linux
btrfs中文件系统扩展属性xattr的实现
介绍Linux中文件系统扩展属性xattr特性的基本概念,btrfs文件系统的基本结构以及对xattr特性的实现方式。
46 1
btrfs中文件系统扩展属性xattr的实现
|
3月前
|
存储
文件系统设计与实现中
文件系统设计与实现中
21 0
|
3月前
|
存储 文件存储
文件系统设计与实现上
文件系统设计与实现上
52 6
文件系统设计与实现上
|
3月前
|
安全 测试技术
文件系统设计与实现下
文件系统设计与实现下
34 2
|
8月前
|
Linux 索引 Windows
7.1.2 linux文件系统特性
7.1.2 linux文件系统特性
51 0
|
存储 缓存 数据管理
NTFS读写软件2023Tuxera NTFS最新版本功能介绍
今天,小编要来分享的是Mac下一款实用的NTFS读写软件——Tuxera NTFS,我们都知道OS X默认是不支持NTFS格式写入的,对于很多使用U盘或移动硬盘写操作的朋友来说非常的不便。而Tuxera NTFS很好的解决了这个问题。小子这次带来的是2023版本。
168 0
|
数据安全/隐私保护 iOS开发 开发者
tuxeraNTFS2022macOS无法读写NTFS文件系统如何解决?
众所周知,因为一些原因,我们的macOS无法读写NTFS文件系统,要想读写NTFS,我们就要用到软件!
285 0
|
监控 Linux
linux文件系统特性
1. 文件系统特性(索引式文件系统) 文件系统格式化后block group的组成部分: super block:记录文件系统整体信息,inode和data block的总量,使用量,剩余量,以及文件系统格式与相关信息,一般大小为1024bytes. inode table:记录文件的权限与属性,一个文件占用一个inode,同时记录此文件的数据所在的block号码,每个inode默认固定大小为128bytes。
1036 0
|
存储 索引 数据安全/隐私保护