




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Windows操作系统文件系统演示文稿当前1页,总共82页。优选Windows操作系统文件系统当前2页,总共82页。文件系统概述文件概念与实现目录概念与实现文件与目录的访问权限Windows文件系统概述文件系统的基本概念当前3页,总共82页。
信息是计算机系统中的重要资源。文件系统是操作系统中的一个重要组成部分,负责信息的组织、存储和访问。文件系统的功能就是提供高效、快速和方便的信息存储和访问功能。文件系统概述当前4页,总共82页。文件系统的目的方便的文件访问和控制:以符号名称作为文件标识,便于用户使用;并发文件访问和控制:在多道程系统中支持对文件的并发访问和控制;统一的用户接口:在不同设备上提供同样的接口,方便用户操作和编程;多种文件访问权限:在多用户系统中的不同用户对同一文件会有不同的访问权限;优化性能:存储效率、检索性能、读写性能;差错恢复:能够验证文件的正确性,并具有一定的差错恢复能力;文件系统概述当前5页,总共82页。文件管理的服务功能文件访问:文件的创建、打开和关闭,文件的读写;目录管理:用于文件访问和控制的信息,不包括文件内容文件结构管理:划分记录,顺序,索引访问控制:并发访问和用户权限限额(quota):限制每个用户能够建立的文件数目、占用外存空间大小等审计(auditing):记录对指定文件的使用信息(如访问时间和用户等),保存在日志中(文件系统向上层用户提供的服务)文件系统概述当前6页,总共82页。文件系统的实现功能文件的分块存储:与外存的存储块相配合I/O缓冲和调度:性能优化文件定位:在外存上查找文件的各个存储块外存存储空间管理:如分配和释放。主要针对可改写的外存如磁盘。外存设备访问和控制:包括由设备驱动程序支持的各种基本文件系统如硬盘,软盘,CDROM等(文件系统要实现的功能模块)文件系统概述当前7页,总共82页。文件体:文件本身的信息;文件属性:文件存储和管理信息,例如:文件名、文件内部标识、文件存储地址、访问权限、访问时间等;文件是具有符号名的数据项的集合。文件名是文件的标识符号。文件包括两部分:1.文件的概念文件概念与实现当前8页,总共82页。2.文件的操作打开:为文件读写所进行的准备。给出文件路径,获得文件句柄(filehandle),或文件描述符(filedescriptor)。需将该文件的目录项读入到内存中。关闭:释放文件描述符,把该文件在内存缓冲区的内容更新到外存上。读、写和文件读写定位:系统为每个打开文件维护一个读写指针,它是相对于文件开头的偏移地址。读写指针指向每次文件读写的开始位置,在每次读写完成后,读写指针按照读写的数据量自动后移相应数值。……指围绕文件内容读写进行的文件操作。当前9页,总共82页。3.文件的逻辑结构文件结构是指文件的组织形式。文件结构分为文件的逻辑结构(Filelogicalstructure)和文件的物理结构(Filephysicalstructure)。逻辑结构是从用户的观点出发,所看到的是独立于文件物理特性的文件组织形式,是用户可以直接处理的数据及其结构。物理结构是文件在外存上具体的存储结构。当前10页,总共82页。文件逻辑结构的设计要求:访问性能:便于检索;便于修改存储性能:向物理存储转换方便,节省空间文件的逻辑结构较一般可分为记录式文件和流式文件两种。前者是指用户把每个文件分为若干记录单位,存取文件以记录为单位来进行的,而后者则是指文件由字符流组成,文件内部的信息不再划分单位。文件的逻辑结构是指从用户观点出发讨论文件内部的逻辑结构或用户访问模式;它可以独立于在外存上的物理存储。3.文件的逻辑结构当前11页,总共82页。4.文件的物理结构(文件实现)研究如何在外部存储介质上为创建文件而分配空间,为删除文件而回收空间,以及对空闲空间进行管理。空间分配策略:1.连续空间分配2.链接空间分配3.索引空间分配当前12页,总共82页。空间分配策略:连续空间分配4.文件的物理结构(文件实现)磁盘空间目录文件名起始地址大小Hello.c22z1.cc95a.out2130163115当前13页,总共82页。空间分配策略:链接空间分配4.文件的物理结构(文件实现)磁盘空间目录文件名起始地址结束地址Hello.c24Hello.c:2->5->10->25->19->401631155-11025419当前14页,总共82页。空间分配策略:索引空间分配4.文件的物理结构(文件实现)0磁盘空间目录文件名索引地址Hello.c202,7,13,16,27,-1磁盘块20的内容:163115当前15页,总共82页。空闲空间管理空闲块位示图空闲块链表4.文件的物理结构(文件实现)当前16页,总共82页。簇的大小两个极端:大到能容纳整个文件,小到一个外存存储块;簇较大:提高I/O访问性能,减小管理开销;但簇内碎片浪费问题较严重;簇较小:簇内的碎片浪费较小,特别是大量小文件时有利;但存在簇编号空间不够的问题(如FAT12、16、32);文件的存储空间通常由多个分立的簇组成,而每个簇包含若干个连续的扇区(sector)。5.文件存储单位:簇(cluster)当前17页,总共82页。簇的分配方法:两种簇大小可变:I/O访问性能较好,文件存储空间的管理困难(类似于动态分区存储管理)簇大小固定:文件存储空间使用灵活,但I/O访问性能下降,文件管理所需空间开销较大5.文件存储单位:簇(cluster)当前18页,总共82页。文件卷容量与簇大小的关系文件卷容量越大,若簇的总数保持不变即簇编号所需位数保持不变,则簇越大。缺点:簇内碎片浪费越多文件卷容量越大,若簇大小不变,则簇总数越多,相应簇编号所需位数越多。如簇编号长度为12、16、32二进制位,即构成FAT12、FAT16、FAT32。5.文件存储单位:簇(cluster)当前19页,总共82页。目录概念与实现目录内容目录结构目录管理目录是由文件说明索引组成的用于文件检索的特殊文件。文件目录的内容主要是文件访问的控制信息(不包括文件内容)。当前20页,总共82页。1.目录内容文件名:字符串,通常在不同系统中允许不同的最大长度。可以修改。有些系统允许同一个文件有多个别名(alias);文件类型:可有多种不同的划分方法,如:有无结构(记录文件,流式文件)内容(二进制,文本)用途(源代码,目标代码,可执行文件,数据)属性attribute(如系统,隐含等)文件组织(如顺序,索引等)目录的内容是文件属性信息(properties),其中的一部分是用户可获取的。1.基本信息当前21页,总共82页。2.地址信息存放位置:包括哪个设备或文件卷volume,以及各个存储块位置;文件长度(当前和上限):以字节、字或存储块为单位。可以通过写入或创建、打开、关闭等操作而变化。1.目录内容当前22页,总共82页。4.使用信息创建时间最后一次读访问的时间和用户最后一次写访问的时间和用户3.访问控制信息文件所有者(属主):通常是创建文件的用户,或者改变已有文件的属主;访问权限(控制各用户可使用的访问方式):如读、写、执行、删除等;1.目录内容当前23页,总共82页。单级目录:整个目录组织是一个线性结构,系统中的所有文件都建立在一张目录表中。它主要用于单用户操作系统。它具有如下的特点:结构简单;文件多时,目录检索时间长;有命名冲突:如重名(多个文件有相同的文件名)或别名(一个文件有多个不同的文件名)目录结构讨论目录的组织结构,设计目标是检索效率。2.目录结构当前24页,总共82页。二级目录:在根目录下,每个用户对应一个目录(第二级目录);在用户目录下是该用户的文件,而不再有下级目录。适用于多用户系统,各用户可有自己的专用目录。2.目录结构当前25页,总共82页。多级层次目录:或称为树状目录。在文件数目较多时,便于系统和用户将文件分散管理。适用于较大的文件系统管理。目录级别太多时,会增加路径检索时间。目录名:可以修改。目录树:中间结点是目录,叶子结点是目录或文件。目录的上下级关系:当前目录(currentdirectory,workingdirectory)、父目录(parentdirectory)、子目录(subdirectory)、根目录(rootdirectory)等;路径(path):每个目录或文件,可以由根目录开始依次经由的各级目录名,加上最终的目录名或文件名来表示;2.目录结构当前26页,总共82页。多级目录组织2.目录结构当前27页,总共82页。进行文件访问和控制时,由操作系统自动更新目录内容目录创建mkdir,删除rmdir,修改目录名rename。改变当前目录chdir;目录管理是指目录访问和目录属性控制。3.目录管理当前28页,总共82页。文件与目录访问权限文件访问类型:读read:可读出文件内容;写write(修改update或添加append):可把数据写入文件;执行execute:可由系统读出文件内容,作为代码执行;删除delete:可删除文件;修改访问权限changeprotection:修改文件属主或访问权限设置文件访问权限的目的是为了在多个用户间提供有效的文件共享机制;当前29页,总共82页。用户范围类型:指定用户用户组任意用户访问类型和用户范围的组合:访问矩阵:矩阵的一维是每个目录和文件,另一维是用户范围,每个元素是允许的访问方式访问策略(policy):每种文件访问方式,所允许或禁止的用户范围。可以将文件访问方式推广到其他操作如用户管理,备份,网络访问等。文件与目录的访问权限当前30页,总共82页。Windows文件系统概述Windows直接支持的文件系统包括:CDFS,UDFFAT12/FAT16/FAT32NTFS当前31页,总共82页。Windows文件系统概述:CDFSCDFS(CDROMFileSystem,只读光盘文件系统)是1988年为只读光盘所制定的文件系统标准。CDFS比较简单,但是有一定的限制:文件和目录名的长度必须少于32个字符。目录树的深度不能超过8层。现已过时,已被UDF标准所代替。FSD:\[WinRoot]\System32\Drivers\Cdfs.sys当前32页,总共82页。UDF(UniversalDiskFormat,通用磁盘格式)是于1995年由OSTA(OpticalStorageTechnologyAssociation,光学存储技术协会)为光磁盘存储媒介如DVD-ROM等所制定的,用来代替CDFS,比CDFS更加灵活。UDF具有如下特点:文件名区分大小写文件名可以有255字符长最长路径为1023个字符FSD:\[WinRoot]\System32\Drivers\Udfs.sysWindows文件系统概述:UDF当前33页,总共82页。FAT(FileAllocationTable,文件分配表)文件系统属遗留文件系统。为了向后兼容,也为了方便用户升级,Windows2000/XP/2003仍然提供对FAT的支持
每一种FAT文件系统都用一个数字来标识磁盘上簇号的位数。例如,FAT12的簇标识为12位(二进制数),这限制了它的单个分区最多只能存储212(=4096)个簇,而FAT12在Windows2000/XP中的簇大小在512B与8KB之间,这意味着FAT12卷的大小至多只有32M。
FSD:\Winnt\System32\Drivers\Fastfat.sysWindows文件系统概述:FAT当前34页,总共82页。NTFS是Windows2000/XP的本机文件系统NTFS的簇标识为64位文件与目录的安全性文件与目录的压缩文件与目录的加密文件与目录的可恢复性FSD:\[WinRoot]\System32\Drivers\ntfs.sysWindows文件系统概述:NTFS当前35页,总共82页。FAT文件系统
每一种FAT文件系统都用一个数字来标识磁盘上簇号的位数:FAT12/FAT16FAT32系统文件分配表中每个簇的字节数簇界限FAT121.5小于4087簇FAT162界于4087和65526簇之间(包括边界)FAT324界于65526和268,435,456簇之间(包括边界)当前36页,总共82页。多级目录,无用户访问权限控制磁盘文件卷结构FAT文件系统FAT12与FAT16当前37页,总共82页。字节偏移量(16进制)域长样值(16进制)含义003字节EB3C90转移指令038字节MSDOS5.0文本格式的OEM名0B25字节
BIOS参数块(BIOSParameterBlock,BPB)2426字节
扩展BIOS参数块(ExtendedBIOSParameterBlock,EBPB)3E448字节
引导代码1FE2字节55AA扇区结束标记引导扇区FAT12与FAT16当前38页,总共82页。引导扇区的BIOS参数块包含了卷的信息,包括:簇大小,根目录项数目,FAT表大小,磁盘参数(每道扇区数,磁头数),文件卷中的扇区总数,簇编号长度等逻辑扇区号:三元组(柱面号,磁头号,扇区号)->一个文件卷中从0开始对每个扇区编号,优点:屏蔽了物理磁盘参数的不同允许同时访问的文件卷数目上限可以由config.sys文件中的LASTDRIVE=语句指定簇(cluster):由若干个扇区组成。在一个文件卷中从0开始对每个簇编号。FAT12与FAT16当前39页,总共82页。FAT12与FAT16字节偏移量(16进制)域长样值(16进制)含义0B2字节0002每扇区字节数0D1字节08每簇扇区数0E2字节0100保留扇区数:从分区引导扇区到第一个文件分配表开始的扇区数101字节02文件分配表数112字节0002根目录项数132字节0000小扇区数:卷上的扇区数,如果该数适合于16位(65535)的话151字节F8介质类型:F8表明为硬盘,F0表明为软盘162字节C900每个文件分配表的扇区数182字节3F00每磁道扇区数1A2字节1000磁头数1C4字节3F000000隐藏扇区数204字节51420600大扇区数:如果小扇区数域的取值为0,该域包含的是卷中的扇区总数BIOS参数块(BPB)当前40页,总共82页。字节偏移量(16进制)域长样值(16进制)含义241字节80物理磁盘号:软盘从0x00开始编号,硬盘从0x80开始编号251字节00当前磁头:FAT文件系统不使用。261字节29签名:必须是0x28或0x29,以便被Windows
NT所识别。274字节CE134630卷序列号:当格式化卷时创建的一个唯一的数字。2B11字节NONAME卷标:该域用于存放卷标,但是卷标目前是在根目录中作为一个特别文件而存放的。368字节FAT16系统ID:根据磁盘的格式,该域的取值为FAT12或FAT16。FAT12与FAT16扩展BIOS参数块(EBPB)当前41页,总共82页。
每个FAT表项所占位数是簇编号的位数,其值是(以FAT12为例):0:表示该簇空闲FF7h:物理坏扇区FF8h~FFFh:表示该簇是文件的最后一个簇其他值:表示该簇被文件占用,而且表项中的值是文件下一个簇的编号。FAT表:两个镜像,互为备份。文件卷中的每个簇均对应一个FAT表项,文件分配采用链式分配方法。FAT12与FAT16当前42页,总共82页。目录:是目录项的顺序文件(即大小相同的记录序列),不对目录项排序。若目录中包含的文件数目较多,则搜索效率低。每个目录项大小为32字节,其内容包括:文件名(8+3个字符),属性(包括文件、子目录和文件卷标识),最后一次修改时间和日期,文件长度,第一个簇的编号。在目录项中,若第一个字节为E5h,则表示空目录项;若为05h,则表示文件名的第一个字符为E5h。文件名不区分大小写当前43页,总共82页。目录项偏移域长含义00h8文件名08h3文件扩展名0Bh1文件属性字节0Ch10保留16h2最后一次修改的时间18h2最后一次修改的日期1Ah2起始簇号1Ch4文件大小FAT12与FAT16Bit7-6543210保留归档目录卷标系统隐藏只读文件属性字节当前44页,总共82页。FAT32主要应用于Windows9x系统FAT32的根目录区(ROOT区)不再是固定区域、固定大小,而是可以看作数据区的一部分,采用与子目录文件相同的管理方式。根目录下的文件数目不再受最多256的限制。目录项仍占32字节,可以是文件目录项、子目录项、卷标项(仅根目录有)、已删除目录项、长文件名目录项等。支持长文件名格式支持Unicode无法支持高级容错特性,不具有内部安全特性,因而仍然无法达到高性能文件系统的要求当前45页,总共82页。字节偏移量(16进制)域长含义0B2字节每扇区字节数0D1字节每簇扇区数0E2字节保留扇区数101字节文件分配表数112字节根目录项数132字节小扇区数/0000
151字节介质类型:F8表明为硬盘,F0表明为软盘162字节每个文件分配表的扇区数/0000
182字节每磁道扇区数1A2字节磁头数1C4字节隐藏扇区数204字节大扇区数/总扇区数
FAT32标准BPB当前46页,总共82页。字节偏移量(16进制)域长含义244字节每个FAT的FAT32扇区数282字节指定当前激活的FAT2A2字节版本号2C4字节根目录起始簇号302字节指向文件系统信息扇区322字节指向引导扇区副本扇区3412字节保留401字节物理磁盘号411字节保留421字节签名:必须是0x28或0x29434字节卷序列号4711字节卷标528字节文件系统ID:FAT32扩展BPBFAT32当前47页,总共82页。FAT32长文件名长文件名目录项偏移长度含义00h1Bits0-5givetheLFNpartnumber,bit6issetifthisisthelastentryforthefile.01h101st5lettersofLFNentry.0Bh10Fh0Ch1Reservedsetto0.0Dh1Checksum.0Eh12Next6lettersofLFNentry.1Ah201Ch4Last2lettersofLFNentry.当前48页,总共82页。FAT32长文件名文件名为Thequickbrown.fox,采用Unicode编码,则FAT32的目录项为:当前49页,总共82页。NTFS文件系统NTFS为改进的多级目录结构,支持文件别名;NTFS文件由多个文件属性构成,每个属性由属性名和属性流(stream,简单字节队列)组成;用户可自定义属性;NTFS支持用户权限管理:有5种权限划分:读、写、运行、删除和修改权限;支持按用户、用户组分配权限;NTFS文件支持数据压缩功能;NTFS卷结构支持容错功能;NTFS的技术特点当前50页,总共82页。NTFS磁盘结构NTFS具有众多优点,这主要是因为它在磁盘上独特的实现方法。如何划分磁盘,如何组织文件与目录,如何存储文件属性与数据,如何压缩文件数据等。当前51页,总共82页。NTFS磁盘结构:卷卷是建立在磁盘分区上。一个磁盘可以有多个卷,一个卷也可以有多个磁盘组成
(已格式化过的)卷上的数据可分为:元数据和用户数据当前52页,总共82页。NTFS磁盘结构:簇簇作为磁盘空间分配和回收的基本单位簇的大小是用户在使用Format命令或其他的格式化程序格式化卷时确定的。簇因子随卷的大小而不同,但都是物理扇区的整数倍,通常是2的幂,
NTFS使用LCN(LogicalClusterNumber,逻辑簇号)和VCN(VirtualClusterNumber,虚拟簇号)来进行簇的定位。LCN是对整个卷中所有的簇从头到尾所进行的简单编号。VCN是对属于特定文件的簇从头到尾进行编号,以便于引用文件中的数据。当前53页,总共82页。NTFS磁盘结构:主控文件表MFT(MasterFileTable,主控文件表)是NTFS卷结构的核心,是NTFS中最重要的系统文件,包含了卷中所有文件的信息。MFT是以文件记录数组来实现的,每个文件记录的大小都固定为1KB。卷上的每个文件(包括MFT本身)都有一行MFT记录。MFT开始的16个元数据文件是保留的。在NTFS中只有这16个元数据文件占有固定的位置。每个这样的元数据文件都有一个以"$"开头的文件名称,不过该符号是隐藏的。16个元数据文件之后则是普通的用户文件和目录。当前54页,总共82页。NTFS磁盘结构:主控文件表0:$Mft:MFT本身1:$MftMirr:MFT镜像2:$LogFile:日志文件3:$Volume:卷文件4:$AttrDef:属性定义表5:$\:根目录6:$Bitmap:位图文件7:$Boot:引导文件8:$BadClus:坏簇文件9:$Secure:安全文件10:$UpCase:大写文件11:$Extendedmetadatadirectory:扩展元数据目录12,13,14,15:预留>15:其他用户文件和目录当前55页,总共82页。NTFS磁盘结构:主控文件表当前56页,总共82页。NTFS磁盘结构:文件引用号每个文件都有一个64位(bit)的、称为文件引用号(FileReferenceNumber)的唯一标识。文件引用号由两部分组成:一是文件号。文件号为48位(bit),对应于该文件在MFT中的位置。二是文件顺序号。文件顺序号随着每次文件记录的重用而增加,这是为了让NTFS进行内部一致性检查。当前57页,总共82页。NTFS磁盘结构:文件记录NTFS文件是属性/属性值的集合。文件数据就是未命名属性的值,其他文件属性包括文件名、文件拥有者、文件时间标记等。每个属性由单个的流(stream)组成,即简单的字符序列。NTFS提供对属性流的各种操作:创建、删除、读取(字节范围)以及写入(字节范围)。读写操作一般是针对文件的未命名属性的,对于已命名的属性则可以通过已命名的数据流句法来进行操作。当前58页,总共82页。NTFS文件是属性的集合,通常所说的文件内容是指未命名数据属性流;例:我们定义两个数据属性:ntfile(数据)和ntfile:data(自定义数据)。在向FAT复制时,自定义属性会丢失。echotestdata>ntfileechotestuserdefineddata>ntfile:datamore<ntfilemore<ntfile:datacopyntfilee:ntfile(E:为NTFS文件系统)copyntfilec:ntfile(C:为FAT文件系统)more<e:ntfilemore<e:ntfile:datamore<c:ntfilemore<c:ntfile:dataNTFS磁盘结构:文件记录当前59页,总共82页。NTFS磁盘结构:文件记录NTFS卷上文件的常用属性(并不是所有文件都有所有这些属性)。
$VOLUME_INFORMATION$VOLUME_NAME$STANDARD_INFORMATION$FILE_NAME$SECURITY_DESCRIPTOR$DATA$INDEX_ROOT$INDEX_ALLOCATION$BITMAP$ATTRIBUTE_LIST$OBJECT_ID$REPARSE_POINT$EA$EA_INFORMATION$LOGGED_UTILITY_STREAM当前60页,总共82页。NTFS磁盘结构:文件名称NTFS路径名中的每个文件名/目录名的长度可达255个字节,可以包含Unicode字符、多个空格及句点。当前61页,总共82页。NTFS磁盘结构:常驻属性与非常驻属性当属性值能直接存放在MFT中时,该属性就称为常驻属性(residentattribute)。有些属性总是常驻的,这样NTFS才可以确定其他非常驻属性。例如,标准信息属性和索引根就总是常驻属性。如果属性值能直接存放在MFT中,那么NTFS对它的访问时间就将大大缩短。小文件或小目录的所有属性,均可以在MFT中常驻。小文件的未命名属性可以包括所有文件数据。小目录的索引根属性可以包括其中所有文件和子目录的索引。大文件或大目录的所有属性,就不可能都常驻在MFT中。
当前62页,总共82页。NTFS磁盘结构:常驻属性与非常驻属性如果一个属性(如文件数据属性)太大而不能存放在只有1KB的MFT文件记录中,那么NTFS将从MFT之外分配区域。这些区域通常称为一个延展(run)或一个延伸(extent),它们可用来存储属性值,如文件数据。如果以后属性值又增加,那么NTFS将会再分配一个延展,以便用来存储额外的数据。值存储在延展中而不是在MFT文件记录中的属性称为非常驻属性(nonresidentattributes)。在标准属性中,只有可以增长的属性才是非常驻的。对文件来说,可增长的属性有数据、属性列表等。标准信息和文件名属性总是常驻的。当前63页,总共82页。NTFS磁盘结构:常驻属性与非常驻属性当前64页,总共82页。NTFS磁盘结构:索引索引根属性将相应目录中的文件名和子目录名进行排序。
对于一个大目录,文件名实际存储在组织文件名的固定4KB大小的索引缓冲区中。索引缓冲区是通过B+树数据结构实现的。
索引分配属性包含了索引缓冲区的VCN到LCN映射位图属性跟踪在索引缓冲区中哪些VCN是在使用而哪些是空闲的。
当前65页,总共82页。NTFS磁盘结构:数据压缩压缩稀疏文件:稀疏文件是指相对于文件大小而言只有少量非零数据的文件。NTFS只给那些包含非零数据的延展分配磁盘空间
当程序从压缩文件中读取数据时,NTFS通过检测该位置是否有VCN到LCN的映射来决定该数据是不是零数据。若有映射,则为非零数据,需要从磁盘上读取;若没有映射即存在尚未分配的“空洞”(unallocatedhole),则为零数据,就直接返回零数据。
当前66页,总共82页。NTFS磁盘结构:数据压缩压缩非稀疏文件NTFS是以16个簇为压缩单元来进行一般文件的压缩的。
当NTFS向压缩文件写数据时,它确保每个延展都以一个虚拟16簇边界开始。因此每个延展中VCN都是以16的倍数开始的,并且延展的长度不大于16。
当前67页,总共82页。Windows文件系统驱动程序(FSD)
Windows文件系统模型WindowsFSD体系结构文件系统操作与FSDNTFSFSD
当前68页,总共82页。Windows文件系统模型当前69页,总共82页。WindowsFSD体系结构(本地)当前70页,总共82页。WindowsFSD体系结构(远程)当前71页,总共82页。文件系统操作与FSD显式文件I/O高速缓存迟后写高速缓存超前读内存脏页写内存缺页处理
当前72页,总共82页。文件系统操作与FSD:显式文件I/OCreateFile(ReadFile,WriteFile)(Win32API)
NtCreateFile
通过ObOpenObjectByName解析名称字符串通过IopParseDevice创建IRP(I/Orequestpacket,I/O请求包)通过IoCallDriver将IRP交给合适的FSD以创建文件
当前73页,总共82页。文件系统操作与FSD:显式文件I/OReadFile =>NtReadFile =>将已打开文件的句柄转换成文件对象指针
=>检查访问权限
=>创建IRP读请求
=>通过IoCallDriver将IRP交给合适的FSD=>如可在高速缓存,则应检查PrivateCacheMap=>如有效则表示该文件已有私有高速缓存映射结构;=>如无效则表示尚没有私有高速缓存映射结构,需要调用CcInitializeCacheMap来初始化=>通过CcCopyRead从高速缓存中读取数据。如果数据还不在高速缓存中,CcC
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合作批发服装合同范本
- 体外诊断试剂原料合同范本
- 传媒公司主办合作合同范本
- 合同范例插画
- 口才培训劳务合同范本
- 卫生劳务聘请合同范例
- 个人服装合同范本
- 加盟合同范本加盟
- 合作入股合同范本6
- 合同中款到发货合同范本
- 广东省深圳市2024年重点中学小升初数学入学考试卷含解析
- 2023北师大版新教材高中数学必修第一册考前必背
- JB-T 14426-2023 往复式气液混输泵装置
- 2024核桃树承包合同
- 保险授权书格式模板
- (完整版)数字电子技术基础教案
- 小回沟矿井3.0Mt-a新建工程变更项目环评
- 汽车维修合同管理制度
- 2024中交二航局分包合同范本
- 2024年益阳医学高等专科学校单招职业适应性测试题库全面
- 2024年四川电力职业技术学院单招职业适应性测试题库新版
评论
0/150
提交评论