首页> 中国专利> 用于在网络化计算环境中替换注释的程序代码的方法和系统

用于在网络化计算环境中替换注释的程序代码的方法和系统

摘要

本公开涉及用于在网络化计算环境中替换注释的程序代码的方法和系统。提供用于在执行期间将一个程序代码库(或其方法)替换为另一个程序代码库(或其方法)的方法。特别地,程序代码文件内的注释(例如,包括运行时优化请求及关联的性能/测量准则)将被检测,被分析并用来监测/评价程序代码文件的运行的方法集合等(例如,初始/原始方法的集合)的性能。正因出现这种情况,替代方法的集合将被从程序代码库中识别出(例如,基于与原始方法的集合的相似性)并同样地被监测/被评价。基于监测的性能,一种或多种可替换的方法可替代程序代码文件中的原始方法。这样的能力允许方法在运行期间被评价,并对于性能将通过使用最高性能的方法来优化。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-04-26

    授权

    授权

  • 2014-07-09

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

    实质审查的生效

  • 2014-06-11

    公开

    公开

说明书

技术领域

本发明的实施例涉及程序代码库搜索和选择。特别地,本发明的实 施例涉及用于在网络化计算环境(例如,云计算环境)中的基于集成开 发环境(IDE)的程序代码库搜索和选择的方案。

背景技术

代码存储库典型为用户可以访问以浏览、搜索和下载源代码或编译 的库代码的可搜索的、分类的和/或可互联网访问的位置。代码存储库 的使用可以包括开源项目、专有开发项目和/或创建库以便以后使用的 项目。代码注释是能够给源代码添加的语法元数据的一种特殊形式。 类、方法、变量、参数和/或代码包可以被注释。与评论不同,注释可 以是可操作的,因为它们可以被嵌入由编译器生成的文件中,并且可以 由执行环境使用以便可实时检索。代码库是用来开发软件的资源的合 集。这样的资源可以包括预先编写的代码和例程、类、值或类型规范。 代码库可以含有为独立的程序提供服务的程序代码和/或数据。这样的 实现方式允许程序代码和/或数据按模块的方式来共享及修改。微基准 可以不精确预期实际工作性能,因为对各种库调用的输入可以是用户驱 动的且不同于在开发期间所预期的。但是,挑战可能存在于:现有的方 法不会自动地将一个程序代码库替换为另一个程序代码库。即,现有的 方案典型地依赖于手动的和/或完全不同的搜索操作。这样的方案会是 低效的和/或较不精确的。

发明内容

本发明的实施例提供一种用于在程序执行期间基于注释及关联的性 能特性/准则将一个程序代码库(或其方法)替换为另一个程序代码库 (或其方法)的方案。特别地,在程序代码文件内的注释(例如,包括 运行时优化请求及关联的性能/测量准则)将被检测,被分析并被用来 监测/评价程序代码文件的运行的方法集合等(例如,初始/原始方法的 集合)的性能。正因出现这种情况,所以替代方法的集合将被从程序代 码库中识别出(例如,基于与原始方法的集合的相似性)并且同样地被 监测/评价。基于所监测的性能,一种或多种可替换的方法可以替代在 程序代码文件中的一种或多种原始的方法。这样的能力允许方法在运行 期间被评价,并且对于性能将通过使用最高性能的方法来优化。

本发明的第一方面提供一种用于在网络化计算环境中替换注释的程 序代码的计算机实现的方法,包括:检测在程序代码文件中的注释,注 释包括具有用于运行程序代码文件的准则集的运行时优化请求;响应于 检测而基于准则集在运行期间监测在程序代码文件中的至少一种方法; 识别用于该至少一种方法的至少一种替代方法,该至少一种替代方法被 从存储于计算机存储设备内的程序代码库中识别出;基于准则集来监测 该至少一种替代方法;并且基于对该至少一种替代方法的监测而从该至 少一种替代方法中选出特定的替代方法以用于程序代码文件中。

