首页> 中国专利> 基于差异化盘格式的迭代式盘上传

基于差异化盘格式的迭代式盘上传

摘要

更新远程存储数据集。一种方法包括从本地服务提供可存在于远程服务处的远程存储数据集的提示。从远程服务接收表明远程存储数据集存在于远程服务处的指示。该方法包括请求在远程服务处将远程存储数据集复制为远程存储数据集的副本。将应用于远程存储数据集的副本的改变发送到远程服务。

著录项

  • 公开/公告号CN104303179A

    专利类型发明专利

  • 公开/公告日2015-01-21

    原文格式PDF

  • 申请/专利权人 微软公司;

    申请/专利号CN201380023142.3

  • 发明设计人 E·D·赖特;I·E·卡拉曼;

    申请日2013-04-29

  • 分类号G06F17/30;

  • 代理机构上海专利商标事务所有限公司;

  • 代理人陈斌

  • 地址 美国华盛顿州

  • 入库时间 2023-12-17 04:44:31

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-03-06

    授权

    授权

  • 2015-04-22

    专利申请权的转移 IPC(主分类):G06F17/30 变更前: 变更后: 登记生效日:20150402 申请日:20130429

    专利申请权、专利权的转移

  • 2015-02-18

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20130429

    实质审查的生效

  • 2015-01-21

    公开

    公开

说明书

背景

计算机和计算系统已经影响了现代生活的几乎每个方面。计算机通常涉及工 作、休闲、保健、运输、娱乐、家政管理等。

此外,计算系统功能还可以通过计算系统经由网络连接互连到其他计算系统 的能力来增强。网络连接可包括,但不仅限于,经由有线或无线以太网的连接,蜂 窝式连接,或者甚至通过串行、并行、USB或其它连接的计算机到计算机的连接。 这些连接允许计算系统访问其他计算系统上的服务,并快速且有效地从其他计算系 统接收应用数据。

这些连接允许计算系统访问其他计算系统处的服务,并快速且有效地从其他 计算系统接收应用数据。此外,互连的计算系统可用于实现群集计算系统,在该群 集计算系统中,若干分立系统一起工作以作为整体来完成分配到该群集的计算任 务。一些这样的系统可具有在云中部署的群集的全部或部分。云计算允许将计算资 源作为服务而非可递送产品来提供。具体地,在网络(诸如因特网)上(例如通过 租赁协定)提供计算能力、软件、信息等。

为了使用云计算,用户将他们的数据上传至云系统(诸如来自微软公司的 Windows或者可以从华盛顿西雅图的亚马逊公司购得的Amazon EC2)。随 后使用用户上传的数据为用户在云系统处设置虚拟机。

上传虚拟硬盘可能是耗时的任务。对于操作系统映像而言,通常要传输10GB 或更多。通常,在稍后用附加数据来刷新盘。刷新可以包括例如操作系统打补丁、 应用更新、以及故障排除引导问题。可能的情形是原始数据未被重传以例如节约网 络带宽。

在此要求保护的主题不限于解决任何缺点或仅在诸如上述环境中操作的各个 实施例。相反,提供该背景仅用以示出在其中可实践在此描述的部分实施例的一个 示例性技术领域。

简要概述

本文图示的一个实施例针对一种更新远程存储数据集的方法。该方法包括从 本地服务提供可存在于远程服务处的远程存储数据集的提示。从远程服务接收表明 远程存储数据集存在于远程服务处的指示。该方法包括请求在远程服务处将远程存 储数据集复制为远程存储数据集的副本。将应用于远程存储数据集的副本的改变发 送到远程服务。

提供本概述是为了以简化的形式介绍将在以下具体实施方式中进一步描述的 概念选择。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨 在用于帮助确定所要求保护的主题的范围。

将在以下的描述中阐述另外的特征和优点,并且部分特征和优点可从该描述 中显而易见,或者可从本文教导的实践中获知。本发明的特征和优点可以通过在所 附权利要求中特别指出的手段和组合来实现并获取。本发明的特征将从以下描述和 所附权利要求书中变得完全显而易见,或者可通过如下所述对本发明的实践而获 知。

附图说明

为了描述可获得本主题的上述和其它优点和特征的方式,将通过参考附图中 示出的本主题的具体实施例来呈现以上简要描述的本主题的更具体描述。应该理 解,这些附图仅描绘了各典型实施例,因此其不应被认为是对范围的限制,各实施 例将通过使用附图用附加特征和细节来描述并解释,在附图中:

图1图示了差异化虚拟硬盘;

图2图示虚拟硬盘的表示,该虚拟硬盘包括具有稀疏性优化的一个虚拟硬盘 以及不具有稀疏性优化的一个虚拟硬盘。

图3图示本地服务处的虚拟硬盘以及远程服务处的对应团块。

图4图示更新远程存储数据集的方法;以及

图5图示更新远程存储数据集的另一方法。

具体实施方式

在本说明书以及下面的权利要求中,“云计算”被定义为一种用于允许对可配 置的计算资源(如网络、服务器、存储、应用、以及服务)的共享池进行无处不在 的、方便的、按需的网络访问的模型,这些计算资源可用减少的管理努力或服务提 供者交互来被供应和发放。云模型可由各种特性(如按需自服务、广泛网络访问、 资源池、快速灵活性、测量服务等)、服务模型(如软件即服务(“SaaS”)、平台 即服务(“PaaS”)、基础结构即服务(“IaaS”))以及部署模型(如私有云、社区 云、公共云、混合云等)组成。

云系统(诸如Windows云)不原生地支持差异化盘技术。因而,可以 通过工具来执行用于迭代式上传的优化。通过充分利用本地场所处的差异化盘、云 存储原语以及基于云的映像储存库的语义,上传工具能够实现补丁、更新或其它最 小化的数据上传能力。

现在示出示例。现在参考图1,用户在本地服务250处在本地场所处创建文件 102-A,并且通过使用上传工具将其作为团块202-A上传至远程服务252。稍后, 用户希望刷新该内容。首先,用户创建文件102-B和102-C,分别作为文件102-A 和102B上的差异化盘。下文将更详细地讨论差异化盘格式。然而,在所示的示例 中,分层差异化结构可以包括与远程服务处的团块相对应的元素。例如,包括盘 102-A的级与团块202-A相对应。当用户调用上传工具时,用户提供团块202-A的 位置作为提示。远程服务252可以指示团块202-A的存在。结果,上传工具通过 远程地将团块202-A复制成团块202-C来继续创建团块202-C,并且仅上传文件 102-B和102-C的差异内容。具体地,上传块104-2B、104-3C、104-4B。净效应在 于,团块202-C通过展平文件的分层结构来包含与就像是在没有提示的情况下执行 上传并且通过简单地上传整个文件102-C的情况下相同的内容。此时,本地服务 250处的分层差异化结构还包括分层级,该分层级包括与远程服务252处的团块 202-C相对应的盘102-C。

各实施例可包括虚拟硬盘格式支持。例如,通过解析差异化盘格式、标识给 定数据块的源、随后在适当时进行优化能够使得迭代地构造远程虚拟硬盘的能力成 为可能。

各实施例可包括用于充分利用存储的功能。根据先前的示例,各实施例可以 用团块202-A的内容来初始化团块202-C,随后继续变更团块202-C。

各实施例可包括用于确保完整性的功能。确保盘的完整性对于避免昂贵的实 况站点调查是有用的。现在将阐述可在一些实施例中使用的用于确保补丁操作的完 整性的两种机制。第一,各实施例检查本地基础文件(例如,上述示例中的文件 102-A)在自从其被上传以来尚未变更。在一些实施例中,这可以通过计算本地文 件的散列并将其与在该本地文件第一次作为团块202-A被上传时创建的散列记录 作比较来执行。在该本地文件第一次被上传时创建的散列记录作为元数据被存储在 远程团块(即团块202-A)上。

第二,各实施例可依赖于云映像储存库的语义。当给定盘文件被上传至云时, 该给定盘文件可以向平台注册作为在虚拟机置备中使用的‘映像’。平台在该点之后 在团块上保持排他租用,从而确保只读语义。本地服务250处的上传工具随后可假 定该团块尚未变更。

尽管存在用于将各种盘格式转化为用于云服务的规定格式的各种工具,但本 文描述的一些实施例将转化集成到平台供应的上传工具中。在上传进行的同时转化 在进行中发生。这可以向用户提供效率和便捷。

