CN1266603C - 一种透明扩充文件系统功能的方法 - Google Patents

一种透明扩充文件系统功能的方法 Download PDF

Info

Publication number
CN1266603C
CN1266603C CN 03138125 CN03138125A CN1266603C CN 1266603 C CN1266603 C CN 1266603C CN 03138125 CN03138125 CN 03138125 CN 03138125 A CN03138125 A CN 03138125A CN 1266603 C CN1266603 C CN 1266603C
Authority
CN
China
Prior art keywords
file system
interlayer
file
function
operations
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CN 03138125
Other languages
English (en)
Other versions
CN1553325A (zh
Inventor
吴江
唐杰
李丽虹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CN 03138125 priority Critical patent/CN1266603C/zh
Publication of CN1553325A publication Critical patent/CN1553325A/zh
Application granted granted Critical
Publication of CN1266603C publication Critical patent/CN1266603C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种透明扩充文件系统功能的方法,其文件系统包括虚拟文件系统和底层文件系统,在虚拟文件系统层标准调用接口和底层文件系统接口之间,还设置一个夹层文件系统,系统调用接口先将截获的文件系统的请求提交给虚拟文件系统层处理函数;虚拟文件系统通过标准调用接口将请求提交给夹层文件系统;由该夹层文件系统进行特殊事务处理后,再将事务提交给底层的具体文件系统;最后由底层文件系统来实现实际的数据存取或输入输出。本发明可以在原有的已经实现的多种文件系统基础上,截获文件系统的请求,封装自己的处理,增强文件系统的功能,并且不破坏虚拟文件系统层的标准接口和具体文件系统的代码完整性,实现各种特殊的应用。

Description

一种透明扩充文件系统功能的方法
技术领域
本发明涉及一种增强文件系统功能的方法,特别是涉及一种能透明地扩充文件系统功能的方法,所谓“透明”指的是用户和用户态程序无法干预。
背景技术
所有的计算机程序都要存储信息和检索信息。对于长期存储的信息,有以下三个要求:一是要有足够的空间存储信息。二是在使用信息的进程终止时,信息必须保存下来。三是多个进程可以并发存取信息。满足以上三个要求的常用方法是把信息以一种称之为“文件”的单元保存在磁盘或其他的外部存储介质上。文件是由操作系统来管理的。文件的命名、存储空间的分配、文件的存取和使用等都是由操作系统中的“文件系统”管理单元来管理的。
文件系统可以被看成是一个多功能的管理器,它既是空间管理器、I/O管理器、目录管理器,对于特殊的日志文件系统它还是事务管理器。一种操作系统可以支持多种不同的文件系统,例如Linux操作系统可以支持的文件系统有ext2、ext3、jfs、Reiserfs、xfs等。为了支持各种不同的文件系统,很多操作系统在设计之初就考虑到了兼容性,UFS就是UNIX的标准文件系统界面,只要符合这个标准的文件系统都可以在UNIX上运行。这样就诞生了一个内核的子系统虚拟文件系统-VFS(Virtual File System),它作为一个转换开关来支持各种不同的文件系统。VFS提供了一系列标准的操作集合来管理和操作文件,这些操作集合都是由相关的函数指针来定义的。操作系统将各种不同的对文件系统的请求通过系统调用接口提交到VFS层。VFS层经过判断,来决定这个请求由哪个底层文件系统来实现,从而调用相应文件系统的操作处理函数。
各种文件系统都有自己的特长,有的文件系统写大文件的性能高;有些文件对小文件的处理能力强;日志文件系统可以将改变文件系统的各个操作,记录到日志中去,一旦系统崩溃,可以按照日志快速恢复文件系统的一致性。但是无论什么文件系统,它提供给用户的功能大体相同,无外乎对文件的存取和目录的管理等。如果用户希望文件系统提供额外的附加功能,通常的方法是修改具体文件系统的实现函数,按照用户的需求,添加对事务的处理。但是这种做法有两个缺点,其一就是如果用户希望多种文件系统都提供它所需要的功能,就必须逐一修改具体文件系统的代码,这样做的结果既不利于原来文件系统代码的完整性,同时兼容性也很差。有人提出了修改VFS层的建议来解决兼容性的问题,但是这样做的代价就是破坏了VFS层的标准,同时依然解决不了另外一个问题。另外一个问题就是,这样对文件系统修改,满足不了用户随时增加或撤销对特殊事务处理的要求,灵活性很差。
发明内容
本发明的目的在于,按照不同用户的特殊需求,提供一种透明扩充文件系统功能的方法。本发明还可以使用户随时根据需要启动或者关闭对文件系统的特殊事务处理,而不影响原有的底层文件系统。
本发明所述的一种透明扩充文件系统功能的方法,其文件系统包括虚拟文件系统和底层文件系统,在虚拟文件系统层标准调用接口和底层文件系统接口之间,还设置一个夹层文件系统,当一个应用程序发出一个文件系统的请求时,系统调用接口先将该请求提交给虚拟文件系统层处理函数;虚拟文件系统通过标准调用接口将请求提交给所述夹层文件系统;由该夹层文件系统进行特殊事务处理后,例如对数据加密,压缩或者读/写的重定向等,再将事务提交给底层的具体文件系统,最后,由底层文件系统来实现实际的数据存取或输入输出。
所述特殊事务处理的步骤如下:
通过夹层文件系统读超级块interlayer_read_super的操作,覆盖底层文件系统的超级操作集合super_operations;在创建内存i节点的同时,重定向i节点的三种操作集合;在夹层文件系统实现i节点的各种操作集合函数,完成特殊事务的处理。
如上所述的一种透明的扩充文件系统功能的方法,所述夹层文件系统为一个可随时装载或卸除装载的模块,当模块装载后,夹层文件系统截获VFS向下提交的请求;卸载模块后,则恢复原来的操作流程,VFS层直接将请求提交底层文件系统,由底层文件系统具体实现各种请求。
本发明所述方法可以在原有的已经实现的多种文件系统基础上,截获文件系统的请求,封装自己的处理,增强文件系统的功能,并且不破坏VFS层的标准接口和具体文件系统的代码完整性,实现各种特殊的应用。
附图说明
图1为夹层文件系统结构图;
图2为系统调用写事务write的处理流程;
图3为夹层文件系统操作集合的数据结构关系图;
图4为夹层文件系统读超级块interlayer_read_super.的操作流程图;
图5为创建内存inode的操作函数interlayer_read_inode流程图;
图6为夹层文件系统写操作interlayer_write流程图。
具体实施方式
下面结合附图对本发明再作进一步详细的说明。
本发明提出的夹层文件系统的概念是受了VFS的启发,而VFS就是一个不可装载的并且已经成为标准的夹层文件系统。如果修改了VFS层的话,必将要求所有的文件系统都经过特殊事务的处理,并且装载的灵活性受到了限制。因此在VFS和具体文件系统(例如ext2,jfs,xfs等)的基础上,本发明提出了夹层文件系统的概念。
如图1所示,本发明并不是真正的实现一个具体的文件系统,而是在VFS层和具体文件系统之间封装的标准调用接口,以实现扩展文件系统的功能。在装载了夹层文件系统的情况下,当一个应用程序发出一个文件系统的请求时,系统调用接口将该请求先提交给VFS层处理函数,VFS通过标准调用接口将请求提交给夹层文件系统,通过夹层文件系统读超级块interlayer_read_super的操作,覆盖底层文件系统的超级操作集合super_operations;在创建内存i节点的同时,重定向i节点的三种操作集合;在夹层文件系统实现i节点的各种操作集合函数,完成特殊事务的处理后,如对数据加密,压缩或者读/写的重定向等,再将事务提交给底层的具体文件系统,最后,由底层文件系统来实现实际的数据存取或I/O。
VFS层提供的标准调用接口,包括四个操作函数集合:
关于超级块的操作集合(super_operations);
关于i节点的操作集合(inode_operations);
关于文件的操作合集(file_operations);
关于地址空间的操作集合(address_space_operations)。其中:
inode_operations、file_operations和address_s pace_operations直接挂在
文件系统的基本对象i节点上;而super_operations直接挂接在文件系统的超级块上;同时i节点上保存有超级块的指针,因此通过i节点可以间接访问到per_operations。这四个操作集合都是由不同的函数指针组成的结构,而这些函数指针则指向了具体的文件系统所实现的操作函数。VFS层就是将各种文件系统的请求通过这四个操作集的调用提交给具体文件系统的。因此,只需要实现这四个操作集合,并且将自己实现的操作集合覆盖到i节点和超级块上的函数指针,就可以截获VFS向下提交的请求了。
另外,为了增加系统的灵活性,根据操作系统提供的可装载模块的实现规则,通过将夹层文件系统实现为可装载模块,随时可以根据用户的需求动态的装载和卸载夹层文件系统到操作系统的内核中,来实现启动和关闭对文件系统的特殊事务的处理过程。
图2用系统调用写操作的处理流程来进一步说明上述的体系结构。首先当应用程序请求写操作时,操作系统将写请求通过系统调用接口传递给虚拟文件系统的处理函数,虚拟文件系统转发写请求给夹层文件系统,夹层文件系统再通过对写请求的数据块压缩/加密后重新组织写磁盘的数据内容,最后将新的数据内容作为参数提交给底层文件系统JFS(日志文件系统)进行真正写事务处理。
下面具体地以本发明应用于压缩文件系统和加密文件系统为例,说明基于JFS(Journal File System)日志文件系统,是如何利用夹层文件系统实现文件系统数据加密和数据压缩的。
加密/压缩文件系统的实现原理在于创建一个夹层文件系统,并封装文件系统的读和写请求。通常情况下,当应用程序发出对文件系统的写文件请求时,写系统调用将此请求提交给VFS层,VFS再通过调用底层文件系统的函数实现写操作;但是如果用户请求对数据进行压缩或者加密,即挂接了加密/压缩夹层文件系统后,用户的写请求将会在VFS向底层文件系统提交时被截获,先通过加密/压缩夹层文件系统对写数据缓冲区的内容压缩/加密,然后再调用底层文件系统的函数实现真正的写文件操作。这就要求夹层文件系统的操作函数集合inode_operations、file_operations、super_operations和address_space_operations要覆盖掉原有inode下挂接的JFS对应的操作函数集合。如何将文件系统调用接口的实现函数指针指向带有加密/压缩功能的操作函数集是实现压缩/加密文件系统的第一步。
考虑到inode是内存中结构,其下的属性i_op和i_fop和i_mapping的成员a_ops分别指向文件系统的inode_operations、file_operations和address_space_operations,而这三个的属性值是在读磁盘i节点创建内存inode的过程中被赋值的,因此需要改写创建内存inode的过程,好让inode的i_op和i_fop等指向夹层文件系统的操作函数。在创建内存inode的过程中,不但需要调用真正底层文件系统的函数读出磁盘i节点,创建内存inode的各种属性,同时还要求重定向inode的各个操作集合,即覆盖操作集函数指针,详见附图5说明。
但是,创建inode的操作本身也属于操作集合super_operations,因此为了覆盖i_op和i_fop和i_mapping的成员操作集合a_ops,应该首先覆盖超级块的super_operations。而这个操作集合是在文件系统被挂接的时候被安装的,即在read_super时安装的,所以应该首先改写read_super函数,详见附图4说明。
附图3是夹层文件系统的主要操作集合和数据结构的关系图。从图3中可以得知:夹层文件系统的主要数据结构interlayer_fs包括了四个操作函数集合。其中o_fops是夹层文件系统的对象(文件、目录和连接)各自的inode_operations、file_operations和super_operations组成的结构。而这些操作集合最终将要调用具体的底层文件系统的实现函数,因此interlayer_fs中的o_caops保存了原来底层文件系统对象(文件、目录和连接)的各自的inode_operations、file_operations和super_operations。如果需要的话可以加入日志的操作集合o_jrops和实现附加功能的操作集合o_addops,例如数据加密/解密,数据压缩/解压。
附图4是夹层文件系统读超级块interlayer_read_super.的操作流程图。如上所述,读超级块是为了在挂接文件系统时,覆盖底层文件系统的super_operations。
第一步,分析挂接文件系统操作传入的参数并且判断底层文件系统的类型;初始化一个全局变量interlayer_cache为夹层文件系统超级块内存结构,在这个结构中保存底层文件系统的真正的超级块指针和夹层文件系统操作结构interlayer_fs。由于夹层文件系统并不是真正的文件系统,因此要保存真正文件系统的超级块,以供后面真正的系统调用实现使用。
第二步,调用真正底层文件系统的read_super函数,读出超级块的内容并且获取底层文件系统的super_operations。
第三步,安装夹层文件系统的super_operations。具体的实现方法是首先将底层文件系统的super_operations拷贝到夹层文件系统的超级块的操作集属性,然后判断是否需要改变夹层文件系统的超级操作super_operations中的某个操作,如果夹层文件系统的某个操作改变了原来的操作,就修改该操作的函数指针,令它指向的新的操作函数。这样就保证了操作集合的完整性。如果夹层文件系统不需要改变的操作,就使用默认原来的底层文件系统操作函数。
第四步,安装根目录节点的inode_operations,file_operations和address_space_operations,令根目录的各个操作集合指向新的操作函数。
第五步,函数返回。
附图5是创建内存inode的操作函数interlayer_read_inode流程图。如上所述,重写读inode的操作是为了在创建内存inode的同时,重定向inode的各个操作集合。
第一步,取出夹层文件系统的超级块内存结构,也就是在read_super时读出的全局变量interlayer_cache,通过它可以获得底层文件系统的超级块和各种操作集合。
第二步,调用底层文件系统的读inode函数,根据磁盘inode在内存中创建一个内存inode结构,并且给inode结构的各种属性赋值。
第三步,判断inode的类型(目录、文件还是链接)。分别为内存inode安装inode_operations,file_operations和address_space_operations。安装操作集合的方法与安装super_operations一样。
第四步,函数返回。
附图6是写操作interlayer_write流程图。从图6中可以看到是如何封装数据加密/压缩操作的。通过图6,可以清晰的看到夹层文件系统是如何在事务处理的过程中发挥作用的。
第一步,取出底层文件系统的file_opertions函数指针。
第二步,对write请求传递的参数数据缓冲区进行特殊处理。如:对于压缩文件系统在此可以利用压缩算法,压缩缓冲区的数据;对于加密文件系统可以利用加密算法对缓冲区中的数据进行加密。
第三步,调用具体的底层文件系统的write函数,将处理过的缓冲区中的数据真正的提交到I/O设备驱动,完成磁盘写操作。
第四步,函数返回。
同样,如果需要封装该夹层文件系统的读操作,具体的是编写夹层文件系统的read函数,在读出数据后,利用解压缩算法将压缩后的数据返回给用户;或者利用解密算法对读出的数据解密后,再拷贝返回给用户。通过上面的描述可以看出,仅仅通过对读/写操作的封装,就可以实现透明的扩充文件系统的功能,使文件系统具有加密/解密和压缩/解压的功能。其实夹层文件系统的应用还远远不止这些,利用对夹层文件系统读/写操作的封装,还可以做到对读/写操作的重定向。同样,可以控制的远远不仅仅局限于读/写操作的封装,通过封装inode_operations、file_operations和address_space_operations中任意函数,夹层文件系统还可以实现更多的其他功能。
为了使夹层文件系统更加灵活,将夹层文件系统实现为一个可安装模块,在不必对内核重新编译连接的条件下,将可安装模块动态地插入运行中的内核中,使之成为内核的一个有机组成部分,便可使文件系统增加特殊的功能;或者从内核中移走已经安装的模块,从而取消文件系统对特殊事务的处理。例如,在Linux中,其具体实现方式是通过调用初始化夹层文件系统和退出夹层文件系统来实现的。在初始化夹层文件系统的时候,注册夹层文件系统;而在退出夹层文件系统的函数里,取消已注册的夹层文件系统。
最后所应说明的是:以上实施例仅用以说明而非限制本发明的技术方案,尽管参照上述实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:依然可以对本发明进行修改或者等同替换,对于不脱离本发明的精神和范围的任何修改或局部替换,其均应涵盖在本发明的权利要求范围当中。

Claims (8)

1、一种透明扩充文件系统功能的方法,其文件系统包括虚拟文件系统和底层文件系统,其特征在于,在虚拟文件系统层标准调用接口和底层文件系统接口之间,还设置一个夹层文件系统,当一个应用程序发出一个文件系统的请求时,系统调用接口先将该请求提交给虚拟文件系统层处理函数;虚拟文件系统通过标准调用接口将请求提交给所述夹层文件系统;由该夹层文件系统进行特殊事务处理后,再将事务提交给底层的具体文件系统;最后,由底层文件系统来实现实际的数据存取或输入输出;
所述特殊事务处理的步骤如下:
通过夹层文件系统读超级块interlayer_read_super的操作,覆盖底层文件系统的超级操作集合super_operations;在创建内存i节点的同时,重定向i节点的三种操作集合;在夹层文件系统实现i节点的各种操作集合函数,完成特殊事务的处理。
2、根据权利要求1所述的透明扩充文件系统功能的方法,其特征在于,所述通过夹层文件系统读超级块的操作,覆盖底层文件系统的超级操作集合的具体过程为:
分析挂接文件系统操作传入的参数并且判断底层文件系统的类型;初始化一个全局变量interlayer_cache为夹层文件系统超级块内存结构,在这个结构中保存底层文件系统的真正的超级块指针和夹层文件系统操作结构interlayer_fs;
调用真正底层文件系统的读超级块read_super函数,读出该超级块的内容并且获取底层文件系统的超级操作super_operations;
安装夹层文件系统的超级操作super_operations;
安装根目录节点的inode_operations,file_operations和address_space_operations,令根目录的各个操作集合指向新的操作函数;
函数返回。
3、根据权利要求2所述的透明扩充文件系统功能的方法,其特征在于,所述安装夹层文件系统的超级操作super_operations具体包括:
首先,将底层文件系统的超级操作super_operations拷贝到夹层文件系统的超级块的操作集属性;
然后,判断是否需要改变夹层文件系统的超级操作super_operations中的某个操作,如果夹层文件系统的某个操作改变了原来的操作,就修改该操作的函数指针,令它指向新的操作函数;如果夹层文件系统不需要改变操作,就使用默认原来的底层文件系统操作函数。
4、根据权利要求2所述的透明扩充文件系统功能的方法,其特征在于,所述在创建内存i节点的同时,重定向i节点的三种操作集合的具体过程为:
取出夹层文件系统的超级块内存结构;
调用底层文件系统的读inode函数,根据磁盘inode在内存中创建一个内存inode结构,并且给inode结构的各种属性赋值;
判断inode的类型属于目录、文件还是链接,分别为内存inode安装i节点操作inode_operations,文件操作file_operations和地址空间操作address_space_operations;
函数返回。
5、根据权利要求2所述的透明扩充文件系统功能的方法,其特征在于,所述在夹层文件系统实现i节点的各种操作集合函数,完成特殊事务的处理的具体过程为:
取出底层文件系统的文件操作file_opertions或i节点操作inode_operations或地址空间操作address_space_operations的函数指针;
对需要扩充功能的对应函数进行特殊处理。
6、根据权利要求1-5任一所述的透明扩充文件系统功能的方法,其特征在于,所述夹层文件系统为一个可随时装载或卸除装载的模块,当模块装载后,夹层文件系统截获虚拟文件系统向下提交的请求;卸载模块后,则恢复原来的操作流程,虚拟文件系统层直接将请求提交底层文件系统,由底层文件系统具体实现各种请求。
7、根据权利要求6所述的透明扩充文件系统功能的方法,其特征在于,所述模块装载是通过调用初始化夹层文件系统来注册夹层文件系统。
8、根据权利要求7所述的透明扩充文件系统功能的方法,其特征在于,所述模块卸载是通过调用退出夹层文件系统来取消已注册的夹层文件系统。
CN 03138125 2003-06-05 2003-06-05 一种透明扩充文件系统功能的方法 Expired - Lifetime CN1266603C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 03138125 CN1266603C (zh) 2003-06-05 2003-06-05 一种透明扩充文件系统功能的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 03138125 CN1266603C (zh) 2003-06-05 2003-06-05 一种透明扩充文件系统功能的方法

Publications (2)

Publication Number Publication Date
CN1553325A CN1553325A (zh) 2004-12-08
CN1266603C true CN1266603C (zh) 2006-07-26

Family

ID=34323659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 03138125 Expired - Lifetime CN1266603C (zh) 2003-06-05 2003-06-05 一种透明扩充文件系统功能的方法

Country Status (1)

Country Link
CN (1) CN1266603C (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100407139C (zh) * 2005-03-31 2008-07-30 株式会社日立制作所 文件系统和构建增强其功能的方法、操作系统、记录装置
CN100386737C (zh) * 2005-05-30 2008-05-07 杨来 基于包结构的数据恢复方法
US7415489B2 (en) * 2006-01-10 2008-08-19 International Business Machines Corporation Managing an archived file system
CN102682129A (zh) * 2012-05-17 2012-09-19 北京像素软件科技股份有限公司 一种基于虚拟文件系统的数据读取方法
CN103020199A (zh) * 2012-12-05 2013-04-03 上海创图网络科技发展有限公司 适用于不同操作系统平台的虚拟文件系统及其应用
CN103593424A (zh) * 2013-11-07 2014-02-19 浪潮电子信息产业股份有限公司 一种软硬件压缩可配置的大数据处理系统
CN104573061B (zh) * 2015-01-23 2017-09-26 南开大学 一种支持扩展功能的虚拟文件系统装置和方法
CN104850401B (zh) * 2015-05-07 2018-04-24 南京大学 一种用PVFS替代Hadoop存储模块的方法
CN105205094A (zh) * 2015-08-12 2015-12-30 浪潮(北京)电子信息产业有限公司 一种多控共享存储系统
CN105511811B (zh) * 2015-12-07 2018-09-07 浪潮(北京)电子信息产业有限公司 一种提高文件系统吞吐量的方法与系统
CN106371934A (zh) * 2016-08-25 2017-02-01 成都索贝数码科技股份有限公司 一种基于windows文件系统驱动的第三方存储协议文件访问系统和访问方法
CN107479922A (zh) * 2017-08-04 2017-12-15 深圳市中兴物联科技有限公司 一种闪存数据管理方法、装置及计算机可读存储介质
CN113703667A (zh) * 2021-07-14 2021-11-26 深圳市有为信息技术发展有限公司 实时存储数据的文件系统处理方法、装置、车载终端及商用车

Also Published As

Publication number Publication date
CN1553325A (zh) 2004-12-08

Similar Documents

Publication Publication Date Title
US8538936B2 (en) System and method for data compression using compression hardware
CN1266603C (zh) 一种透明扩充文件系统功能的方法
US6330709B1 (en) Virtual machine implementation for shared persistent objects
US7010663B2 (en) Method and system for dividing a plurality of existing volumes of storage into a plurality of virtual logical units of storage
CN105027122B (zh) 压缩和重复数据删除分层驱动
US7783665B1 (en) Effective file-sharing among virtual environments
US8539481B2 (en) Using virtual hierarchies to build alternative namespaces
US20220222005A1 (en) Native key-value storage enabled distributed storage system
US7293033B1 (en) System and method for providing effective file-sharing in a computer system to allow concurrent multi-user access
US6961828B2 (en) Cluster system, memory access control method, and recording medium
US7334099B2 (en) Method and system for managing image files
US11327665B2 (en) Managing data on volumes
US10169124B2 (en) Unified object interface for memory and storage system
US11328089B2 (en) Built-in legal framework file management
CA2542162A1 (en) Preload library for transparent file transformation
US11321488B2 (en) Policy driven data movement
US7225314B1 (en) Automatic conversion of all-zero data storage blocks into file holes
WO2000063760A2 (en) A device driver for accessing computer files
US11106813B2 (en) Credentials for consent based file access
Madany et al. A class hierarchy for building stream-oriented file systems
US20120131199A1 (en) Systems and Methods for Layered Resource Management
Lea et al. COOL-2: an object oriented support platform built above the Chorus Micro-kernel
US7904686B2 (en) Data security for use with a file system
US20060253858A1 (en) Software service application and method of servicing a software application
US11443056B2 (en) File access restrictions enforcement

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20060726

CX01 Expiry of patent term