本发明的第二方面提供一种用于在网络化计算环境中替换注释的程 序代码的系统,包括:包含指令的存储介质;与存储介质耦接的总线; 以及与总线耦接的处理器,该处理器在执行指令时促使系统:检测在程 序代码文件中的注释,该注释包括具有用于运行程序代码文件的准则集 的运行时优化请求;响应于检测而基于准则集在运行期间监测在程序代 码文件中的至少一种方法;识别用于该至少一种方法的至少一种替代方 法,该至少一种替代方法被从存储于计算机存储设备内的程序代码库中 识别出;基于准则集而监测该至少一种替代方法;并且基于对该至少一 种替代方法的监测而从该至少一种替代方法中选出特定的替代方法以用 于程序代码文件中。

本发明的第三方面提供一种用于在网络化计算环境中替换注释的程 序代码的计算机程序产品,该计算机程序产品包括计算机可读存储介 质,以及存储于计算机可读存储介质上的程序指令,用于:检测在程序 代码文件中的注释,该注释包括具有用于运行程序代码文件的准则集的 运行时优化请求;响应于检测而基于准则集在运行期间监测在程序代码 文件中的至少一种方法;识别用于该至少一种方法的至少一种替代方 法,该至少一种替代方法被从存储于计算机存储设备内的程序代码库中 识别出;基于准则集而监测该至少一种替代方法;并且基于对该至少一 种替代方法的监测而从该至少一种替代方法中选出特定的替代方法以用 于程序代码文件中。

根据本发明的第四方面提供一种用于部署用于在网络化计算环境中 替换注释的程序代码的系统的方法,包括:提供计算机基础设施,该计 算机基础设施可操作用于:检测在程序代码文件中的注释,该注释包括 具有用于运行程序代码文件的准则集的运行时优化请求;响应于检测而 基于准则集在运行期间监测在程序代码文件中的至少一种方法;识别用 于该至少一种方法的至少一种替代方法,该至少一种替代方法被从存储 于计算机存储设备内的程序代码库中识别出;基于准则集而监测该至少 一种替代方法;并且基于对该至少一种替代方法的监测而从该至少一种 替代方法中选出特定的替代方法以用于程序代码文件中。

附图说明

本发明的这些及其他特征根据下面结合附图进行的关于本发明的各 个方面的详细描述将变得更容易理解,在附图中:

图1示出了根据本发明的一种实施例的计算节点。

图2示出了根据本发明的一种实施例的一种系统的示意图。

图3示出了根据本发明的一种实施例的图2的系统的更详细的示意 图。

图4示出了根据本发明的一种实施例的一种方法的流程图。

图5示出了根据本发明的一种实施例的另一种方法的流程图。

附图并不一定是按比例的。附图只是示意性的表示,并非是要描述 本发明的具体参数。附图意在只描绘本发明的典型实施例,并且因此不 应被认为是对本发明的范围的限定。在附图中,相似的编号表示相似的 元件。

具体实施方式

说明性的实施例现在将参照附图在下文更全面地描述,在附图中示 出了示例性的实施例。但是,本公开内容可以按照许多不同的形式来实 施,而不应被理解为仅限于本文所阐明的示例性实施例。相反地,这些 示例性的实施例被提供使得本公开内容将是全面和完整的并将给本领域 技术人员完全传达本公开内容的范围。在该描述中,关于众所周知的特 征和技术的细节可以被省略以避免使得本发明的实施例不必要地变得不 明确。

本文所使用的术语仅为了描述特定的实施例,而并非旨在限定本公 开内容。如同本文所使用的,单数形式“一”、“一个”和“该”意指同 样包括复数形式,除非上下文另有明确说明。而且,术语“一”、“一 个”等的使用并非表示对数量的限定,而是表示存在至少一个所引用的 项。词“集合”旨在意指至少一个的数量。还应当理解,术语“包括” 和/或“包含”或者“含有”和/或“拥有”,在用于本说明书时,指定存 在所声明的特征、区域、整数、步骤、操作、元件和/或构件,但并不 排除存在或添加一个或多个其他特征、区域、整数、步骤、操作、元 件、构件和/或它们的群组。