虚拟硬盘的一方面在于内容通常是稀疏的。即,虚拟信息流包含大袋的空白。 图2图示了一示例。图2图示了虚拟硬盘102的表示。虚拟硬盘102包括五个块 104-1至104-5。其中的三块104-1、104-2和104-5包含数据。其余两块104-3和 104-4包含空数据。可以执行稀疏性优化以创建虚拟硬盘102’作为动态虚拟硬盘而 非未经优化的虚拟硬盘102。虚拟硬盘102’包括含有数据的三块104-1、104-3和 104-5以及块分配表(BAT)106。BAT106可用于通过记录哪些块包含数据和/或 哪些块包含空来反映虚拟硬盘102的实际结构。虚拟硬盘102’可被存储在本地服 务250(诸如图1中图示的本地服务250)处。

现在参考图3,远程团块202将同样的是稀疏的,因为规定格式是基于盘页面 至团块页面的1对1映射。然而,远程服务252处的远程团块未针对稀疏性进行优 化,而是包括与块104-1、104-2和104-5相对应的含有数据的块204-1、204-2和 204-5;以及与在虚拟硬盘102’中被优化排除的块104-3和104-4相对应的含有空 的块204-3和204-4两者。

图3图示使用动态虚拟硬盘驱动器来上传块的示例。对于动态VHD,如上所 述,动态格式包括称为BAT的数据结构。BAT106提供虚拟块到物理块的映射。 该映射是稀疏的,因为不是所有的虚拟块都具有物理数据并且被理解为是空的。虚 拟流实现展现了基于BAT106的稀疏性数据。在寻找和读取虚拟流时,BAT106 被同样地使用。因而,如图3所图示的,HTTP PUT(放置)请求254可用于发送 包含数据的块104-1、104-2和104-5,如BAT106所指示的。

通过将转化和上传集成到本地服务250中,充分利用按照受支持的输入格式 的存储在BAT106中的稀疏性元数据来改善上传性能。具体地,稀疏性元数据可 用于优化将什么数据从本地服务250上传至远程云服务252。取代需要上传整个虚 拟硬盘102,包含数据的各个块(诸如块104-1、104-2和104-5)可以被上传至远 程云服务252处的团块202。例如,一个或多个HTTP‘PUT’请求254可用于将块 104-1上传至块204-1、将块104-2上传至块204-2以及将块104-5上传至块204-5。

在进行中的转化还提供并行化,从而避免原本缓慢的预先操作。例如,块 104-1、104-2和104-5可以使用他们各自自己的单独PUT请求254各自被上传至 远程服务252和团块202,以使得各个块可以按照并行方式来上传。

此外,出于他们的虚拟化需求,用户通常不使用‘固定’虚拟硬盘(VHD)格式 (诸如虚拟硬盘102所示的格式)。更常见的是,‘动态’和‘差异化’盘VHD格式被 使用。动态和差异化盘带来众多管理能力方面的益处,并且它们的使用能够很好地 被集成到各种工具和操作系统中,诸如可以从华盛顿州雷蒙德市微软公司购得的 Hyper-V和7。用于将动态词差异化盘转化成固定盘(诸如虚拟盘102 所示的固定盘)的预先转化是缓慢的、要求很大的本地盘空间、并且得到重复的产 品。通过将从动态和差异化盘格式至适用于远程团块的格式的转化集成到上传工具 中,用户可以直接用他们偏好的盘格式来工作。

因而,各实施例可以实现带有至本机云格式的自动转化的格式知悉式的上传。 附加地或替换地,各实施例可以端到端地保持稀疏性。具体地,图3中图示的上传 机制可以被利用

再次参考图1,图示了附加细节。图1图示了本地服务250。本地服务250可 以是例如由企业维护的场所内服务。本地服务250接收数个输入。本地服务250 接收本地文件路径作为输入,该本地文件路径指向虚拟硬盘(VHD)文件102-C, 如Hyper-V、Windows7或其它兼容工具所生成的。本地服务250接收远程团块 URI作为提示输入,该远程团块URI指向远程服务252处的团块(诸如202-A处 所示的团块)。输入可以是远程映像名称,其指向在云系统映像储存库中注册的远 程团块。该储存库对作为映像注册的团块施加只读语义。在一些实施例中,只有具 有只读语义的团块被认为是有效输入。输入团块在此处被称为‘基础’。

各实施例可以包括被配置成检查‘基础’远程团块的各模块。远程团块被理解为 是‘固定’格式的虚拟硬盘。远程团块的页脚被解析以获得虚拟硬盘‘ID’字段。‘ID’ 表示虚拟硬盘文件的身份,并且将在稍后被用来标识对应的本地文件。还获得在先 前上传期间设置的头部(诸如团块的MD5头部)。

