進階搜尋


 
系統識別號 U0026-2608201222285500
論文名稱(中文) CASL Hypervisor與其虛擬化平台
論文名稱(英文) CASL Hypervisor and its Virtualization Platform
校院名稱 成功大學
系所名稱(中) 電腦與通信工程研究所
系所名稱(英) Institute of Computer & Communication
學年度 100
學期 2
出版年 101
研究生(中文) 劉健德
研究生(英文) Chien-Te Liu
學號 q36994249
學位類別 碩士
語文別 英文
論文頁數 79頁
口試委員 指導教授-陳中和
口試委員-朱元三
口試委員-黃穎聰
口試委員-黃英哲
口試委員-張大緯
中文關鍵字 電子系統層級設計  虛擬化  全系統模擬 
英文關鍵字 electronic system level  virtualization  full system simulation  hypervisor 
學科別分類
中文摘要 近年來隨著硬體架構的支援,虛擬化可以在不修改客戶端作業系統的情況下進行實作。這篇論文提出一個基於 ARM架構的 CASL Hypervisor 以及一個全系統虛擬化平臺,使得早期的軟硬體協同模擬及開發更加方便而有效率。
利用了新增加的處理器模式、兩階段的記憶體管理以及客製化的硬體,CASL Hypervisor 可以在不更改客戶端作業系統的情況下進行虛擬化。由於硬體上的支援,CASL Hypervisor 的開發時間大幅縮短,並且具有更加快速的效能;全系統模擬平台上的 GDB 及相關記錄工具更加簡化了除錯上的難度。
模擬數據是利用approximagely-timed的全系統模擬平臺進行。數據顯示 CASL Hypervisor 可以同時支援四個客戶端作業系統同時維持極佳的效能。
英文摘要 With the introduction of hardware extensions to recent ARM processors, virtualization can be done in a more flexible manner with no need to modify guest kernel. This thesis proposes the ARM-based hardware-assisted CASL Hypervisor and a full system virtualization platform which enables software/hardware co-simulation of virtual machine monitor at the early development stage.
CASL Hypervisor takes advantage of an additional processor mode, extended memory management unit, configurable hardware traps and specialized hardware devices to virtualize unmodified Linux-based guest operating systems. By utilizing hardware extensions, development effort of CASL Hypervisor can be greatly reduced and maintain relatively low virtualization overhead at the same time. Since the full system simulation platform is based on SystemC, hardware simulation models can not only be built fast but also conveniently modified to evaluate different implementations. With the simulation platform's built-in GDB stub and log facility, the complexity of debugging software/hardware interactions can be greatly reduced.
Evaluation is demonstrated on an approximately-timed manner so it is able to do fast software/hardware co-simulation and evaluations. The results show that CASL Hypervisor can successfully virtualize four guest operating systems with little overhead.
論文目次 1 Introduction 1
2 Background 3
2.1 Virtualization Overview 3
2.1.1 Binary Translation 3
2.1.1.1 Interpretive Translation 3
2.1.1.2 Static Compiled Translation 4
2.1.1.3 Dynamic Compiled Translation 4
2.1.2 Paravirtualization 5
2.1.3 Full Virtualization 5
2.2 Full System Simulation 5
3 Related Work 7
3.1 Xen 7
3.2 Xen on ARM 8
3.3 Kernel-based Virtual Machine 8
3.4 KVM for ARM 9
3.5 Full Virtualization with TrustZone 10
3.6 OKL4 Microvisor 11
4 Full System Virtualization Platform Architecture 13
4.1 The Accuracy Model of Simulation 14
4.2 ARMv7 Instruction Set Simulator 14
4.2.1 Data-path 15
4.2.2 Privilege Levels and Processor Modes 15
4.2.3 Coprocessors 17
4.2.4 Exceptions 18
4.2.5 Wait for Interrupt Instruction 19
4.2.6 Hypervisor Trap 19
4.2.7 The Security Extensions 20
4.3 Virtual Memory System Architecture 21
4.3.1 Short-Descriptor Translation Table Format 22
4.3.2 Long-Descriptor Translation Table Format 22
4.3.3 Two Stage Virtual Address Translation 23
4.4 Transaction-Level Modelling Bus 24
4.5 Device Modules 25
4.5.1 Generic Interrupt Controller 25
4.5.2 Timer 27
4.5.3 Universal Asynchronous Receiver/Transmitter 28
4.5.4 Semi-host Device 28
5 CASL Hypervisor Architecture 29
5.1 Guest Operation System 30
5.2 C Environment 31
5.2.1 Stack 31
5.2.2 The C Standard Library 31
5.2.3 Semi-host 32
5.3 Booting Guest Operating System 33
5.4 CPU Virtualization 33
5.4.1 Control Transfer 33
5.4.2 Hypervisor Traps 35
5.5 Memory Virtualization 36
5.5.1 Page Tables 36
5.5.2 Stage One Page Table 38
5.5.3 Stage Two Page Table 39
5.5.4 On-demand Memory Allocation 40
5.6 Device Virtualization 41
5.6.1 Implementing Virtual and Pass-through Devices 41
5.6.2 System Controller 42
5.6.3 Generic Interrupt Controller 43
5.6.4 Timer 44
5.6.5 UART 44
5.7 Interrupt Virtualization 45
5.7.1 Interrupt Handling in Non-Virtualized Environment 45
5.7.2 Interrupt Handling in Virtualized Environment 46
5.7.3 Interrupts Service Routines 47
5.8 Virtual Machine Scheduling 48
5.8.1 Virtual Machine Context 48
5.8.2 Scheduler 49
5.8.2.1 Scheduling Method 49
5.9 Comparison with Other Works 50
5.10 Memory Map 51
5.10.1 Main Memory 51
5.10.2 General Devices 51
5.10.3 Pass-through Devices 52
5.11 CASL Hypervisor High-level Program Architecture 52
5.11.1 Initialization Process of CASL Hypervisor 52
5.11.2 Entry Points to CASL Hypervisor 53
6 Experimental Results 55
6.1 Complexity 55
6.2 Host Configuration 55
6.3 Virtualization Platform Configuration 56
6.4 LMBench 57
6.4.1 Basic System Operations 57
6.4.2 Latency and Overhead 58
6.5 SPEC CPU2000 64
6.6 Processor Utilization Rate 65
6.7 A FIFO-based Simulation Approach for Real-time Applications 69
6.7.1 Evaluation of Real-time MPEG Layer-3 Audio Decoding 70
7 Conclusion and Future Work 75
Bibliography 77
參考文獻 [1] ARM Dual-Timer Module (SP804) Technical Reference Manual, 2004.
[2] PrimeCell UART (PL011) Technical Reference Manual, 2005.
[3] KVM: Kernel-based virtualization driver, 2006.
[4] OSCI TLM-2.0 LANGUAGE REFERENCE MANUAL, 2009.
[5] ARM Generic Interrupt Controller Architecture Specification, 2011.
[6] ARM Architecture Reference Manual, 2012.
[7] C standard library. https://en.wikipedia.org/wiki/C_standard_library, 2012.
[8] Credit scheduler. http://wiki.xensource.com/wiki/Credit_Scheduler, 2012.
[9] Kernel-based virtual machine. https://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine, 2012.
[10] mpg123. http://www.mpg123.de, 2012.
[11] Paravirtualization. https://en.wikipedia.org/wiki/Paravirtualization, 2012.
[12] Transaction-level modeling. https://en.wikipedia.org/wiki/Transaction-level_modeling, 2012.
[13] Xen. https://en.wikipedia.org/wiki/Xen, 2012.
[14] BARHAM, P., DRAGOVIC, B., FRASER, K., HAND, S., HARRIS, T., HO, A., NEUGEBAUER, R., PRATT, I., AND WARFIELD, A. Xen and the art
of virtualization. In Proceedings of the Nineteenth ACM Symposium on Operating Systems Principles (2003), pp. 164–177.
[15] DALL, C., AND NIEH, J. KVM for ARM. In Proceedings of the Linux Symposium (2010), pp. 45–56.
[16] FRENZEL, T., LACKORZYNSKI, A., WARG, A., AND HARTIG, H. ARM TrustZone as a virtualization technique in embedded systems. In Twelfth Real-Time Linux Workshop (2010).
[17] HEISER, G., AND LESLIE, B. The OKL4 microvisor: Convergence point of microkernels and hypervisors. In Proceedings of the First ACM Asia-
Pacific Workshop on Workshop on Systems (2010), pp. 19–24.
[18] HWANG, J.-Y., SUH, S.-B., HEO, S.-K., PARK, C.-J., RYU, J.-M., PARK, S.-Y., AND KIM, C.-R. Xen on ARM: System virtualization using Xen hypervisor for ARM-based secure mobile phones. In Consumer Communications and Networking Conference (2008), pp. 257–261.
[19] LEE, S.-Y. An instructin set simulator with GDB support and its full system simulation virtual platform. Master’s thesis, National Cheng Kung University, 2010.
[20] MCVOY, L. LMBench man pages. http://lmbench.sourceforge.net/man/index.html, 2010.
[21] NEIGER, G., SANTONI, A., LEUNG, F., RODGERS, D., AND UHLIG, R. Intel virtualization technology: Hardware support for efficient virtualization. Intel Techonolgy Journal 10, 3 (August 2006), 167–177.
[22] ROSENBLUM, M., AND GARFINKEL, T. Virtual machine monitors: current technology and future trends. Computer 38, 5 (May 2005), 39–47.
[23] ZHANG, J., CHEN, K., ZUO, B., MA, R., DONG, Y., AND GUAN, H. Performance analysis towards a kvm-based embedded real-time virtualization architecture. In Computer Sciences and Convergence Information Technology (ICCIT), 2010 5th International Conference on (2010), pp. 421–426.
論文全文使用權限
  • 同意授權校內瀏覽/列印電子全文服務,於2012-09-10起公開。
  • 同意授權校外瀏覽/列印電子全文服務,於2012-09-10起公開。


  • 如您有疑問,請聯絡圖書館
    聯絡電話:(06)2757575#65773
    聯絡E-mail:etds@email.ncku.edu.tw