如同前面所指出的,本发明的实施例提供一种用于在程序/库执行 期间基于注释及关联的性能特性/准则而将一个程序代码库(或其方 法)替换为另一个程序代码库(或其方法)的方法。特别地,在程序代 码文件内的注释(例如,包括运行时优化请求及关联的性能/测量准 则)将被检测,被分析并被用来监测/评价程序代码文件的运行的方法 集合等(例如,初始/原始方法的集合)的性能。正因出现这种情况, 所以替代方法的集合将被从程序代码库中识别出(例如,基于与原始方 法的集合的相似性)并且同样地被监测/被评价。基于所监测的性能, 一种或多种可替换的方法可以替代在程序代码文件中的一种或多种原始 的方法。这样的能力允许方法在运行期间被评价,并且对于性能将通过 使用最高性能的方法来优化。

现在参照图1,图中示出了计算节点的实例的示意图。计算节点10 只是合适的计算节点的一个实例,而并非意指暗示对本文所描述的本发 明的实施例的用途或功能的范围的任何限定。无论如何,计算节点10 能够被实现和/或执行以上所阐明的任何功能。

在计算节点10中,存在可与众多其他通用或专用计算系统环境或 配置一起工作的计算机系统/服务器12。可以适合于与计算机系统/服务 器12一起使用的熟知的计算系统、环境和/或配置的实例包括但不限 于:个人计算机系统、服务器计算机系统、瘦客户端、胖客户端、手持 式或膝上型设备、移动设备、全球定位系统(GPS)、启用GPS的设 备、多处理器系统、基于微处理器的系统、机顶盒、可编程的消费电子 产品、网络PC、小型计算机系统、大型计算机系统,以及包括任何上 述系统或设备的分布式计算环境,等等。

计算机系统/服务器12可以在由计算机系统执行的计算机系统可执 行指令(例如,程序模块)的一般背景下描述。一般地,程序模块可以 包括用于执行特定的任务或者实现特定的抽象数据类型的例程、程序、 对象、构件、逻辑、数据结构等。计算机系统/服务器12可以在分布式 计算环境中实施,在分布式计算环境中任务由通过通信网络链接的远程 处理设备来执行。在分布式计算环境中,程序模块可以位于包括存储设 备在内的本地及远程计算机系统存储介质两者中。

如图1所示,在计算节点10中的计算机系统/服务器12以通用计 算设备的形式来示出。计算机系统/服务器12的构件可以包括但不限 于:一个或多个处理器或处理单元16、系统存储器28,以及用于将包 括系统存储器28在内的各种系统构件耦接至处理器16的总线18。

总线18表示任意若干类型的总线结构中的一种或多种,包括存储 器总线或存储器控制器、外围总线、加速图形端口,以及使用多种总线 架构中的任一种的处理器或局域总线。举例来说,但不作限定,这样的 架构包括工业标准体系结构(ISA)总线、微通道体系结构(MCA)总 线、增强型ISA(EISA)总线、视频电子标准协会(VESA)局域总线 以及外围组件互连(PCI)总线。

计算机系统/服务器12典型地包括多种计算机系统可读介质。这样 的介质可以可由计算机系统/服务器12访问的任何可用介质,并且它包 括易失性和非易失性介质、可移动和不可移动介质。

系统存储器28能够包括形式为非易失性存储器的计算机系统可读 介质,例如,随机存取存储器(RAM)30和/或高速缓存存储器32。计 算机系统/服务器12还可以包括其他可移动的/不可移动的、易失性的/ 非易失性的计算机系统存储介质。仅举例来说,存储系统34能够被提 供用于读取和写入不可移动的非易失性磁介质(未示出,且通常称为 “硬盘”)。尽管未示出,但是也能够提供用于读取和写入可移动的非易 失性磁盘(例如,“软盘”)的磁盘驱动器以及用于读取或写入可移动的 非易失性光盘(例如,CD-ROM、DVD-ROM或其他光介质)的光盘 驱动器。在这种情况下,每个驱动器都能够通过一个或多个数据介质接 口连接至总线18。如同以下将进一步示出和描述的,存储器28可以包 括具有被配置用于执行本发明的实施例的功能的一组(例如,至少一 个)程序模块集合的至少一个程序产品。