本地服务250接收存储凭证,从而使得本地服务250能够用远程服务252处 的远程存储账户来进行认证。

各实施例可以包括本地服务250处用于解析VHD文件格式的一个或多个模块 256。一个或多个模块256根据VHD规范(诸如VHD规范1.0)来解析本地文件 的头部(诸如BAT106-A)和页脚。

在此处图示的示例中,VHD被分类为差异化VHD。生成内部抽象,称为虚拟 流。虚拟流以本机格式(诸如图2中图示的虚拟硬盘102所示的格式)提供虚拟硬 盘的稀疏的、可定位的视图。输入格式考量被封装在虚拟流抽象之后。稀疏性信息 被揭露作为被理解为包含重要数据的块地址列表。例如,如图2中图示的,BAT106 可以将块104-1、104-2和104-5标识为包含重要数据。

图1图示了使用差异化VHD功能来确定要上传哪些块的示例。对于差异化 VHD,差异化格式是对动态格式(诸如图2和3中图示的、在102’处图示的动态 格式)的扩展。其包含‘父定位符’结构,从而提供本地父文件的位置。当BAT106-A 不包含给定虚拟块的映射时,父文件可以提供该信息。父文件本身可以是任何类型 的VHD文件。然而,如果父是差异化文件,则该过程递归。虚拟流实现封装这一 过程。稀疏性数据基于整个父树的并集。

远程团块202-A被理解为与同样作为输入文件102-C的祖先的本地虚拟硬盘 文件102-A相对应。遍历父树以定位与远程团块202-A相对应的父文件102-A。父 文件102-A通过先前描述的从基础团块获得的‘ID’来标识。注意到,父文件102-A 不必是输入文件102-C的直接父。任何祖先深度均是可接受的。

各实施例可以包括被配置成验证父文件102-A的各模块。为了确保整个过程 的完整性,计算头部(诸如父文件102-A的MD5散列)并将其与如先前所述从远 程团块202-A获得的作比较。基于与父文件102-A相对应的虚拟流而非父文件 102-A的散列本身来计算父文件102-A的散列,因为远程团块上的MD5散列反映 其实际内容。

各实施例可以包括被配置成确定要上传哪些块的各模块。确定要上传哪些块 可基于本地服务250处标识的差异。

图1图示了作为虚拟硬盘文件102-B的父文件的虚拟硬盘文件102-A,虚拟硬 盘文件102-B又是虚拟硬盘文件102-C的父文件。硬盘文件102-B和102-C包括与 其父文件的差异,但不包括已经存在于其父文件或更早祖先文件中的冗余数据。对 于在父和子中相同的数据,针对该信息可以简单地对父或更早祖先作出引用。在图 1图示的示例中,阴影块表示对于特定文件而言唯一的数据,而非阴影块表示可以 在一些分层父(包括祖先)文件中找到的数据。例如,块104-2B包含与块104-2A 不同的数据。然而,块104-1B和块104-1C包含与块104-1A相同的数据。此外, 块104-1B和104-1C物理上不包含数据而是引用可以在其中找到实际数据的父文件 102-A和块104-1A。

还注意到,差异化格式可以包括如图1图示的用于一个或多个文件的BAT。 例如,图1图示了BAT106-A、106-B和106-C。由于差异化格式盘的分层性质, BAT106-A中包含的稀疏性数据被持久保存在子文件102-B和102-C中。差异化 盘包含BAT,以指示取代其父的块的给定块。

在将虚拟硬盘文件102-C上传至远程服务252至团块202-C之前,初始化远 程团块202-C。各实施例可以包括被配置成初始化远程团块202-C的各模块。更新 或补丁操作不必更改基础团块202-A。相反,其创建新的团块202-C,该新的团块 202-C的初始内容复制自基础团块202-A。可以使用远程存储服务的能力来创建副 本。在复制基础团块202-A之后,执行进一步的初始化。对于从先前步骤中生成 的列表中的每一块(旨在被上传的块),各实施例清除远程团块202-C的对应块。 这可被用来促成正常的‘恢复’功能,其使用稀疏性数据来确定哪些块是潜在待决 的。清除块可以是远程存储服务的能力。清除块致使远程团块的稀疏性增加。

