热搜:

R3磁盘格式化的函数简单分析

2015-09-05 14:43:50文章来源:点点软件园热度:0

更多
快手编程语言

快手编程语言v8.06官方免费版

类别:编程书集编程工具语言:简体中文授权:免费软件

  初识文件系统相关驱动的时候,卷的概念比较模糊,有分区了,为啥还得有个卷……当初认为一个分区就是一个卷,后来发现,这是不准确的。更多最新IT资讯尽在金顺软件园http://www.jinshun168.com/


  卷:卷是扇区的逻辑集合,这些扇区可能位于一个磁盘上,也可能来自多个磁盘。一个物理磁盘上的扇区可以划分成多个分区(partition),每个分区包含一组连续的扇区;而卷负责管理一个或多个分区中的扇区。在windows中,卷有两种,简单卷和多分区卷。


  文件系统;是卷内部的一种逻辑结构,允许用户以文件(数据流)方式来访问和组织数据。


  卷与文件系统:给卷分配一个驱动器字母并不等于该卷就有了对应的文件系统;卷上的数据是以扇区来管理的,而文件系统则为扇区中的数据定义了结构信息。为了能以文件和目录的方式来方访问一个卷上的数据,该卷必须被关联上一个文件系统,此过程称为卷识别。


  文件系统驱动程序识别一个卷的依据是,检查该卷的引导扇区,看是否符合该文件系统所要求的必要条件,包括一些标识字符串和关键结构信息。识别通过后,文件系统驱动程序会创建这个卷的文件系统实例(即:一个文件系统设备对象)并设置好设备对象的相关属性。


  从上述信息,我们可以粗略的认为,在一个空白卷上构造一个文件系统,就是在该卷的引导扇区中写入文件系统关联的各种数据。


  写引导扇区,可以调用系统接口来完成,也可以自行填充相关的数据(符合格式规定就行,Ramdisk例子中有FAT的引导扇区格式)。以前弄的那个文件保险箱,格式化的时候,是调用系统的外壳(shell32.dll)的函数SHFormatDrive,弹出一个对话框,再进行格式化操作。真正执行格式化的并非是这个外壳函数,真正执行格式化的操作函数应该在这个对话框的窗口过程中。用OD跟进去瞧瞧。


  代码:


  push esi ;


  dwInitParampush offset sub_7D668179 ;


  lpDialogFuncpush [ebp+hWndParent] ; hWndParentpush 7000h ;


  lpTemplateNamepush hInstance ;


  hInstancecall sub_7D6103B1

以上,就是金顺软件园小编给大家带来的R3磁盘格式化的函数简单分析全部内容,希望对大家有所帮助!

上一篇过滤文本内容重复器有什么用下一篇access与sql语法区别解析
编辑:剑舞红颜笑