跳到主要內容

臺灣博碩士論文加值系統

(18.97.14.87) 您好!臺灣時間:2025/01/17 19:09
字體大小: 字級放大   字級縮小   預設字形  
回查詢結果 :::

詳目顯示

我願授權國圖
: 
twitterline
研究生:詹孟祥
研究生(外文):Meng-hsiang Chan
論文名稱:高效能KVM虛擬機器之軟硬體協同架構
論文名稱(外文):The Hardware/Software Codesign for High Performance Kilobyte Virtual Machine
指導教授:蘇益慶蘇益慶引用關係
指導教授(外文):Yih-ching Su
學位類別:碩士
校院名稱:義守大學
系所名稱:資訊工程學系碩士班
學門:工程學門
學類:電資工程學類
論文種類:學術論文
論文出版年:2009
畢業學年度:97
語文別:中文
論文頁數:56
中文關鍵詞:軟硬體協同架構
外文關鍵詞:JCPBytecodeFrameKVMLEON3Hardware/Software Architecture
相關次數:
  • 被引用被引用:0
  • 點閱點閱:413
  • 評分評分:
  • 下載下載:0
  • 收藏至我的研究室書目清單書目收藏:0
Java程式碼因Java虛擬機器的設計而具有跨平台執行能力,而在Java虛擬機器的效能提升上,不管是以純硬體或純軟體方式都有其瓶頸和難度存在,但也存在各自優勢;因此本研究採用軟硬折衷的策略,針對Kilobyte Virtual Machine(KVM)提出一個具有Java 輔助處理器JCP(Java Coprocessor)之軟硬體協同架構,在不需花費過多成本的前提下,完整實現KVM的執行環境以及流程,並同時加速執行虛擬機器(KVM) 環境中的Bytecode,達到與原先之純軟體KVM完全相容,並具有更佳執行效能的目的。為了讓KVM能與JCP相互搭配,故須對KVM進行軟硬體切割評估,切割原則是以不更動KVM大架構為前提下進行切割分析。經過實作後的測試數據比較,可得到本研究所提出的新架構在執行Java Bytecode指令之平均速度較純軟體KVM快2.5倍。
Relying on the design of Java Virtual Machine (JVM), Java bytecode can be run across many different computer platforms. Come to the issue of leveling up the performance of JVM, both pure software and pure hardware solution exist pros and cons. In this paper a Java coprocessor (JCP) based hardware/software codesign architecture for implementing Kilobyte Virtual Machine (KVM) has been proposed. Besides the acceleration of bytecode execution, there are two extra design goals have been achieved in the architecture mentioned above: (1) inducing less cost (2) providing a complete KVM environment. For the sake of system compatibility and stability, the strategies on hardware/software partition in this work are to keep the major flow and data structures of open-source KVM soft code, and then split just those both computing intensive and apt to hardware parts to JCP. According to the preliminary results in this research, the new architecture can execute test bytecode faster than the software KVM by average 2.5 times.
摘要I
ABSTRACTII
致謝III
目錄IV
表目錄VI
圖目錄VII
1 研究動機1
1.1 動機1
1.2 研究目標2
1.3 論文架構3
2 研究背景與相關研究4
2.1 CLDC介紹4
2.2 KILOBYTE VIRTUAL MACHINE架構以及構成介紹5
2.2.1 KVM介紹5
2.2.2 KVM構成及執行流程6
3 研究方法與步驟13
3.1 軟硬體新架構提出以及KVM軟硬體切割13
3.2 指令分類16
3.3 內部資料結構外移18
3.4 軟硬體溝通介面設計19
3.5 軟硬體協同執行流程21
4 實作結果及效能評估23
4.1 軟體方式驗證架構:23
4.2 KVM移植以及FPGA上實作27
4.3 數據效能分析31
5 結論37
6 未來展望38
參考文獻39
附錄 A
LINUX核心的編譯40
附錄B
JASMIN BYTECODE指令撰寫45
附錄C
驅動程式設計47
表目錄
表3-1 指令分析表17
表4-1 指令效能分析表31
表4-2 執行效能比較表33
表4-3 整體架構效能分析比較表34
圖目錄
圖1-1 JAVA VIRTUAL MACHINE 架構圖1
圖1-2 KVM軟硬體協同架構圖2
圖2-1 JAVA APPLET的發展及載入安裝有KVM的目標平台流程圖4
圖2-2 J2ME、CLDC和MIDP及其應用之架構圖4
圖2-3 KVM整體架構示意圖5
圖2-4 KVM執行流程圖7
圖2-5 JAVA HEAP示意圖8
圖2-6 JAVA EXECUTION STACK示意圖9
圖2-7 INTERPRETER環境示意圖10
圖2-8 BYTECODE指令轉成組合語言截圖12
圖2-9 INTERPRETER和BYTECODE關係圖12
圖3-1 軟硬體協同架構示意圖13
圖3-2 指令分析分裂圓形圖17
圖3-3 軟硬體介面示意圖19
圖3-4 JCP狀態控制機20
圖3-5 軟硬體協同架構流程圖22
圖3-6 KVM WAITING狀態圖22
圖4-1 BYTECODE指令外移流程示意圖23
圖4-2 FRAME資料外移流程示意圖24
圖4-3 BYTECODE指令外移執行圖25
圖4-4 FRAME資料外移執行圖25
圖4-5 KVM內部資料結構外移和指令統計執行圖26
圖4-6 載入LINUX OS的IMAGE截圖28
圖4-7 驅動掛載之截圖28
圖4-8 FIBONACCI SERIES執行結果圖29
圖4-9 JCP內部記憶體上的BYTECODE指令30
圖4-10 透過介面設定JCP截圖30
圖4-11 指令效能分析群體直條圖32
圖4-12 執行效能分析群體直條圖33
圖4-13 整體架構效能分析圖34
圖4-14指令分析機制流程圖36
附錄A-1 SPARC-LINUX-GCC CROSS-COMPILER TOOL測試圖40
附錄A-2 MAKE XCONFIG組態圖41
附錄A-3 MMU功能選項(1)圖41
附錄A-4 MMU功能選項(2)圖42
附錄A-5 MMU功能選項(3)圖42
附錄A-6 組態清單(1)圖43
附錄A-7 組態清單(2)圖43
附錄A-8 BOOT LINUX圖44
附錄B-1 JASMIN程式片段截圖45
附錄B-2 產生JASMIN CLASS檔執行圖46
附錄C-1 驅動程式設計圖47
一、中文部份
[1]林隆豪,”一個Java輔助處理器之設計與實現”, June 2009
[2]探矽工作室 ,"深入嵌入式Java虛擬機器",學貫
[3]詹孟祥,林隆豪,蘇益慶,“ KVM軟硬體協同架構之分析與實現”, 2009 資訊技術應用及管理研討會
二、英文部份
[1]Addison Wesley," Programming for the Java Virtual Machine.” 1999.
[2]Gaisler Research, http://www.gaisler.com.
[3]H. McGhan , M. O''Connor,” PicoJava : a direct execution engine for Java bytecode”, Computer, Volume 31, Issue 10, Oct. 1998 Page(s):22 ~ 30.
[4]Jon Meyer & Troy Downing ,"JAVA虛擬機器",O''REILLY.
[5]M. Schoeberl ,”A Java processor architecture for embedded real-time systems.” Journal of Systems Architecture, 2008.
[6]M. Schoeberl,” JOP: A Java Optimized Processor for Embedded Real-Time Systems”, PhD thesis, Vienna University of Technology, 2005.
[7]Machine Bill Venners ," Inside the Java Virtual Machine."
[8]Sun Microsystems Inc.," Java Virtual Machine SPEC.”
[9]Sun Microsystems Inc.," KVM virtual machine".
[10]W. Puffitsch , M. Schoeberl,” PicoJava-II in an FPGA”, In Proceedings of the 5th international workshop on Java technologies for real-time and embedded systems, JTRES 2007, Vienna, Austria, September 2007.
QRCODE
 
 
 
 
 
                                                                                                                                                                                                                                                                                                                                                                                                               
第一頁 上一頁 下一頁 最後一頁 top