CN109582438B - 一种具有多个智能合约执行引擎的虚拟机及其实现方法 - Google Patents

一种具有多个智能合约执行引擎的虚拟机及其实现方法 Download PDF

Info

Publication number
CN109582438B
CN109582438B CN201811277027.XA CN201811277027A CN109582438B CN 109582438 B CN109582438 B CN 109582438B CN 201811277027 A CN201811277027 A CN 201811277027A CN 109582438 B CN109582438 B CN 109582438B
Authority
CN
China
Prior art keywords
intelligent contract
contract execution
request
user request
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.)
Active
Application number
CN201811277027.XA
Other languages
English (en)
Other versions
CN109582438A (zh
Inventor
石宁
吴其震
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.)
Guangzhou Sibairuo Technology Co ltd
Original Assignee
Guangzhou Sibairuo Technology Co ltd
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 Guangzhou Sibairuo Technology Co ltd filed Critical Guangzhou Sibairuo Technology Co ltd
Priority to CN201811277027.XA priority Critical patent/CN109582438B/zh
Publication of CN109582438A publication Critical patent/CN109582438A/zh
Application granted granted Critical
Publication of CN109582438B publication Critical patent/CN109582438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种具有多个智能合约执行引擎的虚拟机及其实现方法,虚拟机包括客户端和服务端,所述服务端包括若干个智能合约执行引擎;其中,所述客户端,用于与用户和/或服务端进行交互,以根据用户请求对智能合约执行引擎进行调度;所述智能合约执行引擎,用于根据客户端的调度来执行智能合约;其中,所述智能合约的编程语言类型不唯一;所述每一个智能合约执行引擎识别一种或一类编程语言类型。本发明能够通过多个智能合约执行引擎分别执行不同编程语言类型的智能合约,降低了学习成本,还提升了区块链平台的适应性和通用性,可广泛应用于区块链技术领域。

Description

