CN100377099C - 为复制文件管理多个文件状态的方法 - Google Patents

为复制文件管理多个文件状态的方法 Download PDF

Info

Publication number
CN100377099C
CN100377099C CNB2004100082440A CN200410008244A CN100377099C CN 100377099 C CN100377099 C CN 100377099C CN B2004100082440 A CNB2004100082440 A CN B2004100082440A CN 200410008244 A CN200410008244 A CN 200410008244A CN 100377099 C CN100377099 C CN 100377099C
Authority
CN
China
Prior art keywords
copy
local copy
rollback
release status
module
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 - Fee Related
Application number
CNB2004100082440A
Other languages
English (en)
Other versions
CN1525328A (zh
Inventor
N·艾德尔斯坦
L·安东诺夫
H·萨里巴
H·刘
S·J·雷森
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of CN1525328A publication Critical patent/CN1525328A/zh
Application granted granted Critical
Publication of CN100377099C publication Critical patent/CN100377099C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05BLOCKS; ACCESSORIES THEREFOR; HANDCUFFS
    • E05B65/00Locks or fastenings for special use
    • E05B65/0025Locks or fastenings for special use for glass wings
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05BLOCKS; ACCESSORIES THEREFOR; HANDCUFFS
    • E05B47/00Operating or controlling locks or other fastening devices by electric or magnetic means
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05BLOCKS; ACCESSORIES THEREFOR; HANDCUFFS
    • E05B9/00Lock casings or latch-mechanism casings ; Fastening locks or fasteners or parts thereof to the wing
    • E05B9/08Fastening locks or fasteners or parts thereof, e.g. the casings of latch-bolt locks or cylinder locks to the wing

Abstract

向服务器提供修改的文件打开活动,当用户执行修改的打开时,它初始打开文件而不锁住该文件。当用户表示(直接地或隐含地)该用户试图或企图打开文件时,则该文件能对编辑锁定。以此方式,当用户请求一文件时默认的活动是打开该文件而不拒绝其它用户访问该文件。因此,当用户指示应发生编辑时,获得对该文件的锁定。

Description

为复制文件管理多个文件状态的方法
相关专利申请
本专利申请涉及共同受让的待批美国专利申请,代理公文号MSFT-1651,题为“Managing File Replication in Application”。
发明的领域
本发明涉及文档管理领域,尤其涉及在使用从服务器拷贝的文件期间管理多个文件状态的方法和系统。
发明的背景
在网络化计算环境中,计算机用户在文档方面与网络上的其它用户协同工作是很普遍的。此类网络可能是局域网(LAN)、广域网(WAN)、因特网等。在这种合作中,每个用户能通过使用如通用应用软件、专门为作为合作的对象的文件类型设计的软件等来创建和编辑电子文件。
通过在所有在一个文件上合作用户能访问的位置上维护电子文件的主版本,合作变得可能。在传统的网络化计算环境中,能存在一台服务器计算机和一台或多台用户计算机。服务器对每台用户计算机可访问,因而能存储和控制由那些用户协同工作的文件的主版本。
当在一个电子文件上合作时,用户访问服务器上的文件。然后用户通过以对用户可用的任何方式借助应用程序更改文件,而在该文件上工作。例如,若应用程序是文字处理器,电子报表,数据库等,应用程序能提供执行如附加,编辑,拷贝,和/或删除文件等任务的方法。在执行任何更改之后,若用户希望保留对文件的更改,并具有必要的许可,可以在服务器上保存对该文件的版本的改变。
虽然具有集中存储的文件对合作是好的,要求访问服务器却有所不利。为了访问文件的服务器拷贝,用户必须连接服务器。使用复制引擎来解决此问题。那样的引擎允许用户具有服务器上文件的本地拷贝。即使当服务器拷贝得不到时,本地拷贝允许用户审阅文件并用该文件工作。复制引擎管理文件的服务器状态到用户的本地机器的复制,给予用户离线访问,同时试图保持在服务器拷贝和本地拷贝之间的一致性。
然而,此解决方法具有缺点,使用现有的复制引擎,一致性是难以或不可能保持的。服务器计算机上的文件版本可能在用户未连接时改变。例如,在服务器上的文件版本是版本A。此版本A通过复制引擎拷贝到用户的计算机。当用户“离线”(与服务器断开)时,用户编辑该文件,产生版本B。同时第二用户编辑该文件的服务器版本,创建版本C。当用户再次连接服务器时,用户将访问用户的当前版本(B)和服务器版本(C)。当前的复制引擎只提供拷贝用户的版本复盖服务器版本的能力,(在此情况第二用户的改变丢失了)以及拷贝服务器的版本复盖用户的版本的能力。用户得不到有关版本A改变的信息。若用户通过保存版本C并舍弃改变而同步,则用户不再能得到版本B。
由于这些缺点,希望有管理从服务器复制的文件的改进的方法。
发明的内容
实现了服务器文件的复制技术,它存储复制文件的三个拷贝。这三个文件可使用户改善冲突的解决方法。
影子文件是所知的在服务器上文件的最近的好版本的拷贝。当文件初始从服务器拷贝时,对影子文件作出额外拷贝。影子文件被带到本地机器以改善同步和冲突管理的性能并提供离线体验。每当存在到服务器的连接且服务器拷贝从包含在影子拷贝中的版本改变时,影子文件从服务器拷贝更新。这是此文件更新的唯一时间。
本地拷贝是用户的工作拷贝。用户对此文件作出的无论什么拷贝被存入本地拷贝中。本地拷贝被用于更新服务器拷贝(在用户的改变需要加到服务器的情况),或识别冲突(当用户的和服务器的版本均改变时)。
还存储回退(rollback)文件。若本地拷贝改变,回退文件是由本地拷贝作出的拷贝(例如当冲突被消解或服务器版本被拷贝到本地拷贝时)。此拷贝保证有能力将用户返回到用户看到的最近知道的拷贝。
附图简介
当结合附图阅读时,上面的概要和下面较佳实施例的详述将更容易理解。为说明的目的,在图中示出本发明的示例性实施例;然而本发明不限于所揭示的特定方法和手段,附图是:
图1是示出实现本发明的各方面的示例性计算环境的方框图;
图2是示出在服务器计算机,网络,用户计算机,其它计算机之间的关系的例子的功能原理图;
图3是示出按本发明的实施例的状态迁移的状态图;
图4是示出按本发明的实施例文件复制的流程图;和
图5是示出按本发明的实施例文件复制的流程图。
图示的实施例的详述
概貌
实现服务器文件复制技术,在使用复制时对服务器上的每个文件存储三个拷贝。本地文件存储是该文件的用户的工作拷贝。影子文件是服务器文件的最新知道的好版本(服务器上文件的版本)拷贝。在冲突消解或复制更新它之前,回退文件存储最近本地拷贝的拷贝。
当文件开始从服务器拷贝成本地拷贝时,对影子文件作出额外的拷贝。这样做是为了改善同步性能并实现冲突管理。
当用户的计算机连接到服务器时发生复制。影子文件与服务器版本比较。若它们相同,则自从最近同步起对文件的服务器版本未作更新。若它们不同,服务器版本拷贝到影子版本。本地版本保存成回退,影子版本保存成本地版本。
版本状态跟踪本地和服务器文件的改变状态。向用户提供关于版本状态和用于冲突管理的选项的信息。
示例性计算装置
图1和下面的讨论试图提供能实现本发明的合适的计算环境的简要描述。然而应该理解,手持式、便携式和其它计算设备以及所有类型的计算对象预期可以结合如上所述的本发明使用。因此,虽然下面描述通用计算机,但这仅是例子,本发明能用其它计算设备实现,如具有网络/总线互操作能力和互动的瘦客户。因此,本发明能在其中只包含很少或最小限度客户资源的网络化的主机服务的环境中实现,例如客户设备只作为网络/总线的接口的网络化环境,诸如放在电器中的对象或其它计算设备和对象。本质上,能存储或检索数据的任何地方是本发明运行的理想的或合适的环境。
虽然不是必要的,但本发明能通过由设备或对象的服务的开发者使用的操作系统实现,和/或包括在按本发明操作的应用软件中。软件能以计算机可执行指令的上下文环境描述,诸如拟由一台或多台如客户工作服务器或其它设备执行的程序模块。通常,程序模块包括例行程序、程序、对象、组件、数据结构等,它们完成特定任务或实现特定的抽象数据类型。通常,程序模块的功能可以组合或按需要分布在各种环境中。此外,本专业熟练人士理解,本发明能用其它计算机配置实施。适合使用本发明的其它众知的计算系统、环境和/或配置包括个人计算机(pc)、自动取款机、服务器计算机、手持或膝上设备、多处理器系统、基于微处理器的系统、可编程消费者电子设备、网络pc、电器、灯、环境控制单元、小型计算机、大型计算机等,但不限于这些。本发明也能在分布式计算环境中实施,在那里任务由通过通讯网络/总线或其它数据传输介质连结的远程处理设备完成。在分布式计算环境中,程序模块能位于包括存储器存储设备的本地和远程计算机的存储介质中,而客户节点能转而表现得象服务器节点。
图1示出能实现本发明的合适的计算系统环境100的例子,虽然上面已讲明,计算环境100仅是适合的计算环境的一个例子,不试图对本发明的使用范围及功能提出任何限止。计算环境100也不应解释为对示例性操作环境100中示出的一个组件或其组合有任何依赖性和需求。
参考图1,实现本发明的示例性系统包括以计算机系统110形式的通用计算装置。计算机系统110的组件能包括处理单元120、系统存储器130、和连接包括系统存储器的各种系统组件到处理单元120的系统总线121,但不限于这些。系统总线121能是各类总线结构的任一种,包括存储器总线或存储控制器,外围总线,和使用任一种总线体系结构的局部总线。例如,此类体系结构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强的ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线、和外设部件互连(PCI)总线(也称Mezzanine总线),但不限于这些。
计算机系统110通常包括各种计算机可读介质。计算机可读介质是能由计算机110访问的任何可得到的介质,并包括易失和非易失性介质,可移动和不可移动介质。例如,计算机可读介质能包括计算机存储介质和通信介质,但不限于这些。计算机存储介质包括易失和非易失性的、可移动和不可移动介质,它们以任何方法或技术实现,用于存储信息,如计算机可读指令、数据结构、程序模块或其它数据。计算机存储介质包括随机存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存或其它存储技术、光盘只读存储器(CDROM)、数字视频光盘(DVD)或其它光盘存储器、盒式磁带、磁带、磁盘存储器或其它磁存储设备、或任何其它能存储所需信息并能由计算机系统110访问的介质,但不限于这些。通讯介质通常以诸如载波或其它传输机制的调制数据信号的形式体现计算机可读指令、数据结构、程序模块、或其它数据,并包括任何信息提交介质。术语“调制数据信号”指的是具有一个或多个特征以某种方式设定或改变以在信号中编码信息的信号。例如,但不限于,通讯介质包括有线网络、直线连接那样的有线介质,和如声音、RF、红外和其它无线介质那样的无线介质。任何上述的组合也包括在计算机可读介质范围中。
系统存储器130包括以易失或非易失存储器形式的计算机存储介质,如只读存储器(ROM)131和随机存储器(RAM)132。包括帮助(如在起动期间)在计算机系统110中的单元之间传输信息的基本例行程序的基本输入/输出系统133(BIOS)通常存储在ROM 131。RAM 132通常包含即可访问和/或当前由处理单元120操作的数据和/或程序模块。例如,图1示出操作系统134,应用程序135,其它程序模块136,和程序数据137,但这并非限制。
计算机系统110也能包括可移动/不可移动、易失/非易失计算机存储介质。只作为例子,图1示出读写不可移动非易失磁介质的硬盘驱动器141,读写可移动非易失磁盘152的磁盘驱动器151,和读写如CDROM或其它光介质的可移动非易失光盘156的光盘驱动器155。其它能用于示例性操作环境的可移动/不可移动、易失/非易失计算机存储介质包括盒式磁带、闪存卡、数字视频盘、数字视频带、固态RAM、固态ROM等,但不限于这些。硬盘驱动器141通常通过如接口140那样的不可移动存储器接口连接到系统总线121,磁盘驱动器151和光盘驱动器通常由如接口150那样的可移动存储器接口连结系统总线121。
上面讨论并示于图1的驱动器及其相关的计算机存储介质提供了计算机可读指令、数据结构、程序模块和对计算机系统110的其它数据的存储。例如在图1中,硬盘驱动器141示作存储操作系统144、应用程序145、其它程序模块146和程序数据147。注意,这些组件可与操作系统134、应用程序135、其它程序模块136和程序数据137相同或不同。操作系统144,应用程序145,其它程序模块146和程序数据147在这里给予不同的序号,说明至少它们是不同的拷贝。用户能通过如键盘162、通常称为鼠标、轨迹球或触摸垫的定位设备161等输入设备输入命令和信息到计算机系统110。其它输入设备(未示出)可包括话筒、操纵杆、游戏垫、卫星碟式天线扫描器等。这些和其它输入设备常常通过连接到系统总线121的用户输入接口160连接到处理单元120。但能通过其它接口和总线结构连接,如并行口、游戏口或通用串行总线(USB)。如Northbridge那样的图象接口也能连接系统总线121。Northbridge是与CPU或主处理器120通讯的芯片组,并负责加速图象口(GP)的通讯。一个或多个图象处理器(GPU)184可与图象接口182通讯。在这方面,GPU 184通常包括诸如寄存器存储器那样的片上存储器,且GPU 184与视频存储器186通讯。然而GPU 184仅是协处理器的一个例子,在计算机系统110中能包括各种协处理器。监视器191或其它显示设备也通过如视频接口190那样的接口连接到系统总线121,视频接口转而与视频存储器186通讯。除了监视器191计算机系统还包括其它外围输入设备,如扬声器197和打印机,它们通过输出外围接口195连接。
计算机系统110能使用到一个或多个如远程计算机180那样的远程计算机的逻辑连接在网络化或分布式环境中操作。远程计算机可为个人计算机、服务器、路由器、网络PC、对等设备或其它公共的网络节点,并通常包括上述关于计算机系统110的许多或所有元件,虽然在图1中只示出存储设备181。图1中示出的逻辑连接包括局域网(LAN)171和广域网(WAN)173,但也能包括其它网络/总线。此类网络环境在家庭、办公室、企业范围计算机网络、内联网和因特网中是常见的。
当在LAN网络环境中使用时,计算机系统110通过网络接口或适配器170连接到LAN 171。当在WAN网络环境中使用时,计算机系统110通常包括用于通过如因特网那样的WAN 173建立通讯的调制解调器172或其它装置。内置或外接的调制解调器能通过用户输入接口160或其它合适的机制连接到系统总线121。在网络环境中,就计算机系统110论及的程序模块或其部分可存入远程存储设备。例如,图1示出驻留在存储设备181的远程应用程序185,但不限于此。可以理解,示出的网络连接是示例性的,能使用在计算机之间建立通讯链路的其它方法。
考虑到个人计算和因特网的汇集,已经并正在开发各种分布式计算架构。个人和企业用户一样可得到用于应用和计算设备的无缝互操作的和Web-使能的界面,使得计算活动日渐成为面向Web浏览器或面向网络。
例如,MICROSOFT@的.NET平台包括服务器、诸如基于Web的数据存储和可下载的设备软件那样的积木式服务。虽然这里的示例性实施例结合驻留在计算设备上的软件描述,本发明的一个或多个部分也能通过操作系统、应用编程界面(API)或在任何协处理器、显示设备以及请求对象之间的“中间人”对象实现,使得本发明的操作借助所有.NET语言和服务完成,支持它们或经它们访问,还可在其它分布式计算构架中完成。
对复制的文件管理多个文件状态
复制
参考图2,服务器计算机通过网络215连接用户计算机220。当服务器允许用户计算机220打开文件。文件复制允许用户计算机220与另外用户计算机270上的用户一起在服务器文件的本地版本上工作。该文件的授权版本作为服务器拷贝存储在服务器计算机200上。文件复制管理器230在用户计算机220中创建该文件的三个拷贝。它们是本地拷贝232、影子拷贝234和回退拷贝238。
在用户计算机220上由应用240打开本地拷贝232。在一个实施例中,在用户计算机220的用户的名字空间中有本地拷贝的拷贝。在此实施例,本地拷贝232跟踪在名字空间拷贝中的改变,而名字空间的拷贝被应用240使用。
在使用名字空间的地方,名字空间拷贝不受文件复制管理器230管理。在此实施例中,名字空间文件是用户通常访问的文件。此文件能是他们创建的文件或他们经过电子邮件接收的文件。若文件是通过e-mail接收的文件,用户接收“always live attachment”(始终活动的附件”(带服务器信息)并保存一个拷贝到他们的本地计算机。仅保持此文件的动作就意味着有两个拷贝,一个是在电子邮件存储,一个在本地机器中。本地机器的拷贝是名字空间拷贝。附件中的服务器信息允许文件的复制并创建本地拷贝232、影子拷贝234和回退拷贝238。名字空间拷贝在由用户使用时通过复制管理器220与本地拷贝232同步。
影子拷贝234维持用户计算机220最近得知的服务器拷贝210的版本。当用户计算机220连接到服务器计算机时,影子拷贝与服务器拷贝210相同。
回退拷贝238存储用户查看或编辑的最近得知的拷贝。当本地拷贝232在复制过程已被覆盖,但用户希望返回其以前状态时,使用回退拷贝238提供用户阅读或编辑的最后拷贝。
如图所示,文件复制管理器230可与应用240分离,或集成到应用240中。在这两种情况下,用户从文件复制管理器来的消息和信息和收集用户输入并为用户显示消息的用户界面可集成到对用户应用240呈现的显示中。向用户提供的有关在文件的两个版本之间作出的改变(下面进一步讨论)也可使用应用240的显示表示。另外,可以利用应用240的功能来产生给用户显示的信息。
版本状态
根据本发明一实施例的文件复制技术的活动可参考版本状态来理解。对每个复制的文件,版本状态描述在用户计算机220处对该文档在发生什么。这些版本状态是基于以前的版本状态和在本地拷贝232、影子拷贝234和服务器拷210(该文档的主拷贝)中发生的活动。
第一状态是“当前的”。当本地拷贝232与影子拷贝234相同时,版本状态即为当前的。例如,当存储在用户计算机220上的文件上载到服务器计算机200用于合作时,本地拷贝232与影子拷贝234相同。类似地,当服务器计算机200上的文件首次复制到用户计算机220,本地拷贝与影子拷贝234相同。如图3的状态图所示,当对本地拷贝232作出改变使其不再与影子拷贝相同时,状态从“当前的”状态300迁移到“修改的”状态310。当此修改向上送到服务器或被舍弃,使得本地拷贝232再次等同于影子拷贝234时,则状态返回到“当前的”状态300。
当用户计算机220连接到服务器计算机220,并注意到服务器拷贝210已经更新时,对影子拷贝234作新的服务器拷贝。本地拷贝232作为回退拷贝238被保存,然后影子拷贝234被拷贝到本地拷贝232。在一个实施例中,用户查看的最近拷贝被跟踪。因此,若用户已查看到版本A,且版本B从服务器下载,回退将是版本A的拷贝。但若版本C现从服务器下载,回退将不改变成版本B,除非版本B已被用户访问。因此,回退保存用户看到的最近版本。
如图3所见,若服务器文件改变被下载到影子文件且回退拷贝被存储,而状态是“当前的”状态300,则新状态将是“回退可用”320。然而,若这发生在“修改的”状态310,则既有保持在本地拷贝232中的对服务器拷贝的以前版本的本地改变,又有导致服务器拷贝210的新版本的某些其它改变(从其它用户)。这导致“冲突”状态330。
当出现“冲突”状态330时,必须对在本地拷贝232和影子拷贝234中的可能出现的两种不同的改变加以辨析。例如,用户可选择放弃在本地拷贝232中作出的改变,或覆盖此改变。从该辨析得到的文件作为本地拷贝232被存储,且状态返回到“修改的”。如以前所注意的,当本地拷贝232中的改变上推到服务器或被舍弃以利于当前的服务器版本时,状态改变到“当前的”。
上载改变到服务器
在每个版本状态,同步选项对用户是可用的。这些选项可单独从文件复制管理230可得到,也可集成到应用240。若改变已作出,上载(“上推”)该改变到服务器拷贝210是一个选项。此同步选项使用户能连接到服务器计算机200(若连接可用)并将本地拷贝232与服务器拷贝210同步。
若版本状态是当前的300或回退可用320,则未作出修改,所以没有文件上推到服务器。若版本状态是修改状态310,确定在本地拷贝232和影子拷贝234之间的差别。此过程称为对两个文件“产生差别”。若版本状态是修改状态310,影子拷贝234与服务器拷贝210相同(否则版本状态将是冲突状态330)。因此,整个文件不需要上载到服务器-一个包括有关本地拷贝232和影子拷贝234之间差别的所有信息的文件包含所有必要的信息。服务器计算机200使用此差别文件更新服务器拷贝210。一旦服务器拷贝210被更新,它被拷贝到影子文件234,且版本状态相应地改变。
差别文件的产生能离线完成。在从用户计算机220不能达到服务器计算机200时,用户可在一个时间请求同步。若发生此事,则创建差别文件,并将该活动排队,使得服务器计算机下次能访问时,继续上载过程。
若版本状态是冲突状态330,必须开始冲突用户界面。此冲突用户界面使用户能解决在本地拷贝232和影子拷贝234之间的差别,例如,通过将本地拷贝232保存在用户计算机220的其它地方,并拷贝影子拷贝234做成新的本地拷贝232。用户界面也可能是如在上面列出的有关应用中描述的更加复杂的界面。
在一个实施例中,通过校验来保证当文件在当前状态300或回退可用状态320时没有作出本地改变,并保证上载差别文件是成功的。若这些校验失败得到修改状态310或冲突状态330。
回退版本
对用户可用另外的选项是当版本状态是回退可用320或修改的310。则对用户可得到的用户界面可使它们回退到存储在回退拷贝238中用户以前查看或编辑的文档的版本。
在一个实施例中,用户界面向用户显示,指出该文档已被其它用户更新。用户界面允许用户选择存储在回退拷贝238中的以前版本,或查看在存储在回退拷贝238中的以前版本与存储在当前拷贝232中的当前版之间的差别。
回退拷贝只在本发明的某些实施例出现。如图4所示,按照何时存储本地拷贝(步骤400)和存储影子拷贝(步骤410)来在用户计算机上发生服务器文件的文件复制。为修改访问本地拷贝是允许的(步骤420)。在某些实施例中,这是通过本地拷贝的名字空间拷贝完成的。当用户计算机连接服务器计算机且主文件改变时,则影子拷贝被更新(步骤430)。在一个实施例中,为复制跟踪版本状态。
如图5所示,在回退拷贝被保存时,再次按照何时存储本地拷贝(步骤500)和存储影子拷贝(步骤510)来在用户计算机上发生服务器文件的文件复制。为修改访问本地拷贝是允许的(步骤520)。当用户计算机连接到服务器计算机且主文件改变时,影子拷贝被更新(步骤530)。在此步骤,当影子文件被更新时,若必要回退拷贝也更新。首先本地拷贝作为回退拷贝被存储,然后本地拷贝用影子文件更新。在一个实施例中,仅当自从前一次回退以来访问过本地拷贝时才这样做。
文件复制管理器220可以是独立的应用,或者是整体或部分地集成到与拟复制的文件一起使用的应用中。
结论
如以上所述,虽然本发明的示例性实施例已结合各种计算设备和网络体系结构予以描述,但基本概念能应用到希望通过服务器实现合作的任何计算设备或系统。因此本发明的方法和系统能应用到各种应用和设备中。虽然这里选择了示例性编程语言,名字和例子作为各种选择的代表,这些语言,名字和例子并非作为限制。本领域一般人士理解,有许多方法提供目标码,它们达到由本发明达到的同样类似的或等价的系统和方法。
这里描述的各种技术能在合适的地方用硬件或软件或两者的组合实现。因此本发明的方法和装置或其某些方面或部分能采取嵌入到实物介质的程序码(即指令)形式,如软盘,CD-ROM,硬盘驱动器,或任何其它机器可读存储介质,其中当程序码被加载到如计算机那样的机器并由它执行时,该机器变成实施本发明的装置。在程序码在可编程计算机中执行的情况,计算设备通常包括处理器,由处理器可读的存储介质(包括易失和非易失的存储器和/或存储单元),至少一个输入设备,和至少一个输出设备。一个或多个能如通过使用数字处理API等利用本发明的信号处理服务器的程序最好以高级过程的或面向对象的编程语言实现,以便与计算机通讯。然而若希望,程序能以汇编或机器语言实现。在任何情况,语言是可编译或可解释的语言,并结合硬件实施。
本发明的方法和装置也能通过以程序码形式嵌入的通讯实现,通讯是经过某些发送介质发送,如经过电线或电缆,通过光纤,或经过任何其他发送形式,其中当程序码被接收,被加载到如EPROM,网关阵列,可编程逻辑设备(PCD),客户计算,视频记录机等那样的机器并由其执行时,具有如上面示例性实施例所述的信号处理能力的接收机器成为实施本发明的装置。当在通用处理器上实施时,程序码结合处理器提供单独的装置,它能操作以引用本发明的功能。此外,结合本发明使用的任何存储技术能总是硬件和软件的结合。
虽然本发明已结合各个图的较佳实施例描述,可以理解,能使用其它类似的实施例,或为实现本发明的相同功能对所描述的实施例作出修改或增加而不偏离本发明。此外应该强调,正在考虑包括手持设备操作系统和其它针对应用的操作系统的各种计算机平台,尤其是因为无线连网设备的数量继续激增。因此,本发明不限于单个实施例,而是按所附的权利要求构筑在更宽广的范围中。

Claims (26)

1.一种用于在第一计算机上复制在第二计算机上的主文件的方法,其特征在于,它包括
在所述第一计算机上存储所述主文件的本地拷贝;
在所述第一计算机上存储所述主文件的影子拷贝;
允许为修改访问所述本地拷贝;以及
当所述主文件改变时更新所述影子拷贝。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
存储与所述复制有关的版本状态,
且,其中为修改允许访问所述本地拷贝的所述步骤包括:
当所述本地拷贝被修改时改变所述版本状态。
3.如权利要求2所述的方法,其特征在于,当所述本地拷贝被修改时,改变所述版本状态的所述步骤包括:
设置所述版本状态到修改的状态,表明所述本地拷贝已被改变。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
存储与所述复制相关的版本状态;
且其中当所述主文件改变时更新所述影子拷贝的所述步骤包括:
当所述更新发生时,改变所述版本状态。
5.如权利要求1所述的方法,其特征在于,当所述主文件改变时更新所述影子拷贝的所述步骤包括:
检测所述本地拷贝已被修改;和
消解在所述本地拷贝和所述更新的影子拷贝之间的冲突。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
存储与所述拷贝相关的版本状态;
且其中消解在所述本地拷贝和所述更新的影子拷贝之间的冲突的所述步骤包括:
改变所述版本状态到冲突状态,指示出存在冲突。
7.如权利要求5所述的方法,其特征在于,所述消解在所述本地拷贝和所述更新的影子拷贝之间的冲突的所述步骤包括:
呈现冲突界面;
接受冲突消解命令;和
执行所述冲突消解命令。
8.如权利要求7所述的方法,其特征在于,所述执行消解冲突命令包括:
判断对所述主文件是否应作出改变;和
通知所述第二计算机拟作出的所述改变。
9.如权利要求8所述的方法,其特征在于,通知所述第二计算机拟作出的所述改变的所述步骤包括:
产生有关在所述本地拷贝和所述主文件之间差别的差别信息;和
向所述第二计算机通报所述差别信息。
10.如权利要求1所述的方法,其特征在于,在所述主文件改变时,更新所述影子拷贝的所述步骤包括:
存储所述本地拷贝作为回退拷贝;和
用所述影子拷贝更新所述本地拷贝。
11.如权利要求10所述的方法,其特征在于,存储所述本地拷贝作为回退拷贝的所述步骤包括:
呈现回退界面;
接受回退命令;和
响应所述回退命令显示所述回退拷贝。
12.如权利要求10所述的方法,其特征在于,所述方法还包括:
存储与所述复制相关的版本状态;
且其中存储所述本地拷贝作为回退拷贝的所述步骤包括:
将所述版本状态改变到回退可用状态。
13.如权利要求10所述的方法,其特征在于,还包括:
跟踪本地拷贝是否已被访问;
且其中存储所述本地拷贝作为回退拷贝的所述步骤包括:
仅当所述本地拷贝已被访问时存储所述本地拷贝作为回退拷贝。
14.一种用于复制主文件的计算机系统,所述主文件位于第二计算机上,所述的计算机系统至少断续地可操作地接连所述第二计算机,其特征在于,包括:
本地拷贝存储器,用于在第一计算机上存储所述主文件的本地拷贝;
影子拷贝存储器,在所述第一计算机上存储所述主文件的影子拷贝;
本地拷贝修改模块,用于允许为修改访问所述本地拷贝;和
影子拷贝更新模块,当所述主文件改变时更新所述影子拷贝存储器。
15.如权利要求14所述的计算机系统,其特征在于,还包括:
版本状态存储器,用于存储与所述复制有关的版本状态;
且其中所述本地拷贝修改模块在所述本地拷贝被修改时改变所述版本状态。
16.如权利要求15所述的计算机系统,其特征在于,所述本地拷贝修改模块改变所述版本状态到修改的状态指示出所述本地拷贝已被修改。
17.如权利要求14所述的计算机系统,其特征在于,所述系统还包括:
版本状态存储器,用于存储与所述复制相关的版本状态;
且其中所述影子拷贝更新模块在所述更新发生时改变所述版本状态。
18.如权利要求14所述的计算机系统,其特征在于,影子拷贝更新模块包括:
本地拷贝修改检测模块,用于检测所述本地拷贝已被修改;和
冲突消解模块,用于消解在所述本地拷贝和所述更新的影子拷贝之间的冲突。
19.如权利要求18所述的计算机系统,其特征在于,所述方法还包括:
版本状态存储器,用于存储与所述复制相关的版本状态;
且所述冲突消解决模块改变所述版本状态到冲突状态指示存在冲突。
20.如权利要求18所述的计算机系统,其特征在于,所述冲突消解模块包括:
冲突界面模块,用于呈现冲突界面;
冲突消解输入模块,用于接受冲突消解命令;和
冲突消解执行模块,用于执行所述冲突消解命令。
21.如权利要求20所述的计算机系统,其特征在于,所述冲突消解执行模块包括:
改变判断模块,用于判断对所述主文件是否作出改变;和
第二计算机改变通讯模块,用于将拟作出的改变通知第二计算机。
22.如权利要求14所述的计算机系统,其特征在于,所述第二计算机改变通讯模块包括:
差别产生模块,用于产生关于在所述本地拷贝与所述主文件之间差别的差别信息;和
第二计算机通讯模块,用于将所述差别通知所述第二计算机。
23.如权利要求14所述的计算机系统,其特征在于,所述影子拷贝更新模块包括:
回退存储器,用于存储所述本地拷贝作为回退拷贝;和
本地拷贝更新模块,用于用所述影子拷贝更新所述本地拷贝。
24.如权利要求23所述的计算机系统,其特征在于,所述本地拷贝更新模块包括:
呈现回退界面的回退界面呈现模块;
接受回退命令的回退命令接受模块;和
用于响应所述回退命令而显示所述回退拷贝的回退拷贝显示器。
25.如权利要求23所述的计算机系统,其特征在于,所述系统还包括:
版本状态存储器,用于存储与所述复制相关的版本状态;
且其中所述回退存储器改变所述版本状态到回退可用状态。
26.如权利要求23所述的计算机系统,其特征在于,所述系统还包括:
本地拷贝访问跟踪模块,用于跟踪本地拷贝是否已被访问;
且其中用于存储所述本地拷贝作为回退拷贝的所述回退存储器包括:
用于仅当所述本地拷贝已被访问时存储所述本地拷贝的本地拷贝访问逻辑。
CNB2004100082440A 2003-02-28 2004-03-01 为复制文件管理多个文件状态的方法 Expired - Fee Related CN100377099C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/376,873 2003-02-28
US10/376,873 US8010491B2 (en) 2003-02-28 2003-02-28 Method for managing multiple file states for replicated files

Publications (2)

Publication Number Publication Date
CN1525328A CN1525328A (zh) 2004-09-01
CN100377099C true CN100377099C (zh) 2008-03-26

Family

ID=32771511

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100082440A Expired - Fee Related CN100377099C (zh) 2003-02-28 2004-03-01 为复制文件管理多个文件状态的方法

Country Status (19)

Country Link
US (1) US8010491B2 (zh)
EP (1) EP1452982A3 (zh)
JP (1) JP4643915B2 (zh)
KR (1) KR101076851B1 (zh)
CN (1) CN100377099C (zh)
AU (1) AU2004200462A1 (zh)
BR (1) BRPI0400364A (zh)
CA (1) CA2458249C (zh)
CO (1) CO5550075A1 (zh)
IL (1) IL160353A0 (zh)
MX (1) MXPA04001929A (zh)
MY (1) MY147939A (zh)
NO (1) NO331680B1 (zh)
NZ (1) NZ531279A (zh)
PL (1) PL365551A1 (zh)
RU (1) RU2344468C2 (zh)
SG (1) SG125106A1 (zh)
TW (1) TWI316667B (zh)
ZA (1) ZA200401310B (zh)

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7370025B1 (en) * 2002-12-17 2008-05-06 Symantec Operating Corporation System and method for providing access to replicated data
JP2004265193A (ja) * 2003-03-03 2004-09-24 Canon Inc 情報処理方法、情報処理装置、サーバ装置の制御方法、サーバ装置
US7546291B2 (en) * 2004-02-19 2009-06-09 Microsoft Corporation Data source task pane
US8135755B2 (en) 2005-06-29 2012-03-13 Microsoft Corporation Templates in a schema editor
US7716168B2 (en) * 2005-06-29 2010-05-11 Microsoft Corporation Modifying table definitions within a database application
US7546286B2 (en) * 2004-02-19 2009-06-09 Microsoft Corporation Offline multi-table data editing and storage
GB2445368A (en) * 2005-04-14 2008-07-09 Rajesh Kapur A method and system for preserving access to a system in case of a disaster allowing transaction rollback
US8255362B2 (en) * 2005-06-08 2012-08-28 rPath Methods, systems, and computer program products for provisioning software using local changesets that represent differences between software on a repository and a local system
CN100373347C (zh) * 2005-07-13 2008-03-05 华硕电脑股份有限公司 一种具自动备份功能的电子装置
CN100438416C (zh) * 2005-12-02 2008-11-26 无锡永中科技有限公司 一种实现文件协同处理的方法
US7743026B2 (en) * 2006-01-31 2010-06-22 Microsoft Corporation Redirection to local copies of server-based files
CN101042688B (zh) * 2006-03-21 2011-06-01 北京北大方正电子有限公司 一种报刊版面网络标引的方法及系统
US20080140732A1 (en) * 2006-12-11 2008-06-12 Bentley System, Inc. Method and system for sharing file based data
JP4432087B2 (ja) * 2006-12-26 2010-03-17 インターナショナル・ビジネス・マシーンズ・コーポレーション データベース更新管理システム、プログラムおよび方法
US8554734B1 (en) * 2007-07-19 2013-10-08 American Megatrends, Inc. Continuous data protection journaling in data storage systems
US8190987B2 (en) 2007-10-25 2012-05-29 Microsoft Corporation Private views of data and local calculations during real time collaboration
WO2009062182A1 (en) 2007-11-09 2009-05-14 Topia Technology Architecture for management of digital files across distributed network
US7941399B2 (en) 2007-11-09 2011-05-10 Microsoft Corporation Collaborative authoring
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US20090164970A1 (en) * 2007-12-20 2009-06-25 At&T Knowledge Ventures, L.P. System for Managing Automated Report Versions
US8239345B2 (en) * 2007-12-27 2012-08-07 Microsoft Corporation Asynchronous replication
US8135838B2 (en) * 2008-04-08 2012-03-13 Geminare Incorporated System and method for providing data and application continuity in a computer system
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8825594B2 (en) 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
US8706694B2 (en) * 2008-07-15 2014-04-22 American Megatrends, Inc. Continuous data protection of files stored on a remote storage device
WO2010116539A1 (en) * 2009-04-08 2010-10-14 Hitachi, Ltd. File detection device and method
US8346768B2 (en) * 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
US8612380B2 (en) * 2009-05-26 2013-12-17 Adobe Systems Incorporated Web-based collaboration for editing electronic documents
US9298834B2 (en) 2009-05-26 2016-03-29 Adobe Systems Incorporated User presence data for web-based document collaboration
WO2011034548A1 (en) * 2009-09-21 2011-03-24 Hewlett-Packard Development Company, L.P. System including a virtual disk
US8612398B2 (en) * 2010-03-11 2013-12-17 Microsoft Corporation Clean store for operating system and software recovery
US9652440B2 (en) * 2010-05-27 2017-05-16 Microsoft Technology Licensing, Llc Concurrent utilization of a document by multiple threads
US9665582B2 (en) * 2010-08-04 2017-05-30 Quantum Corporation Software, systems, and methods for enhanced replication within virtual machine environments
CN101937310B (zh) * 2010-09-06 2014-07-16 宇龙计算机通信科技(深圳)有限公司 文件复制方法及终端
US20120158891A1 (en) * 2010-12-21 2012-06-21 Microsoft Corporation Techniques for universal representation of digital content
US9924002B1 (en) 2012-06-21 2018-03-20 EMC IP Holding Company LLC Managing stateless processes
CN104737135B (zh) * 2012-10-25 2017-07-25 富士通株式会社 信息处理终端以及同步控制方法
CN104123126B (zh) * 2013-04-26 2018-04-10 阿里巴巴集团控股有限公司 一种用于生成合并冲突记录列表的方法和装置
CN104750536B (zh) 2013-12-30 2018-08-21 华为技术有限公司 一种实现虚拟机自省的方法和装置
WO2020025124A1 (en) * 2018-08-01 2020-02-06 Huawei Technologies Co., Ltd. Device and method for rollback of a structure modification operation
AU2020267130B2 (en) * 2019-04-30 2022-11-03 Clumio, Inc. Cloud-based data protection service
CN110262997A (zh) * 2019-05-06 2019-09-20 阿里巴巴集团控股有限公司 用于管理公共文件的方法和系统
CN110795252A (zh) * 2019-09-20 2020-02-14 北京浪潮数据技术有限公司 一种多用户串行编辑文件的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5493728A (en) * 1993-02-19 1996-02-20 Borland International, Inc. System and methods for optimized access in a multi-user environment
CN1146816A (zh) * 1994-04-21 1997-04-02 英国电讯有限公司 数据存储器
US5664186A (en) * 1992-05-21 1997-09-02 International Business Machines Corporation Computer file management and backup system
US5721916A (en) * 1994-11-18 1998-02-24 Microsoft Corporation Method and system for shadowing file system structures from multiple types of networks
CN1326155A (zh) * 2000-05-25 2001-12-12 英业达股份有限公司 即时生成文件版本的方法

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3588084T2 (de) 1984-11-14 1996-10-17 Canon Kk Bildverarbeitungssystem
JPH04181423A (ja) 1990-11-16 1992-06-29 Fujitsu Ltd バージョン管理方式
US5278979A (en) * 1990-12-20 1994-01-11 International Business Machines Corp. Version management system using pointers shared by a plurality of versions for indicating active lines of a version
US5280612A (en) * 1991-11-26 1994-01-18 International Business Machines Corporation Multiple version database concurrency control system
JPH05241933A (ja) * 1992-02-28 1993-09-21 Mitsubishi Electric Corp 分散データ管理システムのファイル保全方式
JP3213766B2 (ja) 1992-03-16 2001-10-02 株式会社日立製作所 レプリケートファイル更新システム
US5630116A (en) * 1993-08-11 1997-05-13 Nec Corporation Automatic delivery system for master files in a distributed processing system
US5835911A (en) 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5806078A (en) 1994-06-09 1998-09-08 Softool Corporation Version management system
US5694596A (en) 1995-05-25 1997-12-02 Kangaroo, Inc. On-line database updating network system and method
US5881292A (en) 1996-09-26 1999-03-09 Microsoft Corporation Dynamic versioning system for multiple users of multi-module software system
US5930794A (en) * 1996-10-18 1999-07-27 Sagent Technologies, Inc. Database repository with deferred transactions
AU6183798A (en) 1997-02-27 1998-09-29 Siebel Systems, Inc. Method of migrating to a successive level of a software distribution incorporating local modifications
US6314565B1 (en) 1997-05-19 2001-11-06 Intervu, Inc. System and method for automated identification, retrieval, and installation of multimedia software components
US6182073B1 (en) 1997-05-20 2001-01-30 Intel Corporation Integrated information browsing and multiple-participant application with a persistency control configured to monitor and to prevent attempts to replace data within the information browser
JP3567696B2 (ja) 1997-09-24 2004-09-22 松下電器産業株式会社 ソフトウェアダウンロードシステム
US6014669A (en) * 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
JPH11143754A (ja) 1997-11-05 1999-05-28 Hitachi Ltd バージョン情報・構成情報表示方法および装置およびバージョン情報・構成情報表示プログラムを記録したコンピュータ読み取り可能な記録媒体
US6041333A (en) 1997-11-14 2000-03-21 Microsoft Corporation Method and apparatus for automatically updating a data file from a network
US6067551A (en) * 1997-11-14 2000-05-23 Microsoft Corporation Computer implemented method for simultaneous multi-user editing of a document
US6052531A (en) 1998-03-25 2000-04-18 Symantec Corporation Multi-tiered incremental software updating
US6457021B1 (en) * 1998-08-18 2002-09-24 Microsoft Corporation In-memory database system
US6804663B1 (en) 1998-09-21 2004-10-12 Microsoft Corporation Methods for optimizing the installation of a software product onto a target computer system
US6341291B1 (en) 1998-09-28 2002-01-22 Bentley Systems, Inc. System for collaborative engineering using component and file-oriented tools
US6324544B1 (en) 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
JP2000284998A (ja) 1999-03-31 2000-10-13 Ricoh Co Ltd データ更新制御システム、データ更新制御方法、その方法を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
US6560655B1 (en) 1999-06-22 2003-05-06 Microsoft Corporation Synchronization manager for standardized synchronization of separate programs
US6405219B2 (en) * 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6513084B1 (en) 1999-06-29 2003-01-28 Microsoft Corporation Arbitration of state changes
US6529921B1 (en) 1999-06-29 2003-03-04 Microsoft Corporation Dynamic synchronization of tables
US6516339B1 (en) 1999-08-18 2003-02-04 International Business Machines Corporation High performance client/server editor
US6256773B1 (en) 1999-08-31 2001-07-03 Accenture Llp System, method and article of manufacture for configuration management in a development architecture framework
US6449624B1 (en) 1999-10-18 2002-09-10 Fisher-Rosemount Systems, Inc. Version control and audit trail in a process control system
US6757893B1 (en) * 1999-12-17 2004-06-29 Canon Kabushiki Kaisha Version control system for software code
JP2001193735A (ja) * 2000-01-05 2001-07-17 Minebea Co Ltd 球面滑り軸受のトルク調節機構
US6721767B2 (en) * 2000-01-31 2004-04-13 Commvault Systems, Inc. Application specific rollback in a computer system
US6598059B1 (en) * 2000-04-22 2003-07-22 Oracle Corp. System and method of identifying and resolving conflicts among versions of a database table
US6845383B1 (en) 2000-06-19 2005-01-18 International Business Machines Corporation System and method for managing concurrent scheduled or on-demand replication of subscriptions
US6865591B1 (en) * 2000-06-30 2005-03-08 Intel Corporation Apparatus and method for building distributed fault-tolerant/high-availability computed applications
US6658330B2 (en) 2000-12-29 2003-12-02 General Electric Co. Method and system for upgrading software for controlling locomotives
US6714953B2 (en) 2001-06-21 2004-03-30 International Business Machines Corporation System and method for managing file export information
US20030167318A1 (en) 2001-10-22 2003-09-04 Apple Computer, Inc. Intelligent synchronization of media player with host computer
US7389309B2 (en) * 2003-02-28 2008-06-17 Microsoft Corporation Method for managing file replication in applications
US7350191B1 (en) 2003-04-22 2008-03-25 Noetix, Inc. Computer implemented system and method for the generation of data access applications

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5664186A (en) * 1992-05-21 1997-09-02 International Business Machines Corporation Computer file management and backup system
US5493728A (en) * 1993-02-19 1996-02-20 Borland International, Inc. System and methods for optimized access in a multi-user environment
CN1146816A (zh) * 1994-04-21 1997-04-02 英国电讯有限公司 数据存储器
US5721916A (en) * 1994-11-18 1998-02-24 Microsoft Corporation Method and system for shadowing file system structures from multiple types of networks
CN1326155A (zh) * 2000-05-25 2001-12-12 英业达股份有限公司 即时生成文件版本的方法

Also Published As

Publication number Publication date
RU2004105881A (ru) 2005-08-10
ZA200401310B (en) 2005-11-30
JP4643915B2 (ja) 2011-03-02
NO331680B1 (no) 2012-02-20
KR20040077497A (ko) 2004-09-04
CA2458249C (en) 2012-03-27
IL160353A0 (en) 2004-07-25
MY147939A (en) 2013-02-15
TW200508891A (en) 2005-03-01
US8010491B2 (en) 2011-08-30
KR101076851B1 (ko) 2011-10-25
US20040172424A1 (en) 2004-09-02
TWI316667B (en) 2009-11-01
CO5550075A1 (es) 2005-08-31
MXPA04001929A (es) 2005-04-25
EP1452982A3 (en) 2006-11-08
RU2344468C2 (ru) 2009-01-20
BRPI0400364A (pt) 2004-12-28
JP2004265414A (ja) 2004-09-24
NZ531279A (en) 2005-07-29
CN1525328A (zh) 2004-09-01
NO20040829L (no) 2004-09-01
EP1452982A2 (en) 2004-09-01
SG125106A1 (en) 2006-09-29
AU2004200462A1 (en) 2004-09-16
CA2458249A1 (en) 2004-08-28
PL365551A1 (en) 2004-09-06

Similar Documents

Publication Publication Date Title
CN100377099C (zh) 为复制文件管理多个文件状态的方法
US6862617B1 (en) System and method for synchronizing objects between two devices
CN1467632B (zh) 基于映像的软件安装的系统和方法
CN100449500C (zh) 用于确定对源文件作出的改变以便传输到目标位置的方法和系统
CN101090356B (zh) 使能对远程存储装置的访问的方法和系统
CN101772764B (zh) 多线程业务编程库
CN1744603B (zh) 通过远程协议的远程文件更新的方法和计算机
US7243346B1 (en) Customized library management system
CN1790265B (zh) 便携式应用程序
CN102934114B (zh) 用于文件系统的检查点
CN100555279C (zh) 不用快照的项同步系统和方法
TWI473019B (zh) 用於可部署物件階層內之應用程式管理的方法及系統
CN101568919B (zh) 具有分布式存储的联网计算机系统中的单个数据视图
CN102193817B (zh) 简化物理和虚拟部署的管理
CN102804133B (zh) 一种用于管理系统可扩展性的方法和设备
CN111901294A (zh) 一种构建在线机器学习项目的方法及机器学习系统
CN101675426A (zh) 跨分布式设备集合来对数据进行网格管理
CN102323930B (zh) 对数据库系统中的数据变更进行镜像
CN114925084B (zh) 分布式事务处理方法、系统、设备及可读存储介质
CN102685194A (zh) 存储设备迁移和重定向
US20050246286A1 (en) License creation apparatus, license creation method, and computer program
CN101266617A (zh) 用于存储平台中的锁定和隔离的系统和方法
CN101641688A (zh) 可定义应用程序助理
JP2009064159A (ja) 計算機システム、管理計算機及びデータ管理方法
US20050187989A1 (en) Version management system, version management server device, and storage device control unit

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150504

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150504

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080326

Termination date: 20200301

CF01 Termination of patent right due to non-payment of annual fee