本发明的实施例可以被实现为计算机可读信号介质,该计算机可读 信号介质可以包括具有实现于其内(例如,在基带中或者作为载波的一 部分)的计算机可读程序代码的传播的数据信号。这样的传播信号可以 采用任意多种形式,包括但不限于,电磁的、光的或者它们的任何合适 的组合。计算机可读信号介质可以是不为计算机可读存储介质的且能够 通信、传播或输送由指令执行系统、装置或设备使用的或者与其结合起 来使用的程序的任何计算机可读介质。

实现于计算机可读介质上的程序代码可以使用任何适当的介质来发 送,包括但不限于,无线电、导线、光纤、射频(RF)等,或者上述 项的任何合适的组合。

具有一组(至少一个)程序模块42的所注释的程序代码替换程序/ 工具40可以存储于存储器28内,举例来说,但不作限定,还有操作系 统、一个或多个应用程序、其他程序模块和程序数据。一般地,所注释 的程序代码替换40执行本文所描述的本发明的功能。操作系统、一个 或多个应用程序、其他程序模块和程序数据或者它们的某种组合每个都 可以包括网络环境的实现方式。程序模块42一般地执行本文所描述的 本发明的实施例的功能和/或方法。

计算机系统/服务器12还可以与一个或多个外部设备14(例如,键 盘、指点装置、显示器24等);用于允许用户与计算机系统/服务器12 交互的一个或多个设备;和/或用于允许计算机系统/服务器12与一个或 多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)通 信。这样的通信能够经由I/O接口22来进行。此外,计算机系统/服务 器12能够经由网络适配器20与一个或多个网络通信,例如,局域网 (LAN)、广域网(WAN)和/或公共网络(例如,因特网)。如图所 示,网络适配器20经由总线18与计算机系统/服务器12的其他构件通 信。应当理解,尽管未示出,但是其他硬件和/或软件构件能够结合计 算机系统/服务器12来使用。实例包括但不限于:微代码、设备驱动 器、冗余处理单元、外部磁盘驱动器阵列、RAID系统、磁带驱动器和 数据档案存储系统等。

现在参照图2,图中示出了用于描述根据本发明的一种实施例的在 此所讨论的功能的系统示意图。应当理解,本文所叙述的教导可以在任 何类型的网络化计算环境(例如,云计算环境)中实施。在图2中示出 了能够被实现为独立式计算机系统或者网络化计算机系统的计算机系统 /服务器12。在本文所叙述的教导于网络化计算环境(例如,云计算环 境)中实施的情况下,每个客户端都不需要具有程序代码库搜索和选择 引擎(引擎50)。相反地,引擎50能够位于用于与客户端通信(例如, 无线通信)以提供下文中的库搜索和选择功能的服务器(例如,支付处 理服务器)或具备服务器能力的设备上。无论如何,如图所示,引擎50 被示为在计算机系统/服务器12内。一般地,引擎50能够被实现为在 图1的计算机系统12上的程序/工具40,并且能够启用本文所叙述的功 能。如同进一步示出的,引擎50(在一种实施例中)包括用于处理一组 (至少一个)规则/逻辑52和/或提供以下所叙述的库搜索和选择功能的 规则和/或计算引擎。