一种具有多个智能合约执行引擎的虚拟机及其实现方法
技术领域
本发明涉及区块链技术领域,尤其是一种具有多个智能合约执行引擎的虚拟机及其实现方法。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,本质上是一个去中心化的体系结构。狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。
目前,知名的区块链项目有Bitcoin、Ethereum等,其中Bitcoin被认为是区块链1.0时代的代表,而Ethereum被认为是区块链2.0时代的代表,其中的主要区别在于Ethereum引入了智能合约。
智能合约是编程在区块链上的汇编语言代码程序,智能合约是跨领域法律学者尼克·萨博提出来的,他对智能合约的定义是“一个智能合约是一套以数字形式定义的承诺,包括合约参与方可以在上面执行这些承诺的协议”,换句话说,智能合约就是一个在计算机系统上,当一定条件被满足后,可以被自动执行的合约。通常人们不会直接写汇编代码,但是会用更高级的语言来编写,例如用以太坊Solidity等类似的专用语言。
智能合约程序会对外暴露接口以供用户调用,这些接口被称为ABI,ABI是Application Binary Interface的缩写,字面意思应用二进制接口,可以通俗的理解为合约的接口说明。当合约由高级程序被编译为汇编语言代码后,即可生成ABI文件。
区块链上的智能合约需要在虚拟机中执行,而不是直接在计算机硬件上执行,更精确地讲,是在虚拟机中的智能合约执行引擎内执行。智能合约执行引擎将智能合约的整个执行环境隔离开来,在其内部执行的智能合约不能接触网络、文件系统或者系统中的其他线程等系统资源,智能合约之间也只能进行有限调用。
现有的区块链虚拟机都只有一个智能合约执行引擎,只能识别一种或一类编程语言,这不利于程序员利用已掌握的编程语言编写智能合约,而必须重新学习特定的智能合约编程语言,这需要学习成本,且易因对编程语言不熟悉而编写出有漏洞的智能合约。
比如,以太坊(Ethereum)就只识别由Solidity语言编写的智能合约,掌握其他编语言的程序员都必须学习Solidity语言才能编写智能合约和开发分布式应用(DAPP)。
发明内容
为解决上述技术问题,本发明的目的在于:提供一种成本低且通用性强的具有多个智能合约执行引擎的虚拟机及其实现方法。
本发明一方面所采取的技术方案为:
一种具有多个智能合约执行引擎的虚拟机,包括客户端和服务端,所述服务端包括若干个智能合约执行引擎;其中,
所述客户端,用于与用户和/或服务端进行交互,以根据用户请求对智能合约执行引擎进行调度;
所述智能合约执行引擎,用于根据客户端的调度来执行智能合约;
其中,所述智能合约的编程语言类型不唯一;所述每一个智能合约执行引擎识别一种或一类编程语言类型。
进一步,所述客户端包括:
RPC接口模块,用于接收用户请求,以及将用户请求结果反馈给用户;其中,所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果;
解析模块,用于解析RPC接口模块获取的用户请求;其中,当用户请求是智能合约部署请求时,解析模块对智能合约部署请求进行分析,生成ABI文件;当用户请求时智能合约执行请求时,解析模块对智能合约执行请求进行合法性判断;
调度模块,用于监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
引擎交互模块,用于将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果。
进一步,所述智能合约执行引擎包括:
控制器模块,用于与客户端进行交互,以接收客户端转发的用户请求,并将用户请求结果反馈至客户端;
合约执行模块,用于执行智能合约;
合约开发SDK模块,用于提供智能合约编写功能。
本发明另一方面所采取的技术方案是:
一种具有多个智能合约执行引擎的虚拟机的实现方法,包括以下步骤:
通过客户端获取用户请求,并根据用户请求对智能合约执行引擎进行调度;
根据客户端的调度,通过服务端的智能合约执行引擎执行智能合约;
其中,所述服务端包括若干个智能合约执行引擎;所述智能合约的编程语言类型不唯一;所述每一个智能合约执行引擎识别一种或一类编程语言类型。
进一步,所述根据用户请求对智能合约执行引擎进行调度这一步骤,包括以下步骤:
通过RPC接口模块接收用户请求,以及将用户请求结果反馈给用户;
通过解析模块对RPC接口模块获取的用户请求进行解析;
通过调度模块监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
通过引擎交互模块将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果。
进一步,所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果。
进一步,所述通过解析模块对RPC接口模块获取的用户请求进行解析这一步骤,包括以下步骤:
当用户请求是智能合约部署请求时,通过解析模块对智能合约部署请求进行分析,生成ABI文件,并将ABI文件存储在本地;
当用户请求时智能合约执行请求时,通过解析模块对智能合约执行请求进行合法性判断。
进一步,所述通过解析模块对智能合约执行请求进行合法性判断这一步骤,包括以下步骤:
通过解析模块对智能合约执行请求进行参数缺失判断;
通过解析模块对智能合约执行请求进行参数类型判断;
将智能合约执行请求发送至引擎交互模块。
进一步,所述通过服务端的智能合约执行引擎执行智能合约这一步骤,包括以下步骤:
通过控制器模块接收客户端转发的用户请求;
根据用户请求,通过合约执行模块执行智能合约;
通过合约开发SDK模块提供智能合约编写功能。
进一步,还包括区块链节点根据用户请求结果更新区块链网络的状态这一步骤。
本发明的有益效果是:本发明通过在服务端设置多个智能合约执行引擎,能够通过多个智能合约执行引擎分别执行不同编程语言的智能合约,允许开发人员用自己所熟练的语言编写智能合约,而不需要重新掌握一门特定的智能合约语言,降低了学习成本;另外,本发明具有多个智能合约执行引擎的虚拟机提升了区块链平台的适应性和通用性,降低了推广难度。
附图说明
图1为本发明一种具有多个智能合约执行引擎的虚拟机的结构框图;
图2为本发明实施例的智能合约部署步骤流程图;
图3为本发明实施例的智能合约执行步骤流程图。
具体实施方式
下面结合说明书附图和具体实施例对本发明作进一步解释和说明。
参照图1,本发明一种具有多个智能合约执行引擎的虚拟机,包括客户端和服务端,所述服务端包括若干个智能合约执行引擎;其中,
所述客户端,用于与用户和/或服务端进行交互,以根据用户请求对智能合约执行引擎进行调度;
所述智能合约执行引擎,用于根据客户端的调度来执行智能合约;
其中,所述智能合约的编程语言类型不唯一;所述每一个智能合约执行引擎识别一种或一类编程语言类型。
其中,编程语言比如:Java,solidity,C++,C#,go和python语言等。
具体地,比如Java智能合约执行引擎只处理Java代码,C++编译器可同时识别C与C++代码(在此处,C与C++属于同一类编程语言)。
进一步作为优选的实施方式,所述客户端包括:
RPC接口模块,用于接收用户请求,以及将用户请求结果反馈给用户;其中,所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果;
解析模块,用于解析RPC接口模块获取的用户请求;其中,当用户请求是智能合约部署请求时,解析模块对智能合约部署请求进行分析,生成ABI文件;当用户请求时智能合约执行请求时,解析模块对智能合约执行请求进行合法性判断;
调度模块,用于监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
引擎交互模块,用于将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果。
进一步作为优选的实施方式,所述智能合约执行引擎包括:
控制器模块,用于与客户端进行交互,以接收客户端转发的用户请求,并将用户请求结果反馈至客户端;
合约执行模块,用于执行智能合约;
合约开发SDK模块,用于提供智能合约编写功能。
其中,本发明通过合约开发SDK模块为用户提供了撰写智能合约的服务类,还提供具体的合约编写支持,拓展性强。
本发明一种具有多个智能合约执行引擎的虚拟机的实现方法,包括以下步骤:
通过客户端获取用户请求,并根据用户请求对智能合约执行引擎进行调度;
根据客户端的调度,通过服务端的智能合约执行引擎执行智能合约;
其中,所述服务端包括若干个智能合约执行引擎;所述智能合约的编程语言类型不唯一;所述每一个智能合约执行引擎识别一种或一类编程语言类型。
进一步作为优选的实施方式,所述根据用户请求对智能合约执行引擎进行调度这一步骤,包括以下步骤:
通过RPC接口模块接收用户请求,以及将用户请求结果反馈给用户;
通过解析模块对RPC接口模块获取的用户请求进行解析;
通过调度模块监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
通过引擎交互模块将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果。
其中,本发明允许用户将新的智能合约执行引擎注册到服务端,本发明通过调度模块对智能合约执行引擎实现统一管理。另外,本发明通过调度模块监控智能合约执行引擎的状态,所述智能合约执行引擎的状态包括忙、闲和掉线等,本发明通过实时监控智能合约执行引擎的状态,能够快速正确地选取对应的智能合约执行引擎进行工作。
进一步作为优选的实施方式,所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果。
进一步作为优选的实施方式,所述通过解析模块对RPC接口模块获取的用户请求进行解析这一步骤,包括以下步骤:
当用户请求是智能合约部署请求时,通过解析模块对智能合约部署请求进行分析,生成ABI文件,并将ABI文件存储在本地;
当用户请求时智能合约执行请求时,通过解析模块对智能合约执行请求进行合法性判断。
进一步作为优选的实施方式,所述通过解析模块对智能合约执行请求进行合法性判断这一步骤,包括以下步骤:
通过解析模块对智能合约执行请求进行参数缺失判断;
通过解析模块对智能合约执行请求进行参数类型判断;
将智能合约执行请求发送至引擎交互模块。
进一步作为优选的实施方式,所述通过服务端的智能合约执行引擎执行智能合约这一步骤,包括以下步骤:
通过控制器模块接收客户端转发的用户请求;
根据用户请求,通过合约执行模块执行智能合约;
通过合约开发SDK模块提供智能合约编写功能。
进一步作为优选的实施方式,还包括区块链节点根据用户请求结果更新区块链网络的状态这一步骤。
下面结合说明书附图,详细描述本发明的智能合约部署步骤和智能合约执行步骤:
(1)、智能合约部署步骤:如图2所示,用户通过发起一个合约部署请求到客户端的RPC接口模块,RPC接口模块将该部署请求转给解析模块,解析模块从该部署请求中解析出ABI文件,并将ABI文件存储到本地,供后面接收到合约执行请求时作解析用。
(2)、智能合约执行步骤:如图3所示,用户通过发起一个智能合约执行请求到客户端的RPC接口模块,RPC接口模块将该执行请求转给解析模块,解析模块会根据ABI文件判断该请求的合法性(比如判断是否参数缺失,参数类型不对等),如果请求不合法,则直接向用户返回执行失败;如果请求合法,则将该请求转给引擎交互模块,引擎交互模块根据调度模块给出的调度信息,将请求转发给虚拟机服务端的控制器模块,控制器模块将请求交给合约执行模块执行。
合约执行结果由服务端的控制器转发给引擎交互模块,引擎交互模块将结果转给RPC接口模块,再由RPC接口模块反馈给用户。
最后,由区块链节点根据合约执行结果修改区块链网络状态。
综上所述,本发明一种具有多个智能合约执行引擎的虚拟机及其实现方法具有以下优点:
1)、本发明的虚拟机可以通过模块化设计允许嵌入到各种区块链网络,本发明的智能合约执行请求通过虚拟机客户端进行接收和转发,虚拟机客户端可以内嵌入任何现有区块链平台中,智能合约的具体执行则由虚拟机中的某个智能合约执行引擎执行。
2)、本发明可以识别多种编程语言编写的智能合约,使区块链平台能够识别多种高级语言编写的合约。
3)、对程序员而言,本发明允许程序员用自己所熟练的语言编写智能合约和开发分布式应用,而不需要重新掌握一门特定的智能合约语言,降低了学习成本。
4)、对区块链平台而言,具有多个智能合约执行引擎的虚拟机提升了平台的适应性和通用性,使平台更易被开发者接受,降低了推广难度。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (2)