现在图示传送用于传送文件102-A和文件102-C之间的差异的改变或补丁, 将块104-2B移动至块204-2C;以及将块104-3C移动至块204-3C,将块104-4B移 动至块204-4C。根据虚拟流抽象的重要块列表在数个工作者线程之间被细分。每 一线程继续寻找指派的块、读取该块、随后向远程存储服务发出HTTP PUT请求。 PUT请求包含范围头部以向存储服务指示该块应当被放置在团块中的什么位置。 在必要时发出重试以从瞬时故障中恢复。最终,传送了所有的重要块并且该进程终 止。

各实施例可包括被配置成用于恢复的各模块。考虑到上传可能花费数小时或 甚至数天来完成,客户端代码组件支持恢复。恢复过程与常规的上传过程一样工作, 除了从实质块列表中去除已经上传的块。可以从远程存储服务252获得已经上传的 块的列表。恢复上传可基于查询远程存储服务以寻找关于团块的稀疏性信息;这些 缺口与更早获得的块列表的交集表示剩余的工作。清除旨在上传的块的初始化步骤 能够实现这一能力。

以下讨论现涉及可以执行的多种方法以及方法动作。虽然用特定次序讨论或 用以特定次序发生的流程图示出了各个方法动作,但除非明确规定或因为一动作依 赖于另一动作在执行该动作之前完成而需要特定次序,否则不需要特定次序。

现在参考图4,示出了方法400。该方法包括用于更新远程存储数据集的动作。 该方法包括从本地服务提供可存在于远程服务处的远程存储数据集的提示(动作 402)。例如,本地服务250可以提供关于团块202-A的提示,诸如团块202-A的 位置。方法400可以在其中根据本地服务处的差异化存储来确定远程存储数据集的 情况下实施。例如,本地系统250可以使用文件的分层结构来寻找文件102-A并 且使用该信息作为关于团块202-A的提示。

方法400进一步包括从远程服务接收远程存储数据集存在于远程服务处的指 示(动作404)。例如,远程服务252可以指示团块202-A的存在。

方法400进一步包括请求在远程服务处将远程存储数据集复制为远程存储数 据集的副本(动作406)。这可导致团块202-A被复制以创建团块202-C。

方法400进一步包括将要应用于远程存储数据集的副本的改变发送给远程服 务(动作408)。例如,如图1所示的,可以确定文件102-A与文件102-C之间的 差异。方法400可以在其中通过本地服务处的差异化存储来确定改变的情况下实 施。具体地,可以确定文件102-C中的块104-1C、104-2C、104-4C、104-5C与文 件102-A中的对应块不同。这可以通过例如使用本地服务250处可用的差异化盘 功能来确定。可以将标识出的差异发送给远程服务252以应用于复制的团块202-C。 在一些实施例中,块可以使用单独的HTTP PUT请求(每一块一个请求地)来发 送。

方法400可进一步包括向远程服务请求数据集完整性数据并且将数据集完整 性数据与本地完整性数据作比较。例如,各实施例可以检查数据集的散列(诸如 md5散列)以确定数据集完整性。如上所述,文件102-A的散列可以与团块202-A 的散列作比较。

方法400的各实施例可以迭代地执行直至找到远程数据集。具体地,假定本 地服务250包括文件分层结构(诸如附图1中图示的分层结构)并且假定在创建团 块202-C之前进行以下操作。本地服务250可以首先通过发送适当的提示来尝试标 识与文件102-C相对应的团块。如果不成功,则本地服务250可以通过发送适当的 提示来尝试标识与文件102-B相对应的团块。如果不成功,则本地服务可以尝试标 识与本地文件102-A相对应的团块。如图1图示的,该尝试会成功。

现在参考图5,示出了方法500。方法500包括用于更新远程存储数据集的动 作。方法500包括在远程服务处从本地服务接收可存在于远程服务的远程存储数据 集的提示(动作502)。例如,如图1所图示,远程服务252可以接收关于各个团 块在远程服务252处的位置的提示。在所图示的示例中,接收关于团块202-A的 位置的提示。

方法500进一步包括基于提示来确定远程存储数据集存在于远程服务处(动 作504)。

方法500进一步包括将远程服务处的远程存储数据集复制为远程存储数据集 的副本(动作506)。例如,如图1所图示的,团块202-A可以被复制为202-C处 的团块。