按照这些方法,引擎50可以执行与通用计算机类似的多种功能。 特别地,除了其他功能外,引擎50可以(除了别的以外):检测在程序 代码文件54中的(例如,运行时)注释56(例如,由运行时环境60产 生),该注释包括具有用于运行程序代码文件的准则集的运行时优化请 求;在集成开发环境(IDE)62中分析注释56;响应于检测而在运行 期间基于准则集来监测在程序代码文件54中的至少一种方法58A-N; 识别出用于该至少一种方法58A-N的至少一种替代方法68A-N(例 如,该至少一种替代方法68A-N被从存储于计算机存储设备64内的程 序代码库66中识别出);基于准则集来监测该至少一种替代方法68A- N;基于对该至少一种替代方法的监测而从该至少一种替代方法68A-N 中选出特定的替代方法70以用于程序代码文件54中(例如,作为原始 方法58A-N中的一种或多种方法的替换);在程序代码文件中以特定的 替代方法70来替换该至少一种方法58A-N;将监测操作的结果存储于 存储库72内。

应当理解,图2所示的实例意指仅为说明性的。例如,引擎50能 够被装载到运行时环境60、IDE62中,或者如同所示出的那样在与运 行时环境60和IDE62结合起来工作的单独系统12上操作。无论如 何,应当理解,图2所示的具体架构实现方式并非意指为限制性的,并 且相似的基础功能可以用可替换的架构来实现。例如,无论具体的架构 是什么,具有注释的程序代码文件都将被接收并被分析。基于与文件关 联的优化请求以及性能/测量准则集合,方法集58A-N的性能将被监 测,并且较高性能的方法集68A-N因此可以将其替代。

现在参照图3,图中示出了程序40(图1)和/或引擎50(图2)的 更详细的示意图。特别地,图3示出了经由IDE100、代码存储库200 和运行时(runtime)300实现的程序40/引擎50。在一种实施例中,构 件100、200和300可以经由一个或多个通信网络来连接,例如,云计 算网络。在IDE100内,注释处理器110可以被配置用于处理 “@SameAs”和/或“@Substitute”注释。注释处理器110对于所有搜 索都使用基于预期的搜索引擎310。在运行时300内的是基于预期的搜 索引擎310、结果存储320、库替换处理器330以及代码存储库和构建 服务340。基于预期的搜索引擎310可以执行在代码存储库200上搜索 库。库替换处理器330可以识别出替换/可替换的库(例如,经由搜索 和/或构建)以用可替换的库来替换运行时的库,从而针对应用的实际/ 现实条件来选择具有最优性能的库。按照这些方法,库替换处理器330 可以与代码存储库和构件服务340及注释处理器110交互。由库替换处 理器330得出的结果然后可以被存储于结果存储320内。代码存储库 200是由基于预期的搜索引擎310用来执行基于预期的搜索的说明性存 储库。

说明性实施例

这部分将描述根据后面的说明性实例的由引擎50执行的各种功能 (例如,经由方法、功能和/或模块)。

注释处理

注释解析:按照这种方法,用户可以(例如)搜索用于执行对字符 串的base64编码的库。对于它们的应用,用户可能希望从库调用中返 回的仍然是字符串。为了初始化搜索,用户则可以将下列内容在其希望 进行库调用的地方输入代码中:

@Description(base64,encode)

@Expect(″hello″).Returns(“aGVsbG8=”)

@Signature(″public String<method>String″)

上述指令集请求IDE来调用对含有术语base64和decode的方法进 行存储库搜索。为了匹配方法,IDE然后可以缩窄公开的、返回字符串 对象的和预期单个字符串对象作为参数的方法。而且,如果给该方法传 递字符串“hello”,则该方法的返回值应当为字符串“aGVsbG8=”。然 后可以给用户呈现匹配方法的列表以及那些方法所属的库。

为了允许运行时的库替换,可以使用具有可选参量的下列注释:

@RuntimeOptimize(″@Time%>.1″)

这指示运行时环境何时装载类以监测在该方法调用中耗费了时间的 百分比数。如果时间百分比超过.1%,则运行时环境应当搜索更优的 库。

用户定义的库选择

在该方案的另一方面,可以添加用于允许用户提供有序库的列表以 从其中选择的附加注释。所提议的注释可以称为LibraryOrder并且可 以具有下列写法:

@LibraryOrder(″XYZCollections,ABCCollections,Java.util″)

这指示运行时环境首先收集库,测量其性能,然后使用Jakarta合 集来测量其性能,等等。

