4.3.7. 60H属性分析 31
4.3.8. 70H属性分析 31
4.3.9. 80H属性分析 32
4.3.10. 90H属性分析 34
4.3.11. A0H属性分析 36
4.3.12. B0H属性分析 36
4.3.13. C0H属性分析 36
4.3.14. EOH属性分析 37
4.3.15. 100H属性分析 38
5. 程序设计和开发 38
5.1. 开发工具介绍 38
5.2. 程序建模 39
5.2.1. 用例模型 39
5.2.2. 状态图模型 40
5.2.3. 类视图模型 41
5.3. 程序界面和功能的实现 47
5.3.1 界面介绍 47
5.3.2 程序主要功能的实现 51
5.3.2.1 数据结构介绍 51
5.3.2.2 提取MFT记录中的30H属性和80H属性 55
5.3.2.3 读取$MFT文件 58
5.3.2.4 构建目录树 58
5.3.2.5 显示文件的内容以及导出数据 60
6.结论与进一步的研究方向 61
6.1 本课题总结 61
6.2 本课题进一步研究方向 62
致谢 62
参考文献 63
附录 63
1. 绪论
我们在新的硬盘上安装操作系统的时候,首先要进行分区,格式化,然后才能安装。在这时,选用哪种文件系统便成了问题,而且对于不同的文件系统的选择在一定程度上决定了操作系统的性能。
Windows XP可以支持NTFS和FAT32两种文件系统,NTFS文件系统的优点是比FAT32具有更高的安全性,FAT32的长处是兼容性比NTFS好,两者各有利弊。当下随着操作系统的发展在PC领域FAT32逐渐被替代,然而在一些移动设备上还在大量使用,比如报警机器人,机床控制器和监视器等,这些设备往往比较重要,特别是涉及到监视的设备,它们的数据不能有一点差错更不能丢失,所以FAT32也会被安全性更高的NTFS替代,这时候对于NTFS文件系统的数据恢复就会显得很有必要。
2. 数据的表示和存储结构
本章将会介绍在分析NTFS文件系统中所需要用到的数据的表示方法以及相关的数据结构。
2.1. 数据的表示方法
本节介绍在分析NTFS文件系的时候用到的数据的表示方法。
2.1.1. 进位计数制
在一般情况下,人们都习惯用十进制来表示数字.但是,在在一些特殊应用里,还会使用其他的进制来计数,如二进制、十二进制、二十四进制、751十进制等。用数字符号排列,由低位向高位进位计数的方法教做进位计数制,简称进位制。进位计数是由一段规定的数字来表示任意的数字。例如,一个二进制数只能用0和1来表示,一个十进制只能用1、2、3、...、9来表示,一个十751进制由1、2、3、...、9和A~F十751个数字符号来表示。数据无不管是使用到了哪种位进制,都会有两个基本的要素,即"基数”与各位数上的"位权”。
当一种计数制可以采用基本的数字符号(数码)的个数就叫做基数。在基数为J的计数制当中有J个不同的数码,每个位置的数满J就向高一位的位置进1,这就叫做"逢J进一”。比如十进制中,每一位数上都可以用0,1,2,...,9共10个不同的数码当中的一个,所以十进制计数的基数就是10,对于每一位数当记满10的时就向高位进一。
一个数字的符号处在不同的位置的时候,它是代表不同的值的。每个数字符号所表示的值就是这个数字符号值乘上一个与数码所在位置相关的常数,这个常数就叫做"位权”,简称"权”。位权的值的大小是以基数为低,数码所在的位置上的的序号为直属的整数次幂。例如,十进制的百分位、十分位、个位、百位、千位的权依次是10^-2、10^1 、10^0、10^1、10^2、10^3。整数部分的各位位置的序号是0。 NTFS文件恢复系统设计+文献综述(2):http://www.751com.cn/jisuanji/lunwen_32765.html