利用占位符的文件管理的制作方法_3

文档序号:9732048阅读:来源:国知局
占位符可以具有一个标记,其指示是否要令文件的内容在离线时是可得到的。正如先前指出的,客户端可能周期性地失去与远端存储装置的连接性,而与占位符相关联的内容正是从该远端存储装置上找到。如果所述标记被置位,则当客户端在线时,对于占位符的内容可被下载到本地存储装置,并且被保存在那里,以使得即使当远端存储装置不可得到时所述内容仍旧是可得到的。
[0049]各种实施例可以具有包括上面指示的数据中的任何一个或多个的占位符。
[0050]占位符可被使用来即使当文件的内容驻留在远端时也给出文件驻留在本地文件系统上的错觉。即使当远端文件系统是不可达到时,仍旧可以保持这个错觉。这可以通过把占位符插入到本地文件系统的名称空间而做到。文件系统可被修改成识别占位符并且酌情显示关于由占位符代表的文件的信息。例如,当用户导航通过本地文件系统的名称空间时,文件系统可以显示对于占位符的名称和相关元数据。
[0051]占位符可被使用来大大地减小所消耗的存储空间的量。例如,不是在本地存储用于大的视频的内容,而是可以使用占位符来指示视频是可得到的。因为占位符可以使用比视频的实际内容小得多的空间量,所以即使相当小的本地存储设备也可以包括用于含有非常大的内容量的巨大文件集的占位符。
[0052]占位符可以当远端存储系统是不可得到时使用。例如,当网络连接性丢失或是不可得到时,机器可以使用本地存储的占位符来导航文件系统的名称空间和对文件系统的名称空间执行其它操作。
[0053]即使在客户端机器被关闭时,占位符仍旧持续存在。因此,当客户端机器被重新启动时,占位符仍旧是可得到的。这种持续存在行为可以通过把占位符存储在客户端的本地存储装置而被实现。
[0054]图2-3是框图,其总的代表被配置成使用按照本文所描述主题的一些方面的占位符的系统的示范性构件。图2-3上所示的构件是示范性的,且并不意味着全部包括可能需要的或可被包括的构件。而且,在不背离本文所描述主题的一些方面的精神或范围的情况下,构件的数目在其它的实施例中可以是不同的。在某些实施例中,结合图2-3描述的构件可被包括在其它构件中(被显示的或未显示的)或可被放置在子构件中,而不背离本文所描述主题的一些方面的精神或范围。在某些实施例中,结合图2-3描述的构件和/或功能可被跨多个设备地分布。
[0055]当在本文中使用时,术语构件应当被理解为包括硬件,诸如设备的全部或一部分、一个或多个软件模块或者其一些部分的集合、一个或多个软件模块或其一些部分和一个或多个设备或其一些部分的某种组合,等等。
[0056]例如,图2-3所示的构件可以通过使用一个或多个计算设备而被实施。这样的设备可包括例如个人计算机、服务器计算机、手持或膝上型设备、微处理器系统、基于微控制器的系统、机顶盒、可编程消费电子装置、网络PC、小型计算机、大型计算机、蜂窝电话、个人数字助理(PDA)、游戏设备、打印机、包括机顶盒的器具、媒体中心、或其它器具、汽车嵌入的或附着的计算设备、其它移动设备、包括任何的上述系统或设备的分布式计算环境等等。
[0057]可被配置成实施图2-3的一个或多个构件的示范性设备包括图1的计算机110。
[0058]构件还可以包括代码或用代码表示。代码包括指示计算机要采取的动作的指令。代码还可以包括除了计算机要采取的动作以外的其它信息,诸如数据、资源、变量、定义、关系、关耳关等等。
[0059]代码可以由计算机执行。当代码由计算机执行时,这可以被称为进程。当在本文中使用时,术语“进程”和它的变体可包括一个或多个传统的进程、线程、构件、库、执行任务的对象、等等。进程可以以硬件、软件或硬件和软件的组合来实施。在实施例中,进程是能够执行动作或被用于执行动作的无论怎么称谓的任何机制。进程可被分布在多个设备或单个设备上。代码可以在用户模式、内核模式、某种其它模式、或上述模式的组合等等下执行。
[0060]转到图2,系统200可包括客户端205、远端存储系统210、本地存储装置215、占位符220,以及可包括其它构件(未示出)。客户端205可以直接访问本地存储装置215,并且可以通过使用云网络而被连接到远端存储系统210。
[0061]虽然在本文有时使用术语“客户端”和“服务器”,但应当理解,客户端可以在具有典型地与服务器相关联的硬件和/或软件的机器上被实施,同样地,服务器可以在具有典型地与台式计算机、个人计算机或移动计算机相关联的硬件和/或软件的机器上被实施。而且,客户端有时可充当服务器,且反之亦然。有时,更频繁地充当客户端或服务器的两个或更多个实体可以同时地是对等体、服务器或客户端。在实施例中,客户端和服务器可以被实施在同一个物理机器上。
[0062]而且,当在本文中使用时,每个术语“服务器”和“客户端”可以涉及到一个或多个物理的或虚拟的实体、在一个或多个物理的或虚拟的实体上执行的一个或多个进程等等。因此,服务器可包括在其上执行一个或多个进程的实际的物理节点、在其上执行一个或多个进程的虚拟节点、在一个或多个节点上执行的服务、共同提供服务的一组节点等等。服务可包括在一个或多个物理的或虚拟的实体上执行的一个或多个进程。而且,单个进程可以实施一个或多个服务器。
[0063]本地存储装置215可包括能够存储数据的任何存储介质。例如,本地存储装置215可包括易失性存储器(例如,高速缓存器)和非易失性存储器(例如,永久存储装置)。术语数据应被广义地理解为包括可以由一个或多个计算机存储单元代表的任何东西。逻辑上,数据可被表示为在易失性或非易失性存储器中的一系列的1和0。在具有非二进制存储介质的计算机中,数据可以按照存储介质的能力被表示。数据可被组织为不同类型的数据结构,包括:诸如数字、字母等等那样的简单的数据类型,分级的、被链接的或其它相关的数据类型,和包括多个其它数据结构或简单数据类型的数据结构等等。数据的某些例子包括信息、程序代码、程序状态、程序数据、其它数据等等。
[0064]本地存储装置215可以是外部的、内部的,或包括在客户端205内部的某些构件和在客户端205外部的某些构件。在一个实现中,本地存储装置215可包括被收容(house)在宿有客户端205的机器中的任何存储装置。在另一个实现中,本地存储装置215可包括直接连接到宿有客户端205的机器的存储装置。例如,本地存储装置215可以经由USB链路、IEEE1394链路、光链路、另外的硬连线链路等等被连接到机器。
[0065]远端存储系统210可包括一个或多个计算机,其被安排成存储数据和提供对数据的访问。当在本文中使用时,访问可包括读数据、写数据、删除数据、更新数据、包括以上的两项或更多项的组合等等。远端存储系统210可经由诸如云之类的网络被连接到客户端205。云是一个术语,其经常被使用来作为对于互联网的比喻。它利用这个想法:计算、软件、数据访问、存储和其它资源可以由被连接到互联网的实体提供,而不需要用户知道关于递送那些资源的计算基础结构的位置或其它细节。
[0066]在一个例子中,远端存储系统210可包括数据中心,在其中计算设备被放置在单个物理位置。在另一个例子中,远端存储系统210可包括在不同的位置处被附着到云的计算设备和存储装置。在一个例子中,远端存储系统210可包括单个服务器或其它计算设备,其提供到一个或多个存储装置的访问。在一个例子中,远端存储系统210可包括不在客户端205的局域网(LAN)上的计算设备。在另一个例子中,远端存储系统210可包括没有收容在客户端205中或没有直接连接到客户端205的任何存储装置。在另一个例子中,远端存储系统210可包括这样的存储装置,即:当客户端205没有连接到可从其访问该存储装置的网络时客户端205不可得到该存储装置。
[0067]在本文有时使用术语“云存储系统”。这并不是打算对于本文的教导可应用到的远端存储系统进行限制,而是提供了在不背离本文所描述主题的一些方面的精神或范围的情况下可被使用的远端存储系统的例子。每当在本文中使用术语“云存储系统”时,都要明白:在其它实施例中,可以使用其它类型的远端存储系统,而不背离本文所描述主题的一些方面的精神或范围。
[0068]虽然本地存储装置215对客户端205可以几乎是连续可用的,或者可以通过用户可得到的手段(例如,通过插入一连接器)而使得容易得到本地存储装置215,但有时远端存储系统210可能变为对于客户端205是不可得到的。例如,如果客户端205寄宿在膝上型计算机上,则膝上型计算机可能移动到不能进行互联网接入的位置。作为另一个例子,网络运转中断(outage)可能中断客户端205到远端存储系统210的连接性。作为另一个例子,由于维护或其它目的,远端存储系统210可能变为不可操作的或可能被关闭或断开连接。没有占位符,当与远端存储系统210的连接性丢失时,在整个文件内容从本地存储装置215上是不可得到的情形下,客户端205可能不能导航名称空间或对文件执行操作。
[0069]占位符220举例说明了在被存储于本地存储装置215上的占位符中可以存储的各种示范性数据字段。虽然图2上只显示了一个占位符,但更常见地,在本地存储装置215上将存储有多个占位符。例如,对于给定的名称空间,如果远端文件系统对象的内容不完全存在于本地存储装置215,则对于每个远端文件系统对象可以有一个占位符。作为另一个例子,对于给定的名称空间,即使当远端文件系统对象的整个内容都存在于本地存储装置215时,对于远端文件系统对象也可以有占位符。这第二
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1