结果存储

在该方案的另一方面,如果库调用针对潜在的优化来标记,则运行 时环境可以开始存储方法调用参数的子集以及所产生的返回。该调用参 数和结果存储可以用来使对相关搜索方法的输入自动化。通过使用范围 广泛的“现实世界”参数和结果,程序代码库在不损失功能的情况下可 以被相对确定地替换。在增量构建连同由版本控制系统进行的自动化代 码部署一起被实现的另一种实施例中,运行时环境可以用在结果存储中 所采集的数据来扩充用户定义的注释用于基于预期的搜索。今后的搜索 然后可以利用调用参数以及来自存储的所产生的结果。

库搜索

在该方案的另一方面,可以实现各种搜索方法以搜索与所提供的注 释匹配的库。没有由其他注释明确排除的匹配库被认为是用于替换的。 该构件可以在运行时不活动的延长时间内周期性地调用以便不影响应用 性能。在搜索执行之后,匹配的库被下载并针对库替换和执行时序进行 计划库替换和执行时序。

库替换

该方法可以用可替换的程序代码库(或方法)来替换运行时程序代 码库(或方法)以针对应用的条件选择最快的程序代码库(或方法)。 替换操作需要下载用于检测的下一个程序代码库,修改装载该库的执行 路径并且将所产生的执行定时于一个时间段内。在穷举了所有匹配的程 序代码库之后,具有最佳性能特性的程序代码库将被选择并用于所有后 续的调用。可以直接对二进制码(binary)进行改变以使用新的程序代 码库,使得应用的后续重装载将同样使用新的二进制码。

在自动化部署与版本控制系统连接的实施例中,运行时环境可以在 开发分支中直接替换库。在可替换的实施例中,运行时环境可以标记开 发分支用于所提议的替换。IDE然后可以将提议呈现给开发者。如果开 发者同意该提议则会发生替换。

现在参照图4,图中示出了根据本发明的一种实施例的一种方法的 流程图。过程开始于步骤P1。在步骤P2中,确定优化注释是否存在于 所接收的程序代码文件内。若否,则过程会进行到步骤P5。若是,则 注释可以在步骤P3中被添加到部署描述符的运行时环境替换列表中。 在步骤P4中,确定是否还有更多代码要处理。若是,则过程返回到步 骤P2。若否,则运行时环境检测代码执行并在步骤P5中将结果记录于 结果存储内。在步骤P6中,确定替换列表是否为空。若是,则过程可 以结束于步骤P14。若否,则运行时环境在步骤P7中从替换列表内提 取注释,并且在步骤P8中确定是否满足在注释中指定的条件(例如, @RuntimeOptimize请求)。若否,则过程会进行到步骤P13。若是,则 将在步骤P9中执行对满足条件的可应用方法的搜索。然后,在步骤 P10中,将确定是否已经找到了匹配项。若否,则过程进行到步骤 P13。若是,则现有的实现方式将以每个匹配项来替换,并且性能特性 为此将在步骤P11中被搜集/收集。在步骤P12中,最佳性能的库/方法 将被选择并用于所部属的程序代码文件中。在步骤P13中,替换库可以 被发送回到源控制目的地(source control destination)和/或在过程结 束于步骤P14之前被存储。

现在参照图5,图中示出了根据本发明的一种实施例的另一种方法 的流程图(例如,由图2的引擎50所启用的)。如图所示,在步骤S1 中,注释在程序代码文件中被检测。如同前面所指出的,注释包括具有 用于运行程序代码文件的准则集的运行时优化请求。在步骤S2中,在 程序代码文件中的至少一种方法在运行期间基于准则集来监测。在步骤 S3中,识别出用于该至少一种方法的至少一种替代方法。该至少一种 替代方法通常被从存储于计算机存储设备内的程序代码库中识别出。在 步骤S4中,该至少一种替代方法基于准则集来监测。在步骤S5中,从 该至少一种替代方法中选出特定的替代方法以用于程序代码文件中(例 如,作为程序代码文件的原始方法中的一种或多种可替换方法)。