方法500进一步包括从本地服务接收要应用于远程服务处的远程存储数据集 的副本的改变(动作508)。例如,如图1所图示的,本地服务250可以发送文件 102-A和文件102-C之间的差异。如本文先前所图示的,各个数据块可以被发送并 且应用于团块202-C中的适当块。

因而,方法500进一步包括将改变应用于远程存储数据集的副本(动作510)。

方法500可进一步包括提供来自远程服务的针对远程存储数据集的数据集完 整性数据。例如,方法500可以在其中来自远程服务的数据集完整性数据和本地完 整性数据包括散列(诸如md5散列)的情况下实施。这些散列可用于确保本地服 务250处的文件匹配远程服务252处的适当团块。

此外,各种方法可由包括一个或多个处理器和诸如计算机存储器等计算机可 读介质的计算机系统来实施。具体而言,计算机存储器可存储计算机可执行指令, 这些指令在由一个或多个处理器执行时使得诸如各实施例中所述的各个动作等各 种功能被执行。

本发明的各实施例可以包括或利用包含计算机硬件的专用或通用计算机,这 将在下文中更详细地讨论。本发明范围内的各实施例还包括用于承载或存储计算机 可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质 可以是可由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的 计算机可读介质是物理存储介质。承载计算机可执行指令的计算机可读介质是传输 介质。由此,作为示例而非限制,本发明的各实施例可包括至少两种显著不同的计 算机可读介质:物理计算机可读存储介质和传输计算机可读介质。

物理计算机存储介质包括RAM、ROM、EEPROM、CD-ROM或其他光盘存 储(如CD、DVD等)、磁盘存储或其他磁存储设备、或可用于存储计算机可执 行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何 其他介质。

“网络”被定义为使得电子数据能够在计算机系统和/或模块和/或其它电子设 备之间传输的一个或多个数据链路。当信息通过网络或另一个通信连接(硬连线、 无线、或者硬连线或无线的组合)传输或提供给计算机时,该计算机将该连接适当 地视为传输介质。传输介质可包括可用于携带计算机可执行指令或数据结构形式的 所需程序代码装置且可由通用或专用计算机访问的网络和/或数据链路。以上介质 的组合也被包括在计算机可读介质的范围内。

此外,在到达各种计算机系统组件时,以计算机可执行的指令或数据结构的 形式存在的程序代码装置可以自动地从传输计算机可读介质传输到物理计算机可 读存储介质(或者反之亦然)。例如,通过网络或数据链路接收到的计算机可执行 指令或数据结构可被缓存在网络接口模块(例如,“NIC”)内的RAM中,然后最 终被传送到计算机系统RAM和/或计算机系统处的较不易失性的计算机可读物理 存储介质。因此,计算机可读物理存储介质可被包括在同样(或甚至主要)利用传 输介质的计算机系统组件中。

计算机可执行指令包括,例如使通用计算机、专用计算机、或专用处理设备 执行某一功能或某组功能的指令和数据。计算机可执行指令可以是例如二进制代 码、诸如汇编语言之类的中间格式指令、或甚至源代码。尽管用结构特征和/或方 法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必 限于上述特征或动作。更具体而言,上述特征和动作是作为实现权利要求的示例形 式而公开的。

本领域的技术人员将理解,本发明可以在具有许多类型的计算机系统配置的 网络计算环境中实践,这些计算机系统配置包括个人计算机、台式计算机、膝上型 计算机、消息处理器、手持式设备、多处理器系统、基于微处理器的或可编程消费 电子设备、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由 器、交换机等等。本发明也可在其中通过网络链接(或者通过硬连线数据链路、无 线数据链路,或者通过硬连线和无线数据链路的组合)的本地和远程计算机系统两 者都执行任务的分布式系统环境中实施。在分布式系统环境中,程序模块可以位于 本地和远程存储器存储设备二者中。

作为替代或除此之外,本文所描述的功能可至少部分地由一个或多个硬件逻 辑组件来执行。例如,但非限制,可被使用的硬件逻辑组件的说明性类型包括现场 可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品 (ASSP)、片上系统(SOC)、复杂可编程逻辑器件(CPLD)等。

本发明可具体化为其他具体形式而不背离其精神或特征。所描述的实施例在 所有方面都应被认为仅是说明性而非限制性的。因此,本发明的范围由所附权利要 求书而非前述描述指示。落入权利要求书的等效方案的含义和范围内的所有改变应 被权利要求书的范围所涵盖。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号