目录项的特性包含以下几点:
目录的大小只对应为其分配的块数,而与在本目录中实际存储的文件数量无关
每个子目录的头两个目录一定是“.”目录和“..”目录,分别表示了该子目录的本身和它的父目录。跟在后面的则是该目录中的文件和子目录的目录项。
根目录总是位于2号i-节点。
目录具有动态的长度,因为文件名可以是1~255个资借鉴的任意值。因此目录项结构中有一个字段用以说明名字的长度,同时也用一个本目录项纪录长度指出了下一个目录项的起始位置。
目录项的长度总是4的整倍数。
当新建一个目录项时,操作系统检查每个目录项,对它们各自的纪录长度和名字长度进行比较。每个目录项除名字部分外还需要另外有8个字节的固定空间,所以一个目录项的最小实际长度是名字部分的长度在加上8个字节,然后在增加到最近的4的整倍数个字节。如果一个目录项的记录长度值大于它所实际需要的长度,而且这个多出的长度又足以存放将要新分配的目录项,则将新建的目录项存放在此处。
一个新的空目录只有“.”和“..”两个目录项,假设块大小为4096个字节,则整个目录占用一个大小为4096字节的块。
当一个文件或目录被删除时,将会对它的目录项进行相应的改变以使操作系统不再显示它的文件名。操作系统通过使位于被删除目录项前面的记录长度值直接指向被删除目录项后面的第一个目录项的起始位置已达到隐藏被删除文件或目录的目的。
天津天伟数据恢复中心。