设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 其他开发语言 >> What Happens to File Systems During System Boot
精品推荐
其他开发语言点击TOP10
·数字小键盘指法练习
·用C语言编通讯录程序(初学者级别的)
·Modem 常用AT指令集
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
·Thinking in C++ 简体中文第二版
·debug和release的区别
·error LNK2001: unresolved external symbol __ftol2 错误解决
·C库函数手册
·一个简单的C语言编译器
编程开发点击TOP10
·数字小键盘指法练习
·ASP.NET 程序中常用的三十三种代码
·用C语言编通讯录程序(初学者级别的)
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·Modem 常用AT指令集
·java笔试题
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

What Happens to File Systems During System Boot

作者: 来源:网络文章 时间:2005-12-17 19:57:54

What Happens to File Systems During System Boot(1)

What Happens to File Systems During System Boot

 

XML:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 

系统引导过程中,文件系统被初始化;特别是在I/O系统初始化过程中。I/O manager建立global file system queue以及初始化被OS loaderPnP Manager加载的文件系统filter driver

 

system (OS) loader and the PnP Manager.

 

Following is a summary of selected portions of the system boot process that are of interest to file system and filter driver developers.

 

1 系统boot过程中,OS loader在其转换 控制 到内核之前加载boot file systemRAW file system、以及所有SERVICE_BOOT_START类型的驱动程序,当内核获得控制权的时候这些driver已在内存当中了。

 

Driver被按照在load order groups中被指定的顺序加载。在文件系统filter中,那些被一个新的文件系统filter driver load order groups指定的filter被先于其他的filter driver加载。关于这些load order groups详细描述,见File System Filter Driver Load Order Groups

 

接下来(then),所有在load order group中指定的filter load 注意:“filter groups还包括storage filter而不仅仅是文件系统filter,而且,还包括第三方的filter driver而不仅仅指buildin(内建)的filter driver

 

2 IO Manager 创建一个有4segment的全局文件系统队列:CD-ROMdisktape以及network file system各一个。以后,当每个文件系统被注册时,他们的Controld device object被添加到相应的队列的segment中。然而,至此,还没有文件系统被注册,所以这个对列是空的。PnP Manager呼叫所有SERVICE_BOOT_START类型driversRAW file systemDriverEntry例程。如果有SERVICE_BOOT_START 类型的driver需要依赖其他的drivers,最好是这些被依赖的drivers已经被加载并启动了。

 

3 PnP manager通过呼叫boot device driverAddDevice例程来启动boot device,如果一个boot device还有子device的话,这些子device会被枚举。假如这些子devicesboot-start类型driver的,他们也会被配置并启动。如果一个设备的驱动程序并不是所有都是boot-start类型的,PnP Manager就会为这个设备创建一个devnode,但并不启动它.

至此,所有的boot driver被加载,boot device被启动。

 

4 PnP manager检查PnP device tree 发现并加载每个与 devnode 相关联但还没有运行的driver,当每个PnP Device启动后,PnP manager枚举该设备的子设备。PnP Manager配置这些子设备,configures the child devices, 加载他们的设备驱动程序,并启动他们。

PnP Manager加载每个设备的驱动程序并不去管这些driverStarttypeloadordergroup或者依赖的values。在这一步骤中,PnP manager只配置和启动能被枚举到的device。如果一个设备不能被枚举,PnP Manager将忽略这些设备而且不会再去枚举他们的子设备,尽管他们的子设备能够被PnP枚举到。

 

5 PnP Manager加载并初始化那些至此还没被加载的SERVICE_SYSTEM_START类型的驱动程序。FsRec就是在此时被加载的。注意,尽管FsRec是在“boot file systemload order group中, FsRec却不是boot file system,实际的引导文件系统是被mountedboot volume的文件系统。该文件系统在引导过程中被加载。

以后,在SERVICE_SYSTEM_START阶段,那些在”file systemload order group中的文件系统被load,他们包括命名管道文件系统(NPFS)和邮槽文件系统(MSFS),但不包括任何介质类型的文件系统,诸如NTFS,FAT,CDFS,UDFS.

网络文件系统处于“netWord load order group中,也是在这个阶段被load

 

6 在所有引导时被加载的驱动程序被初始化后,IO Manager呼叫所有driver都拥有的reinitialization 例程。reinitialization 例程是一个被boot driver注册的callback例程,一个需要在引导过程中的这个地方被附加的处理. Reinitialization通过调用 IoRegisterBootDriverReinitialization or IoRegisterDriverReinitialization来注册。

 

7 The service Control Manager加载已经被加载的SERVICE_AUTO_START类型的驱动程序。

 

File System Recognizer(文件系统识别器)

系统引导后,所有被attach到系统的volumestorage device driver被加载并启动,然而,并不是所有的内建的文件系统被加载了,也不是所

有的文件系统volumemounted了。FsRec执行这些任务还需要处理IRP_MJ_CREATE请求。FsRec在系统启动过程中的SERVICE_SYSTEM_START被加

 

载,注意,虽然FsRec是在“Boot File Systemload order group中,然而,FsRec并不是boot File system,实际的boot file system却是

 

在引导过程中被加载的文件系统mountedboot file ststem

 

共2页 9 7 [1] [28 :>

What Happens to File Systems During System Boot 相关文章:
What Happens to File Systems During System Boot 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com