System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 久久久国产精品无码免费专区,成人无码一区二区三区,亚洲AV无码一区二区乱子伦
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    java智能合約的執行方法、裝置、存儲介質以及電子設備制造方法及圖紙

    技術編號:41273054 閱讀:35 留言:0更新日期:2024-05-11 09:26
    本申請涉及一種java智能合約的執行方法、裝置、存儲介質以及電子設備。該方法包括:在java智能合約進入執行引擎的情況下,在合約類緩存中獲取java智能合約對應的合約機器碼;在未獲取到合約機器碼的情況下,對java智能合約的java字節碼進行編譯,得到合約機器碼;控制執行引擎調用執行合約機器碼,得到java智能合約的執行結果。本申請解決了java智能合約以解釋執行的方式進行執行導致java智能合約的執行效率低的技術問題。

    【技術實現步驟摘要】

    本申請涉及計算機領域,尤其涉及一種java智能合約的執行方法、裝置、存儲介質以及電子設備。


    技術介紹

    1、java智能合約通常指的是使用java編寫并在區塊鏈上執行的智能合約。智能合約是一種自動執行、無需第三方信任的計算機程序,通常用于執行和管理數字資產、數據或其他價值的交換。區塊鏈技術是智能合約執行的基礎,因為它提供了去中心化、透明、不可篡改的分布式賬本。java智能合約在區塊鏈上執行時,通常需要先獲取合約字節碼,再由java智能合約執行引擎以解釋執行的方式根據java字節碼指令逐行解釋執行。由于java智能合約每次執行時,都需要執行引擎將字節碼指令逐行翻譯為機器碼后再執行,耗時較長,導致java智能合約的執行效率低,區塊鏈的整體性能不佳。


    技術實現思路

    1、本申請提供了一種java智能合約的執行方法、裝置、存儲介質以及電子設備,以解決java智能合約以解釋執行的方式進行執行導致java智能合約的執行效率低的技術問題。

    2、第一方面,本申請提供了一種java智能合約的執行方法,包括:在java智能合約進入執行引擎的情況下,在合約類緩存中獲取上述java智能合約對應的合約機器碼;在未獲取到上述合約機器碼的情況下,對上述java智能合約的java字節碼進行編譯,得到上述合約機器碼;控制上述執行引擎調用執行上述合約機器碼,得到上述java智能合約的執行結果。

    3、第二方面,本申請提供了一種java智能合約的執行裝置,包括:第一獲取模塊,用于在java智能合約進入執行引擎的情況下,在合約類緩存中獲取上述java智能合約對應的合約機器碼;編譯模塊,用于在未獲取到上述合約機器碼的情況下,對上述java智能合約的java字節碼進行編譯,得到上述合約機器碼;第一執行模塊,用于控制上述執行引擎調用執行上述合約機器碼,得到上述java智能合約的執行結果。

    4、作為一種可選的示例,上述裝置還包括:第二執行模塊,用于在合約類緩存中獲取上述java智能合約對應的合約機器碼之后,在獲取到上述合約機器碼的情況下,控制上述執行引擎開始調用執行上述合約機器碼,得到上述java智能合約的執行結果。

    5、作為一種可選的示例,上述編譯模塊包括:編譯單元,用于對上述java智能合約的每一個合約方法的java字節碼進行編譯,得到對應的合約方法機器碼;處理單元,用于將所有的上述合約方法機器碼按順序匯總,得到上述合約機器碼。

    6、作為一種可選的示例,上述編譯單元包括:確定子單元,用于將目標寄存器作為上述java智能合約的執行環境的內存地址的保存目的;處理子單元,用于將上述java智能合約的每一個合約方法作為當前合約方法,對上述當前合約方法執行如下操作:將上述當前合約方法的每一個字節碼指令轉換為對應的中間代碼指令,得到上述當前合約方法對應的中間代碼指令序列;將上述中間代碼指令序列的每一個中間代碼指令編譯為匯編指令,得到上述當前合約方法對應的匯編代碼;將上述匯編代碼的每一個匯編指令轉換為機器碼,得到當前合約方法的合約方法機器碼。

    7、作為一種可選的示例,上述處理子單元還包括:在將上述當前合約方法的每一個字節碼指令轉換為對應的中間代碼指令,得到上述當前合約方法對應的中間代碼指令序列的同時,在上述當前合約方法調用jdk類方法的情況下,在jdk類緩存中獲取上述jdk類方法對應的機器碼;在上述jdk類緩存中未獲取到上述jdk類方法對應的機器碼的情況下,對上述jdk類方法進行編譯,得到對應的機器碼,并保存至上述jdk類緩存。

    8、作為一種可選的示例,上述第一執行模塊包括:綁定單元,用于將上述java智能合約的執行環境的相關內存地址與目標寄存器進行綁定;執行單元,用于控制上述執行引擎開始調用執行上述java智能合約的目標合約方法機器碼,其中,上述目標合約方法機器碼為用戶發起調用上述java智能合約時指定的合約方法對應的機器碼;輸出單元,用于在上述java智能合約的目標合約方法機器碼執行結束的情況下,輸出上述java智能合約的執行結果。

    9、作為一種可選的示例,上述裝置還包括:第二獲取模塊,用于在未獲取到上述合約機器碼的情況下,對上述java智能合約的java字節碼進行編譯,得到上述合約機器碼之后,獲取上述合約類緩存的剩余空間;刪除模塊,用于在上述剩余空間小于預設值的情況下,將上述合約類緩存中的最近使用時間最早的合約機器碼從上述合約類緩存中刪除,并將上述合約機器碼保存至上述合約類緩存;保存模塊,用于在上述剩余空間大于或等于上述預設值的情況下,將上述合約機器碼保存至上述合約類緩存。

    10、第三方面,本申請提供了一種存儲介質,該存儲介質中存儲有計算機程序,其中,該計算機程序被處理器運行時執行上述java智能合約的執行方法。

    11、第四方面,本申請還提供了一種電子設備,包括存儲器和處理器,上述存儲器中存儲有計算機程序,上述處理器被設置為通過所述計算機程序執行上述的java智能合約的執行方法。

    12、在本申請實施例中,采用了在java智能合約進入執行引擎的情況下,在合約類緩存中獲取上述java智能合約對應的合約機器碼;在未獲取到上述合約機器碼的情況下,對上述java智能合約的java字節碼進行編譯,得到上述合約機器碼;控制上述執行引擎調用執行上述合約機器碼,得到上述java智能合約的執行結果的方法,由于在上述方法中,采用編譯執行的方式,將java智能合約的java字節碼直接編譯成合約機器碼,在調用java智能合約時,直接執行對應的合約機器碼,從而實現了降低了java智能合約的執行耗時,提高了區塊的執行效率的目的,進而解決了java智能合約以解釋執行的方式進行執行導致java智能合約的執行效率低的技術問題。

    本文檔來自技高網...

    【技術保護點】

    1.一種java智能合約的執行方法,其特征在于,包括:

    2.根據權利要求1所述的方法,其特征在于,在合約類緩存中獲取所述java智能合約對應的合約機器碼之后,所述方法還包括:

    3.根據權利要求1所述的方法,其特征在于,所述對所述java智能合約的java字節碼進行編譯,得到所述合約機器碼包括:

    4.根據權利要求3所述的方法,其特征在于,所述對所述java智能合約的每一個合約方法的java字節碼進行編譯,得到對應的合約方法機器碼包括:

    5.根據權利要求4述的方法,其特征在于,在將所述當前合約方法的每一個字節碼指令轉換為對應的中間代碼指令,得到所述當前合約方法對應的中間代碼指令序列的同時,所述方法還包括:

    6.根據權利要求3所述的方法,其特征在于,所述控制所述執行引擎調用執行所述合約機器碼,得到所述java智能合約的執行結果包括:

    7.根據權利要求1所述的方法,其特征在于,在未獲取到所述合約機器碼的情況下,對所述java智能合約的java字節碼進行編譯,得到所述合約機器碼之后,所述方法還包括:

    8.一種java智能合約的執行裝置,其特征在于,包括:

    9.一種計算機可讀的存儲介質,所述計算機可讀的存儲介質存儲有計算機程序,其特征在于,所述計算機程序被處理器運行時執行所述權利要求1至7任一項中所述的方法。

    10.一種電子設備,包括存儲器和處理器,其特征在于,所述存儲器中存儲有計算機程序,所述處理器被設置為通過所述計算機程序執行所述權利要求1至7任一項中所述的方法。

    ...

    【技術特征摘要】

    1.一種java智能合約的執行方法,其特征在于,包括:

    2.根據權利要求1所述的方法,其特征在于,在合約類緩存中獲取所述java智能合約對應的合約機器碼之后,所述方法還包括:

    3.根據權利要求1所述的方法,其特征在于,所述對所述java智能合約的java字節碼進行編譯,得到所述合約機器碼包括:

    4.根據權利要求3所述的方法,其特征在于,所述對所述java智能合約的每一個合約方法的java字節碼進行編譯,得到對應的合約方法機器碼包括:

    5.根據權利要求4述的方法,其特征在于,在將所述當前合約方法的每一個字節碼指令轉換為對應的中間代碼指令,得到所述當前合約方法對應的中間代碼指令序列的同時,所述方法還包括:

    6.根據權利要求3所述...

    【專利技術屬性】
    技術研發人員:尚璇,黃方蕾,王文強,詹士瀟邵羽
    申請(專利權)人:杭州趣鏈科技有限公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产成人无码一区二区在线播放| 成人免费无码大片A毛片抽搐色欲| 亚洲精品无码国产片| 久久美利坚合众国AV无码| 国产精品无码无片在线观看3D | 免费A级毛片无码免费视| 国产仑乱无码内谢| 亚洲中文字幕无码久久| 亚洲桃色AV无码| 伊人久久无码精品中文字幕| 无码国产精品一区二区免费虚拟VR| 久久无码一区二区三区少妇 | 高清无码一区二区在线观看吞精 | 人妻丰满熟妇AV无码区| 日韩精品无码免费专区午夜不卡 | 久久av无码专区亚洲av桃花岛| 成在人线AV无码免费| 无码人妻丰满熟妇区BBBBXXXX | 亚洲国产av无码精品| 日韩中文无码有码免费视频| 无码乱肉视频免费大全合集| 无码137片内射在线影院| 国产网红无码精品视频| 人妻少妇无码精品视频区| 日韩人妻无码精品无码中文字幕| 午夜福利无码一区二区| 色综合99久久久无码国产精品| 免费无码成人AV在线播放不卡 | 中字无码av电影在线观看网站| 亚洲国产精品无码久久一线| 亚洲AV综合色区无码一区爱AV| 国产精品无码一区二区在线观一| 永久免费无码网站在线观看| 无码色AV一二区在线播放| 免费无码国产在线观国内自拍中文字幕| 亚洲AV成人无码网站| 国产精品午夜无码av体验区| 麻豆人妻少妇精品无码专区| 潮喷无码正在播放| 久久午夜无码免费| 亚洲性无码AV中文字幕|