1.一种具有多个智能合约执行引擎的虚拟机,其特征在于:包括客户端和服务端,所述服务端包括若干个智能合约执行引擎;其中,
所述客户端,用于与用户和服务端进行交互,以根据用户请求对智能合约执行引擎进行调度;
所述智能合约执行引擎,用于根据客户端的调度来执行智能合约;
其中,所述智能合约的编程语言类型不唯一;每一个所述智能合约执行引擎识别一种或一类编程语言类型;
所述客户端包括:
RPC接口模块,用于接收用户请求,以及将用户请求结果反馈给用户;其中,所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果;
解析模块,用于解析RPC接口模块获取的用户请求;其中,当用户请求是智能合约部署请求时,解析模块对智能合约部署请求进行分析,生成ABI文件;当用户请求是智能合约执行请求时,解析模块对智能合约执行请求进行合法性判断;
调度模块,用于监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
引擎交互模块,用于将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果;
所述智能合约执行引擎包括:
控制器模块,用于与客户端进行交互,以接收客户端转发的用户请求,并将用户请求结果反馈至客户端;
合约执行模块,用于执行智能合约;
合约开发SDK模块,用于提供智能合约编写功能。
2.一种具有多个智能合约执行引擎的虚拟机的实现方法,其特征在于:包括以下步骤:
通过客户端获取用户请求,并根据用户请求对智能合约执行引擎进行调度;
根据客户端的调度,通过服务端的智能合约执行引擎执行智能合约;
其中,所述服务端包括若干个智能合约执行引擎;所述智能合约的编程语言类型不唯一;每一个所述智能合约执行引擎识别一种或一类编程语言类型;
所述根据用户请求对智能合约执行引擎进行调度这一步骤,包括以下步骤:
通过RPC接口模块接收用户请求,以及将用户请求结果反馈给用户;
通过解析模块对RPC接口模块获取的用户请求进行解析;
通过调度模块监控智能合约执行引擎的状态,以及将新的智能合约执行引擎注册至服务端;
通过引擎交互模块将用户请求转发至对应的智能合约执行引擎,以及接收服务端反馈的用户请求结果;
所述用户请求包括智能合约部署请求和智能合约执行请求,所述用户请求结果包括智能合约部署结果和智能合约执行结果;
所述通过解析模块对RPC接口模块获取的用户请求进行解析这一步骤,包括以下步骤:
当用户请求是智能合约部署请求时,通过解析模块对智能合约部署请求进行分析,生成ABI文件,并将ABI文件存储在本地;
当用户请求是智能合约执行请求时,通过解析模块对智能合约执行请求进行合法性判断;
所述通过解析模块对智能合约执行请求进行合法性判断这一步骤,包括以下步骤:
通过解析模块对智能合约执行请求进行参数缺失判断;
通过解析模块对智能合约执行请求进行参数类型判断;
将智能合约执行请求发送至引擎交互模块;
所述通过服务端的智能合约执行引擎执行智能合约这一步骤,包括以下步骤:
通过控制器模块接收客户端转发的用户请求;
根据用户请求,通过合约执行模块执行智能合约;
通过合约开发SDK模块提供智能合约编写功能;
该方法还包括区块链节点根据用户请求结果更新区块链网络的状态这一步骤。
CN201811277027.XA 2018-10-30 2018-10-30 一种具有多个智能合约执行引擎的虚拟机及其实现方法 Active CN109582438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811277027.XA CN109582438B (zh) 2018-10-30 2018-10-30 一种具有多个智能合约执行引擎的虚拟机及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811277027.XA CN109582438B (zh) 2018-10-30 2018-10-30 一种具有多个智能合约执行引擎的虚拟机及其实现方法

