一种上层文件系统对空洞文件快速读取的方法及系统的制作方法

文档序号:6430378阅读:194来源:国知局

专利名称::一种上层文件系统对空洞文件快速读取的方法及系统的制作方法
技术领域
:本发明涉及计算机系统的文件系统,特别涉及一种上层文件系统基于posix(PortableOperatingSystemInterfaceofUnix,ρ)洞文件加速读取的方法及系统。
背景技术
:文件系统是一种用来存储和组织计算机文件、目录及其包含的数据的方法,它使文件、目录以及数据的查找和访问得到简化。随着多媒体产业的迅猛发展,出于成本、可靠性等多方面的考虑,越来越多的厂商选择在产品中部署自研的分布式上层存储系统,分布式文件系统也因此得到了快速的发展。在普通应用中,无法使用上层分布式文件系统专有函数接口,尤其像普通程序中将一个文件或者其它对象映射进内存的mmap等操作,无法简单的在上层系统中实现,几乎所有的上层分布式文件系统选用了开源的Fuse(FilesysteminUserspace,用户空间文件系统)组件,完成从专用接口到通用接口的转变,但是Fuse组件只是一个底层文件系统的框架,在许多应用中存在一定性能上的损失,尤其读取空洞文件时,性能损失更为严重。空洞文件是包含空洞(其中无任何内容)的文件。在文件操作中,文件位移量可以大于文件的当前长度,在这种情况下,对该文件的下一次写将延长该文件,这就是所谓的在文件里创造“空洞(hole)”。读取文件时,mmap函数将所要读取的文件映射进内存。在Iinux中,内存的保护是以页为基本单位的,即使被映射文件只有一个字节大小,内核也会为映射分配一个页面大小的内存。文件一旦被映射后,调用mmap()的进程对mmapO返回地址进行访问时,由内核处理该访问。如果内核发现返回地址所指向的页没有被操作系统读取过,则向Fuse组件发出读取页请求。Fuse组件接收到读取页请求后,不论所读取的页是否是空洞,都向上层文件系统发送读取请求。上层文件系统收到读取请求后,读取相关页并返回给Fuse组件,Fuse组件再将其返回给调用mmapO的进程。由上述分析可见,在现有技术中,Fuse组件收到读取页请求后,不管所读取的页是否是空洞,都向上层文件系统发送读取请求,上层文件系统收到读取请求进行相应的读取后再将读取的相关页返回给Fuse组件。因此,读取空洞文件时,性能损失较为严重。同时,当遇到大量的文件空洞时,Fuse带来的系统内存复制的压力和进程切换的压力,会极大地拖累系统读取的速度。
发明内容本发明的目的在于提供一种上层文件系统对空洞文件快速读取的方法及系统,能更好地解决Fuse读取空洞文件时性能损失严重导致系统内存复制和进程切换时压力过大的问题。根据本发明的一个方面,提供了一种上层文件系统对空洞文件快速读取的方法,所述方法包括以下步骤A、在Fuse内核组件上外挂空洞文件处理系统;B、所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找文件的空洞页,给所述空洞页添加空洞标识;C、在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。其中,所述步骤B包括Bi、应用程序创建新文件;B2、Fuse内核组件判断所创建的新文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送添加空洞标识的请求;B3、所述空洞文件处理系统接收到所述添加空洞标识的请求后,查找所述文件的空洞页,并给所述空洞页添加空洞标识。其中,所述步骤B还包括B4、应用程序向Fuse内核组件发送查询文件属性的请求;B5、Fuse内核组件接收到所述查询文件属性的请求后,判断所述文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送更新空洞标识的的请求;B6、所述空洞文件处理系统接收到所述更新空洞标识的请求后,判断所述空洞文件是否需要更新空洞标识,如果需要,则更新所述空洞页的空洞标识。其中,所述步骤B6包括B61、所述空洞文件处理系统接收到所述更新空洞标识的请求后,查询所述空洞文件对应的空洞信息的版本号,并将所述版本号发送给上层文件系统;B62、上层文件系统比较所接收到的版本号和上层文件系统中所述空洞文件的空洞信息对应的版本号,如果所接收到的版本号小于上层文件系统中所述空洞文件的空洞信息对应的版本号,则上层文件系统将增量的空洞页属性发送给所述空洞文件处理系统;B63、所述空洞文件处理系统根据所述增量的空洞页属性更新所述空洞标识。其中,所述步骤C包括Cl、应用程序向Fuse内核组件发送读取页请求;C2、Fuse内核组件接收到所述读取页请求后,向所述空洞文件处理系统发送检查空洞的请求;C3、所述空洞文件处理系统接收到检查空洞的请求后,根据所述空洞标识判断所述读取页是否是空洞页,如果是空洞页,则中止上层文件系统对其读取,直接返回到应用程序,反之,向Fuse内核组件发送读取请求,Fuse内核读取所述读取页后将其返回给应用程序。根据本发明的另一方面,提供了一种上层文件系统对空洞文件快速读取的系统,所述系统包括上层文件系统,用于读取文件页;Fuse内核组件,用于向空洞文件处理系统发送检查空洞的请求,并在所述空洞文件处理系统反馈不是空洞时,向上层文件系统发送读取文件页的请求;外挂在所述Fuse内核组件的空洞文件处理系统;其中,所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找文件的空洞页,给所述空洞页添加空洞标识;在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。其中,所述系统还包括应用程序,用于向所述Fuse内核组件发送读取页请求,并接收所述读取页。Fuse上层模块,用于负责所述Fuse内核组件和所述上层文件系统之间的通信。其中,所述应用程序还用于向Fuse内核组件发送创建新文件的请求;所述Fuse内核组件还用于判断所创建的文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送添加空洞标识的请求;所述空洞文件处理系统还用于在接收到所述添加空洞标识的请求后,查找所述文件的空洞页,并给所述空洞页添加空洞标识。其中,所述应用程序还用于向Fuse内核组件发送查询文件属性的请求;所述Fuse内核组件还用于在接收到所述查询文件属性的请求后,判断所述文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送更新空洞标识的的请求;所述空洞文件处理系统还用于接收到所述更新空洞标识的请求后,判断所述空洞文件是否需要更新空洞标识,如果需要,则查找所述文件的空洞页,更新所述空洞页的空洞标识。其中,所述应用程序还用于向Fuse内核组件发送读取页请求;所述Fuse内核组件还用于接收到所述读取页请求后,向所述空洞文件处理系统发送检查空洞的请求;所述空洞文件处理系统还用于在接收到检查空洞的请求后,根据所述的空洞标识判断所述读取页是否是空洞页,如果是空洞页,则中止上层文件系统对其读取,直接返回到应用程序,反之,向Fuse内核组件发送读取请求,Fuse内核读取所述读取页后将其返回给应用程序。与现有技术相比较,本发明的有益效果在于在使用Fuse为posix服务提供扩展时,提高读取空洞文件的速度,并降低读取空洞文件时给系统内存复制带来的压力。图1是本发明实施例提供的一种上层文件系统对空洞文件快速读取的方法的原理图;图2是本发明实施例提供的新建文件时标记空洞的方法的流程图;图3是本发明实施例提供的读取文件属性时标记空洞的方法的流程图;图4是本发明实施例提供的一种上层文件系统对空洞文件快速读取的方法的流程图5是本发明实施例提供的一种上层文件系统对空洞文件快速读取的系统的结构图。具体实施例方式以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。图1是本发明实施例提供的一种上层文件系统对空洞文件快速读取的方法的原理图,如图1所示,所述方法包括以下步骤步骤S101,在Fuse内核组件上外挂空洞文件处理系统;Fuse包括Fuse内核组件和Fuse上层模块,其中,Fuse内核组件和空洞文件处理系统存在接口,Fuse内核组件接收到内核的页请求后,会通过其与空洞文件处理系统的接口,请求空洞文件处理系统判别所要读取的页是否是空洞。步骤S102,所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找并标记文件的空洞页,给所述空洞页添加空洞标识;新建文件时,Fuse内核组件发现新建文件是空洞文件后,调用空洞文件处理系统,记录空洞信息即空洞的内存地址和空洞长度。通过记录空洞的内存地址和空洞长度,在读取文件时可以判断所要读取的页的内存地址是否在某个空洞的内存地址及空洞长度确定的地址范围内,如果所读取页的地址在此范围内,则此页是空洞页。在查询已有文件属性时,Fuse内核组件发现获得属性请求后,调用空洞文件处理系统,空洞文件处理系统查找出该文件的空洞信息版本号,并经Fuse内核组件转发给Fuse上层模块。Fuse上层模块和上层文件系统获得上层文件系统的空洞文件对应的空洞信息的版本号,并与接收到的空洞信息版本号相比较,如果获得的文件的空洞信息版本号大于接收到的版本号,则将增量的空洞属性返回给Fuse内核组件,并转发给空洞文件处理系统,空洞文件处理系统根据增量的空洞属性更新空洞信息,记录增量的空洞的内存地址及空洞长度,同时更新空洞信息版本号。步骤S103,在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。进程读取文件时,Fuse内核组件调用空洞文件处理系统,检查所读取的页是否是空洞,如果是空洞页,则空洞文件处理系统不再请求上层文件系统读取空洞页,而直接通知进程。图2是本发明实施例提供的新建文件时标记空洞的方法的流程图,如图2所示,所述方法包括以下步骤步骤S201,应用程序创建新文件。应用程序新建文件之后,调用标准截长函数Ftrimcate将新创建的文件的大小改为Ftrimcate长度参数指定的大小。步骤S202,Fuse内核组件调用空洞文件处理系统。Fuse内核组件发现截长请求后,比较Ftruncate的长度参数length与新建文件的长度isize。如果length大于isize,则表明截长后的文件是空洞文件,调用空洞文件处理系统接口。步骤S203,记录空洞信息。空洞文件处理系统对空洞文件的空洞进行标识,记录截长后的文件的当前实际的长度k和空洞信息,所述空洞信息是空洞文件中空洞的地址和空洞的长度。空洞文件处理系统记录空洞信息后通知Fuse上层模块。步骤S204,上层文件系统对空洞文件做相应处理并通知Fuse内核组件。Fuse上层模块接收到空洞处理系统的通知后,转给上层文件系统,上层文件系统根据Ftrimcate请求对上层文件做相应的处理,比如修改文件长度、更新修改时间等属性,之后,上层文件系统将处理结果经Fuse上层模块返回给Fuse内核组件。步骤S205,Fuse内核组件修改空洞文件的相应信息。Fuse内核组件接收上层文件系统的处理结果后,对所述结果进行相应的处理,更新索引节点inode的长度、接收时间、修改时间。步骤S206,Fuse内核组件通知应用程序。Fuse内核组件完成相应的处理后,通知应用程序操作成功。图3是本发明实施例提供的读取文件属性时标记空洞的方法的流程图,如图3所示,所述方法包括以下步骤步骤S301,查询文件属性。应用程序调用Istat函数发出获得文件属性请求,Istat函数返回文件的相关属性信息,包括文件所在设备的标识、文件结点号、文件保护模式、硬连接数、文件用户标识、文件用户组标识、文件所表示的特殊设备文件的设备标识、总大小、文件系统的块大小、分配给文件的块的数量、最后访问时间、最后修改时间、最后状态改变时间。步骤S302,调用空洞文件处理系统的接口。Fuse内核组件检测到Istat函数后,判断Istat函数对应的缓存是否失效,如果缓存已经失效表示其他进程可能对文件进行了修改,Fuse内核组件调用空洞文件处理系统的接口,请求查询空洞信息的版本号。步骤S303,查询当前空洞信息的版本号并发送给Fuse内核组件。空洞文件处理系统查找出空洞文件的空洞信息的版本号,并将其返回给Fuse内核组件,Fuse内核组件将其转发给Fuse上层模块。步骤S304,比较空洞信息的版本号,并返回空洞属性。Fuse上层模块接收到版本号后,比较上层文件系统的空洞文件对应的空洞信息的版本号和接收到的版本号,如果上层文件系统的空洞文件的空洞信息的版本号大于接收到的版本号,则表明上层文件系统的空洞文件已经被其他程序修改,因此要将增量的空洞信息返回给空洞文件处理系统,所述空洞信息包括发生变化的各个空洞的地址及各个空洞的长度。步骤S305,更新空洞信息,并向Fuse内核组件发送空洞信息。空洞文件处理系统接收到增量的空洞信息后修改空洞标识。比如,空洞变成实体数据后,在空洞信息中删除该空洞的地址及空洞的长度;新增空洞后,则记录新增空洞的地址及空洞长度。空洞文件处理系统更新了空洞信息后,更改空洞信息的版本号,并将空洞信息发送给Fuse内核组件。步骤S306,转发空洞信息。空洞文件处理系统更新空洞信息之后,通知Fuse内核组件操作成功,Fuse内核组件将文件属性发送给应用程序。步骤S307,得到文件属性。应用程序接收到文件属性,完成查询文件属性的过程。图4是本发明实施例提供的一种上层文件系统对空洞文件快速读取的方法的流程图,如图4所示,所述方法包括以下步骤步骤S401,对空洞文件的空洞进行标识。对空洞文件进行空洞标识通常包括两种情况,一种是新建文件时,对文件的空洞进行标识,另外一种是读取已有文件属性时,对文件的空洞进行标识。新建文件时,对空洞的标识执行图2所示的新建文件时标记空洞的方法的流程。读取已有文件的属性时,对空洞的标识执行图3所示的读取文件属性时标记空洞的方法的流程。步骤S402,应用程序发出读取页面的请求。Mmap建立文件的内存地址映射,并读取相应的内存地址对应的内容。内核如果发现所述内存地址对应的页没有被操作系统读取过,则向注册的文件系统模块Fuse发出读取页面请求。步骤S403,Fuse内核组件请求空洞文件处理系统检查当前读取是否为空洞。Fuse内核组件收到应用程序的读取页面请求后,内核分配相关页,Fuse内核组件调用空洞文件处理系统检查所述页是否是空洞。步骤S404,检查是否是空洞。空洞文件处理系统根据所述页的内存地址及空洞信息中的空洞地址和空洞长度判断所述页是否是空洞,如果所述页的内存地址在某个空洞地址和其空洞长度确定的地址范围内,则所述页是空洞页,执行步骤S405,否则执行步骤S406。步骤S405,直接返回到应用程序。空洞文件处理系统将内核分配的页清零后,直接通知应用程序。步骤S406,转发读取请求。如果不是空洞页,空洞文件处理系统向Fuse内核组件发送读取请求。Fuse内核组件将该请求转发给上层文件系统。步骤S407,读取相应的页。上层文件系统和Fuse上层模块接收到Fuse内核组件的读取请求后,读取相关信息并将其返回给Fuse内核组件。步骤S408,转发相应的页。Fuse内核组件得到上层文件系统和Fuse上层模块返回的相关页后,将其发送给应用程序。步骤S409,应用程序得到相关页。应用程序接收到Fuse内核组件发送的相关页,完成读取流程。图5是本发明实施例提供的一种上层文件系统对空洞文件快速读取的系统的结构图,如图5所示,所述系统包括应用程序1、Fuse内核组件2、空洞文件处理系统3、Fuse上层模块4和上层文件系统5。其中,Fuse上层模块4和上层文件系统5用于读取文件页;Fuse内核组件2,用于向空洞文件处理系统3发送检查空洞的请求,并在空洞文件处理系统3反馈不是空洞时,向Fuse上层模块4发送读取文件页的请求;空洞文件处理系统3通过对所读取的文件进行空洞判别,查找并标记文件的空洞页,给所述空洞页添加空洞标识。在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统2中止上层文件系统5对其读取。所述系统首先对空洞文件进行空洞标识。空洞标识分为两种情况,一种是在新建文件时进行标识,另外一种是在读取文件属性时进行标识。新建文件时,应用程序1创建新文件后,调用标准截长请求即Ftrimcate函数将新创建的文件的大小改为函数长度参数指定的大小。Fuse内核组件2接收到截长请求后,比较Ftruncate的长度参数length与创建的文件的原来长度isize。如果length大于isize,则表明截长后的文件是空洞文件,调用空洞文件处理系统3接口,请求添加空洞标识。空洞文件处理系统3记录截长后的文件的当前实际的长度k和空洞信息,所述空洞信息包括空洞地址和空洞长度。读取文件属性时,应用程序1发出获得文件属性请求。Fuse内核组件2发现获得文件属性请求后,如果内核发现文件属性对应的缓存已经失效,则表明文件已被其他程序更改或使用,因此调用空洞文件处理系统3的接口请求空洞信息的版本号。空洞文件处理系统3查找出空洞文件的空洞信息的版本号,并将其返回给Fuse内核组件2,Fuse内核组件2将其转发给Fuse上层模块4。Fuse上层模块4接收到版本号后,比较上层文件系统5的空洞文件的空洞信息的版本号并与接收到的版本号相比较,如果上层文件系统的空洞文件的空洞信息的版本号大于接收到的版本号,则表明上层文件系统的空洞文件已经被其他程序修改,因此要将增量的空洞信息返回给空洞文件处理系统3。空洞文件处理系统3接收到增量的空洞信息后更新空洞标识。系统在进行了空洞标识后,读取文件时,根据空洞标识快速读取。应用程序1发出读取页面的请求,Fuse内核组件2收到应用程序的读取页面请求后,内核分配相关页,Fuse内核组件2调用空洞文件处理系统3检查所读取的页面是否为空洞,如果是空洞,则直接返回到应用程序1,否则向Fuse内核组件2发送读取请求。Fuse内核组件2将该读取请求转发给Fuse上层模块4和上层文件系统5。Fuse上层模块4和上层文件系统5接收到Fuse内核组件2的读取请求后,读取相关信息并将其返回给Fuse内核组件2。Fuse内核组件2得到Fuse上层模块4和上层文件系统5返回的相关页后,将其发送给应用程序1。综上所述,本发明通过预先标记空洞页,解决了Fuse读取空洞文件时性能损失严重导致系统内存复制和进程切换时压力过大的问题,增强其对空洞文件的支持力度,在存在文件空洞的情况下,可以快速的返回,而不需要走复杂的调度到上层文件系统中,提高了读取某些存在大量空洞的文件的性能。尽管上文对本发明进行了详细说明,但是本发明不限于此,本
技术领域
技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。权利要求1.一种上层文件系统对空洞文件快速读取的方法,其特征在于,所述方法包括以下步骤A、在Fuse内核组件上外挂空洞文件处理系统;B、所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找文件的空洞页,给所述空洞页添加空洞标识;C、在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。2.根据权利要求1所述的方法,其特征在于,所述步骤B包括Bi、应用程序创建新文件;B2、Fuse内核组件判断所创建的新文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送添加空洞标识的请求;B3、所述空洞文件处理系统接收到所述添加空洞标识的请求后,查找所述文件的空洞页,并给所述空洞页添加空洞标识。3.根据权利要求1所述的方法,其特征在于,所述步骤B还包括B4、应用程序向Fuse内核组件发送查询文件属性的请求;B5、Fuse内核组件接收到所述查询文件属性的请求后,判断所述文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送更新空洞标识的的请求;B6、所述空洞文件处理系统接收到所述更新空洞标识的请求后,判断所述空洞文件是否需要更新空洞标识,如果需要,则更新所述空洞页的空洞标识。4.根据权利要求3所述的方法,其特征在于,所述步骤B6包括B61、所述空洞文件处理系统接收到所述更新空洞标识的请求后,查询所述空洞文件对应的空洞信息的版本号,并将所述版本号发送给上层文件系统;B62、上层文件系统比较所接收到的版本号和上层文件系统中所述空洞文件的空洞信息对应的版本号,如果所接收到的版本号小于上层文件系统中所述空洞文件的空洞信息对应的版本号,则上层文件系统将增量的空洞页属性发送给所述空洞文件处理系统;B63、所述空洞文件处理系统根据所述增量的空洞页属性更新所述空洞标识。5.根据权利要求1-4任一项所述的方法,其特征在于,所述步骤C包括Cl、应用程序向Fuse内核组件发送读取页请求;C2、Fuse内核组件接收到所述读取页请求后,向所述空洞文件处理系统发送检查空洞的请求;C3、所述空洞文件处理系统接收到检查空洞的请求后,根据所述空洞标识判断所述读取页是否是空洞页,如果是空洞页,则中止上层文件系统对其读取,直接返回到应用程序,反之,向Fuse内核组件发送读取请求,Fuse内核读取所述读取页后将其返回给应用程序。6.一种上层文件系统对空洞文件快速读取的系统,其特征在于,所述系统包括上层文件系统,用于读取文件页;Fuse内核组件,用于向空洞文件处理系统发送检查空洞的请求,并在所述空洞文件处理系统反馈不是空洞时,向上层文件系统发送读取文件页的请求;外挂在所述Fuse内核组件的空洞文件处理系统;其中,所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找文件的空洞页,给所述空洞页添加空洞标识;在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。7.根据权利要求6所述的系统,其特征在于,所述系统还包括应用程序,用于向所述Fuse内核组件发送读取页请求,并接收所述读取页。Fuse上层模块,用于负责所述Fuse内核组件和所述上层文件系统之间的通信。8.根据权利要求7所述的系统,其特征在于,所述应用程序还用于向Fuse内核组件发送创建新文件的请求;所述Fuse内核组件还用于判断所创建的文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送添加空洞标识的请求;所述空洞文件处理系统还用于在接收到所述添加空洞标识的请求后,查找所述文件的空洞页,并给所述空洞页添加空洞标识。9.根据权利要求7所述的系统,其特征在于,所述应用程序还用于向Fuse内核组件发送查询文件属性的请求;所述Fuse内核组件还用于在接收到所述查询文件属性的请求后,判断所述文件是否是空洞文件,如果是空洞文件,则向所述空洞文件处理系统发送更新空洞标识的的请求;所述空洞文件处理系统还用于接收到所述更新空洞标识的请求后,判断所述空洞文件是否需要更新空洞标识,如果需要,则查找所述文件的空洞页,更新所述空洞页的空洞标识。10.根据权利要求7-9任一项所述的系统,其特征在于,所述应用程序还用于向Fuse内核组件发送读取页请求;所述Fuse内核组件还用于接收到所述读取页请求后,向所述空洞文件处理系统发送检查空洞的请求;所述空洞文件处理系统还用于在接收到检查空洞的请求后,根据所述的空洞标识判断所述读取页是否是空洞页,如果是空洞页,则中止上层文件系统对其读取,直接返回到应用程序,反之,向Fuse内核组件发送读取请求,Fuse内核读取所述读取页后将其返回给应用程序。全文摘要本发明公开了一种上层文件系统对空洞文件快速读取的方法及系统,所述方法包括在Fuse内核组件上外挂空洞文件处理系统;所述空洞文件处理系统通过对上层文件系统的文件进行空洞判别,查找并标记文件的空洞页,给所述空洞页添加空洞标识;在读取文件过程中,对于带有空洞标识的空洞页,所述空洞文件处理系统中止上层文件系统对其读取。本发明通过预先标记空洞页,解决了fuse读取空洞文件时性能损失严重导致系统内存复制和进程切换时压力过大的问题,增强其对空洞文件的支持力度,在存在文件空洞的情况下,可以快速的返回,而不需要走复杂的调度到上层文件系统中,提高了读取某些存在大量空洞的文件的性能。文档编号G06F17/30GK102298619SQ20111022827公开日2011年12月28日申请日期2011年8月10日优先权日2011年8月10日发明者严耀华,朱鹏,王瑜申请人:中兴通讯股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1