虽然在此被示为及被描述为所注释的程序代码替换的解决方案,但 是应当理解,本发明还提供各种可替换的实施例。例如,在一种实施例 中,本发明提供包含用于允许计算机基础设施提供本文所讨论的所注释 的程序代码替换的计算机程序代码的计算机可读/可用介质。从这个意 义上说,计算机可读/可用介质包含用于实现本发明的各种过程中的每 一种过程的程序代码。应当理解,术语计算机可读介质或计算机可用介 质包含任何类型的程序代码的物理实施例中的一种或多种。特别地,计 算机可读/可用介质能够包含实现于一种或多种便携式存储制品(例 如,光盘、磁盘、磁带等)上的,于计算设备的一个或多个数据存储部 分(例如,存储器28(图1)和/或存储系统34(图1)(例如,固定 盘、只读存储器、随机存取存储器、高速缓存存储器等))上的程序代 码。

在另一种实施例中,本发明提供一种用于执行本发明的基于订购、 广告和/或付费的过程的方法。即,服务提供者(例如,解决方案集成 商)能够许诺提供(offer to provide)所注释的程序代码替换功能。在 本例中,服务提供者能够创建用于为一个或多个用户执行本发明的过程 的计算机体系结构(例如,计算机系统12(图1)),并对其进行维护、 支持等。进而,服务提供者能够接收用户按照订购和/或付费协议进行 的支付,和/或服务提供者能够接收来自对一个或多个第三方的广告内 容的销售的支付。

在又一种实施例中,本发明提供一种用于进行所注释的程序代码替 换的计算机实现的方法。在本例中,能够提供一种计算机体系结构(例 如,计算机系统12(图1)),并且能够获得(例如,创建,购买,使 用,修改等)用于执行本发明的过程的一个或多个系统并将其部署于计 算机体系结构。从这个意义上说,系统的部署能够包括下列项中的一项 或多项:(1)将来自计算机可读介质的程序代码安装于计算设备(例 如,计算机系统12(图1))上;(2)将一个或多个计算设备添加到计 算机体系结构中;以及(3)合并和/或修改计算机基础设施的一个或多 个现有系统以允许计算机基础设施执行本发明的过程。

如同本文所使用的,应当理解,术语“程序代码”和“计算机程序 代码”是同义的,并且意指一组指令以任意语言、代码或符号的任意 表示,其中该组指令旨在促使具有信息处理能力的系统直接地执行特别 的功能或者在以下a)转换为另一种语言、代码或符号;b)以不同的 材料形式的再现中的任一项或两者之后执行特别的功能。从这个意义上 说,程序代码能够被实现为下列项中的一项或多项:应用/软件程序、 构件软件/函数(function)库、操作系统、特定的计算设备的基础设备 系统/驱动器等。

适合于存储和/或执行程序代码的数据处理系统能够在下面提供, 并且能够包括通过系统总线与存储元件直接或间接通信耦接的至少一个 处理器。存储元件能够包括但不限于:在程序代码的实际执行期间采用 的本地存储器、大容量存储器,以及用于为至少一些程序代码提供临时 存储以便减少在执行期间必须从大容量存储器中检索代码的次数的高速 缓存存储器。输入/输出和/或其他外部设备(包括但不限于,键盘、显 示器、指点装置等)能够直接地或者通过中介的设备控制器与系统耦 接。

网络适配器还可以与系统耦接以允许数据处理系统通过中介的专用 或公共网络的任意组合与其他数据处理系统、远程打印机、存储设备等 耦接。说明性的网络适配器包括但不限于:调制解调器、有线调制解调 器和以太网卡。

以上关于本发明的各个方面的描述已经出于说明和描述的目的而给 出。并非是要作为穷尽性的或者将本发明限定于所公开的精确形式,而 是很明显,许多修改和变化都是可能的。本领域技术人员可以清楚此类 修改和变化意指包含于由所附权利要求书所界定的本发明的范围之内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号