Publications (2)

Publication Number Publication Date
CN109582438A CN109582438A (zh) 2019-04-05
CN109582438B true CN109582438B (zh) 2021-05-28

Family

ID=65920860

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811277027.XA Active CN109582438B (zh) 2018-10-30 2018-10-30 一种具有多个智能合约执行引擎的虚拟机及其实现方法

Country Status (1)

Country Link
CN (1) CN109582438B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543783A (zh) * 2019-08-19 2019-12-06 湖南正宇软件技术开发有限公司 一种投票系统及其实现方法、设备及存储介质
CN110535928B (zh) * 2019-08-22 2022-04-01 杭州趣链科技有限公司 一种区块链的java智能合约的事件推送方法
CN117251249A (zh) * 2019-12-31 2023-12-19 杭州趣链科技有限公司 一种基于多虚拟机区块链平台跨虚拟机调用方法
CN114153529B (zh) * 2021-05-13 2022-07-19 北京天德科技有限公司 一种基于状态机同步和控制的智能合约系统
CN114297119A (zh) * 2021-12-30 2022-04-08 北京百度网讯科技有限公司 智能合约执行方法、装置、设备以及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145605A (zh) * 2017-06-07 2017-09-08 北京天德科技有限公司 一种基于区块链统一接口(obcc)的许可链应用系统
CN107526624A (zh) * 2017-07-18 2017-12-29 杭州趣链科技有限公司 一种基于Java虚拟机的智能合约执行引擎
CN107688927A (zh) * 2017-09-19 2018-02-13 中国银行股份有限公司 一种调用区块链上的智能合约的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107145605A (zh) * 2017-06-07 2017-09-08 北京天德科技有限公司 一种基于区块链统一接口(obcc)的许可链应用系统
CN107526624A (zh) * 2017-07-18 2017-12-29 杭州趣链科技有限公司 一种基于Java虚拟机的智能合约执行引擎
CN107688927A (zh) * 2017-09-19 2018-02-13 中国银行股份有限公司 一种调用区块链上的智能合约的方法及系统

