为了使读者对Hello China文件系统有一个大致的印象,先看一下操作文件系统的内置程序—fs。这个程序运行在字符模式下,可以完成文件卷枚举(列出系统中所有的文件卷)、浏览目录中的文件、显示文件内容、创建目录、创建文件并写入等。需要说明的是,为了安全考虑,缺省情况下禁止了硬盘的写入操作。这样虽然fs程序提供了文件卷的写入操作,但不能使用。如果希望使用文件系统的写入功能,则需要启用硬盘写入功能。
启动到字符shell之后,输入fs并按Enter键,即可进入fs程序的操作界面。图12-1是一个运行截图。
图12-1 fs程序的运行结果
fslist命令可列出系统中所有的文件卷。在fs的提示符下运行help命令,即可显示所有支持的文件系统命令。
运行dir命令,即可列出当前目录下的所有文件和目录,如图12-2所示。(www.xing528.com)
图12-2 dir命令执行结果
cd命令可改变当前目录。进入fs程序后,缺省的当前目录是C:分区的根目录,输入cd pthouse命令后,即可进入Hello China的系统目录。
在当前目录下,运行type命令(后跟一个文件名),即可显示文件内容。当前,这个命令可以显示任何文件,但人可识别的只有文本文件。
fs程序完全是通过调用Hello China提供的API接口函数实现的。读者可以通过调用API函数,实现更复杂的文件操作程序。在对Hello China的文件系统有一个感性的认识之后,我们正式进入主题。首先大致了解一下FAT32文件系统的基本原理,后续将以FAT32文件系统的实现为例进行讲解。之所以选择FAT32而不是NTFS,是因为FAT32有Microsoft正式发布的规范可以参考。而NTFS的规范则一直未发布,对于其运行机理,都是通过大量的猜测和试验得到的,并非Microsoft公司标准。因此大部分NTFS文件系统的实现,都只实现了只读功能,当然,微软的实现除外。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。