CN1472660A - 用于映射文件句柄的方法和装置 - Google Patents
用于映射文件句柄的方法和装置 Download PDFInfo
- Publication number
- CN1472660A CN1472660A CNA031453945A CN03145394A CN1472660A CN 1472660 A CN1472660 A CN 1472660A CN A031453945 A CNA031453945 A CN A031453945A CN 03145394 A CN03145394 A CN 03145394A CN 1472660 A CN1472660 A CN 1472660A
- Authority
- CN
- China
- Prior art keywords
- file system
- data element
- handle
- server
- value
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/954—Relational
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/953—Organization of data
- Y10S707/955—Object-oriented
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
根据本发明的一种形式,在映射文件句柄的方法中,为各文件系统协议创建协议数据元素。该协议数据元素标识数据元素相应协议的服务器句柄结构。为服务器文件系统创建文件系统数据元素。该文件系统数据元素包括文件系统标识(FSID)属性。响应访问服务器文件系统之一中的对象,创建相应文件系统数据元素的FSID属性值以重构对象的服务器句柄。创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
Description
技术领域
本发明涉及文件系统,特别涉及映射文件系统的文件句柄(handle)。
背景技术
基于计算机的信息存储系统如数据库和文件系统已被用户广泛地用于访问、存储、修改和更新持久性数据。在计算机系统中,文件系统定义对文件命名和逻辑放置以进行存储和检索的方式。通常,很多文件系统提供分级(树状)结构来管理文件。文件置于树状结构内所需位置的目录(或文件夹或子目录)中。
路径是从文件系统的根目录到特定文件的路线。路径名(或路径名称)是那个路径的说明。文件系统还包括通过目录结构指定文件路径的格式。可工作于分布计算环境的文件系统的公知例子包括Windows NT文件系统(“NTFS”)、分布文件系统(“DFS”)、网络文件系统(“NFS”)以及Andrew文件系统(“AFS”)。
文件句柄由工作于分布计算环境的各种文件系统协议例如NFS用作一种标识存储在文件系统中的对象的方式。在这些协议中,当首次访问或打开对象时,计算机客户(客户机”)从文件服务器(“服务器”)接收文件句柄(“句柄”)。客户机在随后的操作中使用该句柄来访问对象。在一些文件系统协议中,句柄对于客户机是不透明的。很多协议没有将内部结构施加于句柄。在一些文件系统协议中,句柄具有持久性,并且当文件服务器崩溃后仍然有效。
参照图1,示出计算机系统100。在系统100中,中间计算机110连接到多个服务器150和多个客户机120。图中示出服务器150和客户机120的大量实例。中间计算机110执行如文件缓存的功能。当客户机120使用中间计算机110首次试图访问或打开存储在服务器150的文件系统140中的对象130时,客户机120生成请求115。中间计算机110将请求115作为消息125中转到适当服务器例如服务器150。然后,服务器150以句柄例如服务器句柄160回复,它由中间计算机110用来在随后操作中访问对象130。要完成访问对象130的操作,中间计算机110将包括句柄例如客户机句柄170的回复发送到客户机120。
参照图2,客户机120使用客户机句柄170来向对象130进行随后的访问调用。因此,中间计算机110需要将服务器句柄映射到客户机句柄。例如,当接收到客户机句柄170时,中间计算机110将请求转发到由对应于客户机句柄170的服务器句柄160标识的适当服务器。
如果文件系统协议支持可变长度的句柄,则从服务器文件句柄160生成客户机文件句柄170的一种简单解决方案是串接服务器的唯一标识符和服务器句柄。然而,如果文件系统协议仅支持固定或限定长度的句柄,则此简单解决方案可能不适用。在这种情况下,映射问题的另一种简单解决方案是将新客户机句柄分配给每个新服务器-服务器句柄组合,并且创建存储映射的数据库。但是这对于每个文件系统对象都需要一个数据库条目,因此可能需要一个大数据库,从而导致不能有效缓存或者降低性能。另外,这样大的数据库需要大量存储器和/或盘空间。因此,需要改善文件句柄的映射。
发明内容
本发明解决前述需要。根据本发明的一种形式,在映射文件句柄的方法中,为各文件系统协议创建协议数据元素。该协议数据元素标识数据元素相应协议的服务器句柄结构。为文件系统创建文件系统数据元素。该文件系统数据元素包括文件系统标识(FSID)属性。响应访问服务器文件系统之一中的对象,创建相应文件系统数据元素的FSID属性值以重构对象的服务器句柄。创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
在另一方面,为文件系统对象创建用于客户机引用对象的客户机句柄。创建客户机句柄包括从对象的服务器句柄解析对象标识(OBID)属性。分析根据对象文件系统协议的协议数据元素来完成。
在另一方面,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且创建客户机句柄包括串接OBID和VFSID属性值。
通过阅读下面详细描述并且参考附图,本发明的目的、优点、另外方面和其他形式将会变得清楚。
附图说明
图1如上所述是根据现有技术的连接到多个客户机和多个服务器的中间计算机的方框图;
图2如上所述是根据现有技术使用客户机句柄和服务器句柄来重新访问对象的方框图;
图3A是根据本发明一个实施例的具有多个属性的协议数据元素;
图3B是根据本发明一个实施例的服务器句柄结构;
图3C示出根据本发明一个实施例的协议数据元素结构;
图3D是根据本发明一个实施例的具有多个属性的文件系统数据元素;
图3E示出根据本发明一个实施例的文件系统数据元素结构;
图4A是示出根据本发明一个实施例的将服务器文件句柄映射到客户机文件句柄的各方面的简化流程图;
图4B示出图4A的流程图的附加详细信息;
图5A是示出根据本发明一个实施例的将客户机文件句柄映射到服务器文件句柄的各方面的简化流程图;
图5B示出图5A的流程图的附加详细信息;
图6示出根据一个实施例的实现本发明的方法或装置各方面的计算机系统。
具体实施方式
本申请的所附权利要求陈述本申请人认为是本发明特征的新颖特性。通过参照下面结合附图阅读的对示例性实施例的详细描述,将更好地理解本发明、优选使用方式、目的及优点。
结合图1和2参照图3A,系统100中的中间计算机110可以访问多个服务器150。每个服务器150均可以包括多个文件系统140。各文件系统根据其自己的预定文件系统协议工作。文件系统140可以使用各种文件系统协议。一些文件系统140可以使用相同协议。其他可以使用没有其他文件系统140使用的协议。因此,在系统100中,文件系统140的数目可以或可以不与中间计算机110所访问的文件系统协议的数目相同。
在图3A中,示出根据本发明一个实施例的协议数据元素310结构。创建(或定义)该元素310的实例来帮助文件句柄的映射,下面将结合图3C对此进行描述。“数据元素”可以例如是数据库上下文中的记录、面向对象编程上下文中的对象或者置标语言上下文中的元素。“属性”可以例如是数据库记录的字段、对象的属性或元素的属性。
关于其结构,协议数据元素310具有多个属性,例如协议属性315、对象结构属性320和文件系统结构属性325。协议属性315的值提供标识文件系统协议的标号。存在由服务器150(图1和2)支持的多个文件系统协议。所支持的多个文件系统协议的例子可以包括NFS版本2、NFS版本3和NFS版本4。对象结构属性320的值定义服务器句柄160的对象标识(“OBID”)属性的结构例如位数。文件系统结构属性325的值定义服务器句柄160(图1和2)的文件系统标识(“FSID”)属性的结构例如位数。一种常见做法是大多数使用不透明文件句柄的网络文件系统在文件句柄中对OBID和FSID进行编码。即使在同一服务器内,所支持的各文件系统协议也可以对文件句柄使用不同位数。在本实施例中,服务器文件句柄160为32位,但其结构可以随所使用的协议而不同。也就是,虽然OBID和FSID合计达32位,但是所使用的特定协议定义多少位分配给OBID以及多少位分配给FSID属性。
参照图3B,示出根据本发明一个实施例的服务器句柄160的结构。OBID属性330唯一标识文件系统内的对象。FSID属性335唯一标识多个文件系统中的一个文件系统。
参照图3C,对于中间计算机110可以在系统100中访问的各文件系统协议,分别创建协议数据元素310的一个实例作为数据库340中的一个条目。响应被支持的新协议,协议数据库340通过配置和存储对应于各自新协议的新条目317、319等来更新。类似地,每次删除现有协议时,协议数据库340通过删除对应于被删除协议的条目317、319等来更新。例如,示出经过配置的协议数据元素310(图3A)即条目317,其中有值分配给各属性。更具体地说,对于条目317,协议属性315的值为“A”,对象结构属性320的值为“0-15”,表示服务器句柄的前16位用于协议A的OBID。文件系统结构属性325的值为“16-31”,表示服务器句柄的后16位用于协议A的FSID。各条目317等对应于所支持的协议。
参照图3D,示出根据本发明一个实施例的文件系统数据元素350的结构。创建即定义此元素350的实例来帮助映射文件句柄,下面将参照图3E对此进行描述。文件系统数据元素350,包括用于描述对象路径的文件系统路径属性355、用于唯一标识服务器的服务器标识符属性360、前述协议属性315、前述FSID属性335和用于唯一标识可由中间计算机访问的各文件系统的虚拟文件系统标识(VFSID)属性365。
参照图3E,对于中间计算机110可以在系统100中访问的各文件系统140,分别创建文件系统数据元素350的一个实例作为数据库370中的一个条目。响应被支持的新文件系统140,文件系统数据库370通过配置和存储对应于各自文件系统的新条目352、354等来更新。类似地,每次删除文件系统140时,文件系统数据库370通过删除对应于被删除文件系统的条目352等来更新。例如,文件系统路径属性355的值为“/export/fs1”,服务器标识符属性360的值为“2”,协议属性315的值为与协议数据库340(图3C)中的条目317相对应的值“A”。如果一个对象130尚未被首次访问,则其余两个属性例如FSID属性335和VFSID属性365被配置为空项,如条目354所示。当首次访问与文件系统数据库370的一个条目相对应的文件系统对象时,计算FSID属性335和VFSID属性365的值,并且将其存储在该条目中,如下面段落所述。
参照图4A,一个简化流程图示出根据一个实施例将服务器文件句柄160映射到客户机文件句柄170的特定操作。具体而言,图4A的流程图示出当首次访问与文件系统数据库370的一个条目相对应的文件系统140的对象130时如何计算FSID属性335和VFSID属性365的值,并且将其存储在该条目中。
如前所述,协议数据库340对于可由中间计算机110访问的各文件系统均具有一个条目。响应客户机120正在访问文件系统140中的对象130,根据由协议数据库340的元素320和325中对象文件系统140协议的值定义的OBID和FSID属性结构,将对象的服务器句柄160解析为其OBID属性330值和FSID属性335值。
下一步,搜索文件系统数据库370以查找与对象的文件系统140相对应的条目在数据库370中的VFSID值(假定VFSID已被赋值)。客户机句柄170通过串接OBID属性330和VFSID属性365来准备。
参照图5B,一个更详细的流程图示出根据一个实施例将服务器文件句柄160映射到客户机文件句柄170的各方面。在方框410,接收对象130的服务器句柄160(由服务器150生成)。(包括对象130的文件系统140由其文件系统路径标识。)在方框420,搜索文件系统数据库370以选择其文件系统路径属性355值与对象130的文件系统路径相对应的条目。在方框430,读取所选文件系统数据库370条目的文件系统协议。
在方框440,使用在方框430读取的协议作为键,在协议数据库340中选择匹配文件系统协议的条目。在方框450,根据所选协议数据库340条目的对象和文件系统结构属性320和325的值,从服务器文件句柄160解析OBID和FSID值。
如果所选文件系统数据库370条目的FSID属性335和VFSID属性365值为空项,则在方框460,将从服务器句柄解析的FSID值写入到所选条目的FSID属性335,并且分配VFSID值并将其写入到属性365。否则,只是在所选文件系统数据库条目中查询VFSID。在方框470,通过串接VFSID与从服务器句柄解析的OBID来创建客户机句柄170。通过对VFSID赋值并将其串接到OBID,所得到的客户机句柄的长度可以通过改变所赋值VFSID的长度来控制。
参照图5A,一个简化流程图示出根据一个实施例将客户机文件句柄170映射到服务器文件句柄160即从客户机句柄和数据库340和370重构服务器句柄。客户机文件句柄170分裂为由客户机句柄结构预定义的相应OBID属性330和VFSID属性365。VFSID属性365用作搜索文件系统数据库370的键来选择匹配FSID属性和文件系统协议。在协议数据库340中查询服务器句柄160的结构以获得所选文件系统协议,并且根据所示结构通过组合OBID属性330与FSID属性335来准备服务器句柄160。
参照图5B,一个更详细的流程图示出根据一个实施例将客户机文件句柄170映射到服务器文件句柄160。
在方框510,从客户机120接收客户机句柄170以重新访问对象130。在方框520,根据预定义客户机句柄结构解析客户机句柄170以识别OBID和VFSID值。在方框530,搜索文件系统数据库370以选择与从客户机句柄解析的VFSID相匹配的条目来查找服务器标识符属性360、FSID属性335和协议属性315的值。在方框540,读取所选条目的文件系统协议。在方框550,搜索协议数据库340以获得与在方框540读取的文件系统协议相匹配的条目。协议数据库340中的条目匹配表示相应文件系统协议的服务器文件句柄结构。在方框560,通过根据协议数据库340中的所选条目所示的结构组合从客户机句柄解析出的OBID属性330和在文件系统数据库370中查询出的FSID属性335,创建服务器句柄160。
参照图6,示出在一般可应用于根据本发明所述的各实施例的计算机系统610。系统610包括处理器615、易失性存储器620例如RAM、键盘625、定点设备630例如鼠标、非易失性存储器635例如ROM、硬盘、软盘、CD-ROM、DVD以及具有显示屏的显示设备605。存储器620和635用于存储可由处理器615执行以实现本发明方法的各实施例的程序指令。包括在系统610中的组件通过总线640互连。通信设备(未示出)也可以连接到总线640以允许在系统610与其他设备之间进行信息交换。
在不同实施例中,系统610采用各种形式,包括个人计算机系统、大型机计算机系统、工作站、因特网设备、PDA、带存储器的嵌入处理器等。也就是,应该理解,术语“计算机系统”包括具有从存储介质执行指令的处理器的任何设备。在一个实施例中,计算机系统610可以采用中间计算机110、服务器150和/或客户机120的形式。
存储介质最好存储用于实现本发明方法的各实施例的指令(也称作“软件程序”)。在不同实施例中,一个或多个软件程序可以采用各种方式来实现,包括基于过程的技术、基于组件的技术和/或面向对象的技术等。特定例子包括XML、C、C++、Java和Microsoft基础类(MFC)。
根据前面应该理解,本发明提供特定优点。在一方面,本发明是有利的,因为所需协议和文件系统数据库相对小,这是由于不需要针对每个所访问的文件系统对象都有一个数据元素即数据库条目,同时客户机句柄的长度可以通过改变VFSID的长度和使用填充(如果必要)来控制。另一个优点涉及文件系统的移动。也就是,根据本发明,通过改变文件系统数据库中的服务器标识符属性值,可以容易地解决将文件系统从第一服务器移到第二服务器。如果两个服务器对于文件系统使用相同FSID并且对于对象使用相同OBID,则可以不需要任何其他修改。
本实施例的描述是为说明的目的而给出的,它并不是彻底无遗漏的或者并不将本发明限定于所公开的形式。还可以考虑很多其他方面、修改和变化,并且它们均包括在所附权利要求的范围内。例如,虽然本发明的特定方面是在集中式(fully functioning)数据处理系统的上下文中描述的,但是本领域的普通技术人员应该理解,本发明的过程能够以各种形式的指令计算机可读介质的形式分布。不管实际上用来实现分布的信号承载介质的具体类型,本发明都同样适用。计算机可读介质的例子包括RAM、闪存、可记录类型介质如软盘、硬盘驱动器、ROM、CD-ROM、DVD和传输型介质如数字和/或模拟通信链接例如因特网。作为另一个例子,本领域的普通技术人员应该理解,本发明的过程能够进行分布,例如,由中间计算机110提供的功能可以容易地在服务器150和/或客户机120中实现。
在多个中间计算机将多个客户机连接到多个服务器的情况下,文件系统数据库370可以在中间计算机之间共享,从而允许任何中间计算机将服务器句柄映射到客户机句柄或者相反。
在一个实施例中,协议数据库340和文件系统数据库370具有持久性。例如,数据库可以通过将包括在数据库中的数据存储在持久性介质如磁盘上来使得具有持久性。如果中间计算机110崩溃,则当重启中间计算机110时可以从持久性数据中重新载入映射数据。
在一个实施例中,可由中间计算机110访问的多个文件系统所包括的文件系统数受限于VFSID属性365的长度。如果所有协议对于OBID和FSID都使用相同长度,则中间计算机110可以使用长度等于FSID长度的VFSID。如果不是所有实现都对于OBID和FSID使用相同长度,则中间计算机110计算任何协议实现所用的最小长度。然后,将VFSID串接到OBID,并且填充零,以形成标准文件句柄。VFSID长度可以预定为固定或可变。
作为对协议数据库340的替代或增强,中间计算机110可以使用各种启发性算法来推断服务器句柄160内OBID与FSID的位置。例如,中间计算机110可以具有OBID的知识,并且试着在服务器句柄160内定位该信息。另外,中间计算机110可以比较属于同一文件系统的服务器句柄,并且检查没有改变的部分以得出FSID位置的结论。
在一个实施例中,提供可用来根据下列语法对协议数据库340的每个条目或记录执行下列函数的指令:
OBJ(fh):提取服务器句柄的OBID部分,
FSP(fh):提取服务器句柄的FSID部分,以及
FH(obj,fsp):从OBID和FSID构造服务器句柄。
另外,对于所实现的各协议,下列常量根据所示语法定义服务器句柄160的结构:
L_OBJ:服务器句柄的OBID部分的位长,以及
L_FSP:服务器句柄的FSID部分的位长。
在一个实施例中,上述两个值的总和可能小于服务器句柄160的长度,因为服务器句柄160中的一些位在一些协议实现中可能未用。
重申一次,还可以考虑很多其他方面、修改和变化,并且它们均包括在所附权利要求的范围内。而且,应该理解,在所附权利要求中,操作不一定按照所述特定次序来执行。
Claims (35)
1.一种映射文件句柄的方法,所述方法包括:
为至少一个服务器的各文件系统协议创建协议数据元素,其中,所述服务器文件系统协议具有各自的预定义服务器句柄结构,并且所述协议数据元素标识协议数据元素的相应文件系统协议的服务器句柄结构;
为各服务器文件系统创建文件系统数据元素,其中,所述文件系统数据元素具有文件系统标识(FSID)属性;以及
为服务器文件系统之一中的对象创建对象相应文件系统数据元素的FSID属性值以重构对象的服务器句柄,其中,创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
2.如权利要求1所述的方法,包括:
为文件系统对象创建客户机句柄,其中,客户机句柄用于客户机引用对象,并且创建客户机句柄包括,根据对象文件系统协议的协议数据元素,从对象的服务器句柄解析对象标识(OBID)属性。
3.如权利要求2所述的方法,其中,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且创建客户机句柄包括串接OBID和VFSID属性值。
4.如权利要求1所述的方法,其中,所述协议数据元素包括:
协议属性,标识至少一种文件系统协议中的一种协议;
对象结构属性,定义该协议的服务器句柄的对象标识(OBID)属性的结构;以及
文件系统结构属性,定义该协议的服务器句柄的FSID属性的结构。
5.如权利要求1所述的方法,其中,当首次访问对象时,选择性地创建所述FSID值。
6.如权利要求3所述的方法,其中,创建所述文件系统数据元素包括在首次访问文件系统的一个对象之前将FSID和VFSID属性设为空值。
7.如权利要求3所述的方法,包括:
响应客户请求重新访问服务器文件系统对象,从客户句柄解析OBID和VFSID值;
选择文件系统数据元素之一,其中,所选文件系统数据元素具有与从客户句柄解析的VFSID值相匹配的值;
选择协议数据元素之一,其中,所选协议数据元素具有与所选文件系统数据元素的文件系统协议值相匹配的值;以及
重构对象的服务器句柄,其中,重构包括根据所选协议数据元素串接从客户句柄解析的OBID值和所选文件系统数据元素的FSID值。
8.一种计算机系统,包括:
处理器;以及
存储器,存储可通过处理器运行以映射文件句柄的指令,所述指令可用于执行如下操作:
为至少一个服务器的各文件系统协议创建协议数据元素,其中,所述服务器文件系统协议具有各自的预定义服务器句柄结构,并且所述协议数据元素标识协议数据元素的相应文件系统协议的服务器句柄结构;
为各服务器文件系统创建文件系统数据元素,其中,所述文件系统数据元素具有文件系统标识(FSID)属性;以及
为服务器文件系统之一中的对象创建对象相应文件系统数据元素的FSID属性值以重构对象的服务器句柄,其中,创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
9.如权利要求8所述的计算机系统,其中,所述指令可用于执行如下操作:
为文件系统对象创建客户机句柄,其中,客户机句柄用于客户机引用对象,并且创建客户机句柄包括,根据对象文件系统协议的协议数据元素,从对象的服务器句柄解析对象标识(OBID)属性。
10.如权利要求9所述的计算机系统,其中,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且创建客户机句柄包括串接OBID和VFSID属性值。
11.如权利要求8所述的计算机系统,其中,所述协议数据元素包括:
协议属性,标识至少一种文件系统协议中的一种协议;
对象结构属性,定义该协议的服务器句柄的对象标识(OBID)属性的结构;以及
文件系统结构属性,定义该协议的服务器句柄的FSID属性的结构。
12.如权利要求8所述的计算机系统,其中,当首次访问对象时,选择性地创建所述FSID值。
13.如权利要求10所述的计算机系统,其中,创建所述文件系统数据元素包括在首次访问文件系统的一个对象之前将FSID和VFSID属性设为空值。
14.如权利要求10所述的计算机系统,其中,所述指令可用于执行如下操作:
响应客户请求重新访问服务器文件系统对象,从客户句柄解析OBID和VFSID值;
选择文件系统数据元素之一,其中,所选文件系统数据元素具有与从客户句柄解析的VFSID值相匹配的值;
选择协议数据元素之一,其中,所选协议数据元素具有与所选文件系统数据元素的文件系统协议值相匹配的值;以及
重构对象的服务器句柄,其中,重构包括根据所选协议数据元素串接从客户句柄解析的OBID值和所选文件系统数据元素的FSID值。
15.一种用于映射文件句柄的计算机程序产品,所述计算机程序产品包括其中嵌入有用于使控制电路执行如下操作的程序逻辑的计算机可读存储介质:
为至少一个服务器的各文件系统协议创建协议数据元素,其中,所述服务器文件系统协议具有各自的预定义服务器句柄结构,并且所述协议数据元素标识协议数据元素的相应文件系统协议的服务器句柄结构;
为各服务器文件系统创建文件系统数据元素,其中,所述文件系统数据元素具有文件系统标识(FSID)属性;以及
为服务器文件系统之一中的对象创建对象相应文件系统数据元素的FSID属性值以重构对象的服务器句柄,其中,创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
16.如权利要求15所述的计算机程序产品,其中,所嵌程序逻辑用于使控制电路执行如下操作:
为文件系统对象创建客户机句柄,其中,客户机句柄用于客户机引用对象,并且创建客户机句柄包括,根据对象文件系统协议的协议数据元素,从对象的服务器句柄解析对象标识(OBID)属性。
17.如权利要求16所述的计算机程序产品,其中,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且创建客户机句柄包括串接OBID和VFSID属性值。
18.如权利要求15所述的计算机程序产品,其中,所述协议数据元素包括:
协议属性,标识至少一种文件系统协议中的一种协议;
对象结构属性,定义该协议的服务器句柄的对象标识(OBID)属性的结构;以及
文件系统结构属性,定义该协议的服务器句柄的FSID属性的结构。
19.如权利要求15所述的计算机程序产品,其中,当首次访问对象时,选择性地创建所述FSID值。
20.如权利要求17所述的计算机程序产品,其中,创建所述文件系统数据元素包括在首次访问文件系统的一个对象之前将FSID和VFSID属性设为空值。
21.如权利要求17所述的计算机程序产品,其中,所嵌程序逻辑用于使控制电路执行如下操作:
响应客户请求重新访问服务器文件系统对象,从客户句柄解析OBID和VFSID值;
选择文件系统数据元素之一,其中,所选文件系统数据元素具有与从客户句柄解析的VFSID值相匹配的值;
选择协议数据元素之一,其中,所选协议数据元素具有与所选文件系统数据元素的文件系统协议值相匹配的值;以及
重构对象的服务器句柄,其中,重构包括根据所选协议数据元素串接从客户句柄解析的OBID值和所选文件系统数据元素的FSID值。
22.一种计算机系统,包括:
一装置,用于为至少一个服务器的各文件系统协议创建协议数据元素,其中,所述服务器文件系统协议具有各自的预定义服务器句柄结构,并且所述协议数据元素标识协议数据元素的相应文件系统协议的服务器句柄结构;
一装置,用于为各服务器文件系统创建文件系统数据元素,其中,所述文件系统数据元素具有文件系统标识(FSID)属性;以及
一装置,用于为服务器文件系统之一中的对象创建对象相应文件系统数据元素的FSID属性值以重构对象的服务器句柄,其中,创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
23.如权利要求22所述的计算机系统,包括:
一装置,用于为文件系统对象创建客户机句柄,其中,客户机句柄用于客户机引用对象,并且用于创建客户机句柄的装置包括一装置,用于根据对象文件系统协议的协议数据元素,从对象的服务器句柄解析对象标识(OBID)属性。
24.如权利要求23所述的计算机系统,其中,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且用于创建客户机句柄的装置包括用于串接OBID和VFSID属性值的装置。
25.如权利要求22所述的计算机系统,其中,所述协议数据元素包括:
协议属性,标识至少一种文件系统协议中的一种协议;
对象结构属性,定义该协议的服务器句柄的对象标识(OBID)属性的结构;以及
文件系统结构属性,定义该协议的服务器句柄的FSID属性的结构。
26.如权利要求22所述的计算机系统,其中,当首次访问对象时,选择性地创建所述FSID值。
27.如权利要求24所述的计算机系统,其中,用于创建所述文件系统数据元素的装置包括一装置,用于在首次访问文件系统的一个对象之前,将FSID和VFSID属性设为空值。
28.如权利要求24所述的计算机系统,包括:
一装置,响应客户请求重新访问服务器文件系统对象,从客户句柄解析OBID和VFSID值;
一装置,选择文件系统数据元素之一,其中,所选文件系统数据元素具有与从客户句柄解析的VFSID值相匹配的值;
一装置,选择协议数据元素之一,其中,所选协议数据元素具有与所选文件系统数据元素的文件系统协议值相匹配的值;以及
一装置,重构对象的服务器句柄,其中,用于重构的装置包括一装置,用于根据所选协议数据元素串接从客户句柄解析的OBID值和所选文件系统数据元素的FSID值。
29.一种装置,包括:
处理器;
存储器,存储可通过处理器运行以映射文件句柄的指令,所述指令可用于执行如下操作:
为至少一个服务器的各文件系统协议创建协议数据元素,其中,所述服务器文件系统协议具有各自的预定义服务器句柄结构,并且所述协议数据元素标识协议数据元素的相应文件系统协议的服务器句柄结构;
为各服务器文件系统创建文件系统数据元素,其中,所述文件系统数据元素具有文件系统标识(FSID)属性;以及
为服务器文件系统之一中的对象创建对象相应文件系统数据元素的FSID属性值以重构对象的服务器句柄,其中,创建值包括根据协议数据元素之一解析对象的服务器句柄的FSID。
30.如权利要求29所述的装置,包括:
为文件系统对象创建客户机句柄,其中,客户机句柄用于客户机引用对象,并且创建客户机句柄包括,根据对象文件系统协议的协议数据元素,从对象的服务器句柄解析对象标识(OBID)属性。
31.如权利要求30所述的装置,其中,文件系统数据元素具有虚拟文件系统标识(VFSID)属性,并且创建客户机句柄包括串接OBID和VFSID属性值。
32.如权利要求29所述的装置,其中,所述协议数据元素包括:
协议属性,标识至少一种文件系统协议中的一种协议;
对象结构属性,定义该协议的服务器句柄的对象标识(OBID)属性的结构;以及
文件系统结构属性,定义该协议的服务器句柄的FSID属性的结构。
33.如权利要求29所述的装置,其中,当首次访问对象时,选择性地创建所述FSID值。
34.如权利要求31所述的装置,其中,创建所述文件系统数据元素包括在首次访问文件系统的一个对象之前将FSID和VFSID属性设为空值。
35.如权利要求31所述的装置,包括:
响应客户请求重新访问服务器文件系统对象,从客户句柄解析OBID和VFSID值;
选择文件系统数据元素之一,其中,所选文件系统数据元素具有与从客户句柄解析的VFSID值相匹配的值;
选择协议数据元素之一,其中,所选协议数据元素具有与所选文件系统数据元素的文件系统协议值相匹配的值;以及
重构对象的服务器句柄,其中,重构包括根据所选协议数据元素串接从客户句柄解析的OBID值和所选文件系统数据元素的FSID值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/191,508 | 2002-07-08 | ||
US10/191,508 US6980994B2 (en) | 2002-07-08 | 2002-07-08 | Method, apparatus and computer program product for mapping file handles |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1472660A true CN1472660A (zh) | 2004-02-04 |
CN1279468C CN1279468C (zh) | 2006-10-11 |
Family
ID=29999992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB031453945A Expired - Fee Related CN1279468C (zh) | 2002-07-08 | 2003-07-07 | 用于映射文件句柄的方法和装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6980994B2 (zh) |
CN (1) | CN1279468C (zh) |
TW (1) | TWI243315B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110770731A (zh) * | 2017-06-28 | 2020-02-07 | 苹果公司 | 授权系统 |
CN112860625A (zh) * | 2021-02-01 | 2021-05-28 | 北京小米移动软件有限公司 | 数据获取方法、数据存储方法、装置、设备及存储介质 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030182256A1 (en) * | 2002-03-25 | 2003-09-25 | David Otey | Device, system, and method for creating a bill of materials |
JP2004310621A (ja) * | 2003-04-10 | 2004-11-04 | Hitachi Ltd | 記憶装置システムにおけるファイルアクセス方法及びファイルアクセスのためのプログラム |
JP4349871B2 (ja) * | 2003-09-09 | 2009-10-21 | 株式会社日立製作所 | ファイル共有装置及びファイル共有装置間のデータ移行方法 |
US20050065915A1 (en) * | 2003-09-23 | 2005-03-24 | Allen Wayne J. | Method and system to add protocol support for network traffic tools |
US7814131B1 (en) | 2004-02-02 | 2010-10-12 | Network Appliance, Inc. | Aliasing of exported paths in a storage system |
US8898206B1 (en) * | 2010-04-28 | 2014-11-25 | Netapp, Inc. | Mechanism for distributed inode to path traversal in a striped volume system |
US8341198B1 (en) * | 2011-09-23 | 2012-12-25 | Microsoft Corporation | File system repair with continuous data availability |
WO2015176675A1 (en) * | 2014-05-21 | 2015-11-26 | Coyote Bioscience Co., Ltd. | Thermal cycler lid configurations and uses thereof |
US10372607B2 (en) * | 2015-09-29 | 2019-08-06 | Veritas Technologies Llc | Systems and methods for improving the efficiency of point-in-time representations of databases |
US10009428B2 (en) * | 2015-12-07 | 2018-06-26 | Dell Products L.P. | Method and system for reconnecting server message block (SMB) clients to persistent file handles |
US9946726B2 (en) * | 2015-12-07 | 2018-04-17 | Dell Products L.P. | Method and system for execution of disconnection from and reconnection to persistent handles |
US10038752B2 (en) * | 2015-12-07 | 2018-07-31 | Dell Products L.P. | Method and system for execution of client-initiated operations on file handles in a distributed server system |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5566328A (en) | 1995-01-23 | 1996-10-15 | Tandem Computers Incorporated | Reconstructing directory pathnames from file handles in a computer system |
US5713017A (en) | 1995-06-07 | 1998-01-27 | International Business Machines Corporation | Dual counter consistency control for fault tolerant network file servers |
US5742817A (en) | 1995-12-08 | 1998-04-21 | Emc Corporation | Method and apparatus for file server addressing |
US5864669A (en) | 1996-07-11 | 1999-01-26 | Microsoft Corporation | Method and system for accessing a particular instantiation of a server process |
US6148377A (en) | 1996-11-22 | 2000-11-14 | Mangosoft Corporation | Shared memory computer networks |
US5909540A (en) | 1996-11-22 | 1999-06-01 | Mangosoft Corporation | System and method for providing highly available data storage using globally addressable memory |
US5987506A (en) | 1996-11-22 | 1999-11-16 | Mangosoft Corporation | Remote access and geographically distributed computers in a globally addressable storage environment |
US6026474A (en) | 1996-11-22 | 2000-02-15 | Mangosoft Corporation | Shared client-side web caching using globally addressable memory |
US6460043B1 (en) * | 1998-02-04 | 2002-10-01 | Microsoft Corporation | Method and apparatus for operating on data with a conceptual data manipulation language |
US6085198A (en) * | 1998-06-05 | 2000-07-04 | Sun Microsystems, Inc. | Integrated three-tier application framework with automated class and table generation |
US6493717B1 (en) * | 1998-06-16 | 2002-12-10 | Datafree, Inc. | System and method for managing database information |
US6138120A (en) | 1998-06-19 | 2000-10-24 | Oracle Corporation | System for sharing server sessions across multiple clients |
US6105038A (en) | 1998-06-23 | 2000-08-15 | Microsoft Corporation | Hysteresis system and method for achieving a mean constant cost per action in a computer system |
US6163777A (en) | 1998-06-23 | 2000-12-19 | Microsoft Corporation | System and method for reducing location conflicts in a database |
US6105039A (en) | 1998-06-23 | 2000-08-15 | Microsoft Corporation | Generation and validation of reference handles |
US6185564B1 (en) | 1998-06-23 | 2001-02-06 | Microsoft Corporation | Generation and validation of reference handles in a multithreading environment |
US6178423B1 (en) | 1998-06-23 | 2001-01-23 | Microsoft Corporation | System and method for recycling numerical values in a computer system |
US6721722B1 (en) * | 1999-11-24 | 2004-04-13 | Unisys Corporation | Cool ice data wizard calculation service |
US6871245B2 (en) * | 2000-11-29 | 2005-03-22 | Radiant Data Corporation | File system translators and methods for implementing the same |
-
2002
- 2002-07-08 US US10/191,508 patent/US6980994B2/en not_active Expired - Fee Related
-
2003
- 2003-07-03 TW TW092118190A patent/TWI243315B/zh not_active IP Right Cessation
- 2003-07-07 CN CNB031453945A patent/CN1279468C/zh not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110770731A (zh) * | 2017-06-28 | 2020-02-07 | 苹果公司 | 授权系统 |
CN110770731B (zh) * | 2017-06-28 | 2023-11-28 | 苹果公司 | 授权系统 |
CN112860625A (zh) * | 2021-02-01 | 2021-05-28 | 北京小米移动软件有限公司 | 数据获取方法、数据存储方法、装置、设备及存储介质 |
CN112860625B (zh) * | 2021-02-01 | 2024-05-14 | 北京小米移动软件有限公司 | 数据获取方法、数据存储方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW200405178A (en) | 2004-04-01 |
US20040006565A1 (en) | 2004-01-08 |
TWI243315B (en) | 2005-11-11 |
CN1279468C (zh) | 2006-10-11 |
US6980994B2 (en) | 2005-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1279468C (zh) | 用于映射文件句柄的方法和装置 | |
US6430563B1 (en) | Integrated knowledge provider with logical hyperlinks | |
US7130872B2 (en) | Multi-tiered caching mechanism for the storage and retrieval of content multiple versions | |
US6804674B2 (en) | Scalable Content management system and method of using the same | |
KR101086575B1 (ko) | 타입 경로 인덱싱 | |
CN1790322A (zh) | 从多个格式不同的物理表创建逻辑表的方法和系统 | |
EP1756737B1 (en) | Method for selecting a processor for query execution | |
CN1713179A (zh) | 在对象模型中的影响分析 | |
CN1808429A (zh) | 用于处理搜索查询的方法和系统 | |
CN1701587A (zh) | 用于本地因特网协议地址翻译的方法和设备 | |
CN1766876A (zh) | 用于管理结构化文件的系统和方法 | |
CN101060539A (zh) | 采用统一入口网站地址集成和推送多网站内容的方法及系统 | |
CN1547137A (zh) | 基于数据库的海量文件管理系统与方法 | |
US20090171926A1 (en) | Processing Structured Documents Stored in a Database | |
US7437367B2 (en) | Pack URI scheme to identify and reference parts of a package | |
CN1791873A (zh) | 还原数据库系统中的对象和从属对象 | |
US20030220914A1 (en) | Method for managing data in a network | |
US20030115172A1 (en) | Electronic file management | |
CN110543570B (zh) | 基于哈希寻址的知识图谱存储方法 | |
CN1237445C (zh) | 分布式文件系统快速路径解析的方法 | |
CN1783091A (zh) | 在文档中查找搜索串并在移动通信设备上查看的方法 | |
JP2011203939A (ja) | ファイル管理装置、ファイル管理方法、およびファイル管理プログラム | |
CN1813253A (zh) | 对共享的只读文件系统中的病毒的检测和报警 | |
Thorn et al. | A peer-to-peer, value-oriented XML Store | |
Spinellis | Index-based persistent document identifiers |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20061011 Termination date: 20150707 |
|
EXPY | Termination of patent right or utility model |