Also Published As

Publication number Publication date
CN109582438A (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN109582438B (zh) 一种具有多个智能合约执行引擎的虚拟机及其实现方法
CN109523383B (zh) 一种智能合约转换系统及方法
CN107979508B (zh) 微服务测试方法及装置
Schmidt et al. Pattern-oriented software architecture, patterns for concurrent and networked objects
US8151277B2 (en) Method and system for dynamic remote injection of in-process agents into virtual machine based applications
US7469405B2 (en) System and method for scheduling execution of cross-platform computer processes
US7725888B2 (en) Systems and methods for dynamically linking application software into a running operating system kernel
US7779043B2 (en) Extensible mechanism for object composition
EP0822490A2 (en) Object-oriented system, method and article of manufacture for a client-server communication framework
EP0834805A2 (en) Object-oriented system, method and article of manufacture for a client-server session manager in an architecture computing framework system
EP0836139A2 (en) Object-oriented system, method and article of manufacture for a client-server graphical user interface framework in an interprise computing framework system
CN105955782A (zh) 应用程序运行控制的方法及装置
CN102279765A (zh) 预编译托存托管代码
EP0855056A1 (en) Object-oriented method maintenance mechanism that does not require cessation of the computer system
US20070094675A1 (en) Object mobility
Weißbach et al. Decentralized coordination of dynamic software updates in the Internet of Things
CN115469894A (zh) 一种应用程序的安装控制方法、装置、设备及存储介质
US20200310828A1 (en) Method, function manager and arrangement for handling function calls
CN102197390B (zh) 通过实现和绑定合约向客户机服务提供功能
CN111431746A (zh) 一种api网关迁移方法及系统
CN110659022B (zh) 一种基于Java自动调用Python脚本的方法
Abid et al. Formal design of dynamic reconfiguration protocol for cloud applications
CN111984275A (zh) 基于cpu架构类型的系统部署方法、系统、终端及存储介质
CN111831301A (zh) 支持无分叉升级的区块链运行时环境系统、方法
CN112799674B (zh) 区块链中智能合约的执行方法、装置及节点设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant