簡易檢索 / 詳目顯示

研究生: 臧傑晧
Tsang, Chieh-Hao
論文名稱: 具有硬體支援之ARM架構的記憶體虛擬化實作
Memory Virtualization on ARM Architecture with Virtualization Hardware Extension
指導教授: 鍾葉青
Chung, Yeh-Ching
口試委員: 洪士灝
Hung, Shih-Hao
徐慰中
Hsu, Wei-Chung
鍾葉青
Chung, Yeh-Ching
學位類別: 碩士
Master
系所名稱: 電機資訊學院 - 資訊工程學系
Computer Science
論文出版年: 2013
畢業學年度: 101
語文別: 英文
論文頁數: 34
中文關鍵詞: 虛擬化硬體支援虛擬化記憶體虛擬化影子頁表64位元描述式
外文關鍵詞: virtualization, hardware-assisted extension, memory virtualization, shadow page table, 64-bit descriptor
相關次數: 點閱:2下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 虛擬化是一個在共享資源、安全管理等十分熱門的技術,特別是在雲端計算為發展趨勢的現在。一直以來,嵌入式硬體多以ARM架構為主要的開發平台,隨著雲端技術對於伺服器的需求增加,ARM著眼於伺服器市場,也提出了適用於伺服器的新一代架構。
    ARM架構在V7版本開始提供虛擬化硬體支援技術,相較於過去在ARM架構開發虛擬機器,記憶體虛擬化必須藉由影子頁表來完成記憶體虛擬化,並且必須要完成客戶機器頁表尋找、反向對應表等複雜的維護作業。ARMv7-A所提供的硬體支援技術,提供了專為虛擬化所用的HYP模式,以及對於處理器、記憶體、與輸入輸出介面的各種控制系統的暫存器,同時提供獨立於一般作業系統的記憶體轉換流程,ARMv7-A的所有硬體支援記憶體虛擬化都建立在40位元記憶體定址空間,並且記憶體位址的轉換接遵循64位元的描述式。這篇論文會討論如何使用這些ARMv7-A所提供的硬體支援技術,以完成ARM架構上的虛擬機器。


    Virtualization is a very important technique on resource sharing and server security, and it becomes an indispensable technique on cloud computing. Most of embedded hardware devices are developed on ARM architecture because of simpler instruction sets than X86 and excellent power consumption. To the accompaniment of popular cloud computing, ARM holding also targets on server market to create more business-opportunities. Therefore, ARM provided new architecture for the incoming cloud computing generation.
    Hardware-assisted extension is supported since ARMv7. Without hardware-assisted extension, shadow page table is the general method to implement memory virtualization. In addition, complex work for maintaining shadow page table such as walking guest page table and building reverse map are necessary for memory virtualization on ARM. In contrast to ARMv6, ARMv7-A provides a special processor mode for hypervisor implementation. Besides, there are some specific registers controlling processor, memory, or I/O virtualization. What’s more, ARMv7-A provides a two-stage memory system control which formed into 64-bit descriptor, covering 40-bit memory address space. In this thesis, I will discuss how to implement memory virtualization with ARMv7-A hardware-assisted virtualization extension.

    Abstract 2 Acknowledge 3 List of Figures 5 List of Table 5 Chapter 1 Introduction 6 Chapter 2 Related Work 8 Chapter 3 Memory Virtualization for ARMv7-A 11 3.1 ARMv7-A Memory Feature 11 3.2 ARMv7-A Virtualization Extension Overview 12 3.3 ARMvisor-2.0 System Model 14 3.4 Memory Virtualization with Hardware-assisted Extension 17 3.4.1 Guest Physical Memory Allocation 19 3.4.2 Vector Page and Exception Handler 20 3.4.3 Stage 2 Translation (Permission Model) 22 Chapter 4 Experiment Result 26 4.1 Experiment Environment 26 4.2 Experiment Data and Analysis 28 Chapter 5 Conclusion 31 Chapter 6 Future Work 32 Reference 33

    [1] VMware (NYSE:VMW), www.vmware.com
    [2] Xen Project, www.xenproject.org
    [3] KVM, www.linux-kvm.org
    [4] OKL4 Microvisor, www.ok-labs.com/products/okl4-microvisor
    [5] G. J. Popek and R. P. Goldberg, “Formal requirements for virtualizable third generation architectures,” Communications of the ACM, vol. 17, no. 7, pp. 412-421, 1974.
    [6] ARM Holdings plc., www.arm.com
    [7] ARM Architecture Reference Manual: ARMv7-A and ARMv7-R edition
    [8] Gernot Heiser, “The role of virtualization in Embedded Systems”, in IIES ’08 Proceedings of the 1st workshop on Isolation and integration in embedded systems
    [9] Christoffer Dall and Jason Nieh Columbia University,“KVM for ARM,” in the proceeding of Linux Symposium 2011
    [10] Gernot Heiser, Ben Leslie, “The OKL4 Microvisor: convergence point of microkernels and hypervisors”, in APSys ’10 Proceedings of the first ACM Asia-pacific workshop on Workshop on systems
    [11] VMware. “VMware Mobile Virtualization, Platform, Virtual Appliances for Mobile phones”, http://www.vmware.com/products/mobile/
    [12] Trango. “Trango: secured virtualization on ARM”, http://www.trango-vp.com
    [13] VirtuaLogix. “VirtuaLogix Real-Time Virtualization and VLX”, http://www.osware.com
    [14] Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, Andrew Warfield, “Xen and the Art of Virtualization”, in SOSP ’03 Proceedings of the nineteenth ACM symposium on Operating systems principles
    [15] Joo-Young Hwang; Sang-Bum Suh; Sung-Kwan Heo; Chan-Ju Park; Jae-Min Ryu; Seong-Yeol Park; Chul-Ryun Kim; Samsung Electron. Co. Ltd., Suwon, “Xen on ARM: System Virtualization using Xen Hypervisor for ARM-based Secure Mobile Phones”, in Consumer Communications and Networking Conference, 2008. CCNC 2008. 5th IEEE
    [16] Jeremy Andrus, Christoffer Dall, Alexander Van't Hof, Oren Laadan, and Jason Nieh, “Cells: A Virtual Mobile Smartphone Architecture”, Columbia University Technical Report, cucs-022-11, May 2011
    [17] Virtual Open System, www.virtualopensystems.com
    [18] Linaro: open source software for ARM, www.linaro.org
    [19] Jiun-Hung Ding, Chang-Jung Lin, Ping-Hao Chang, Chieh-Hao Tsang, Wei-Chung Hsu, Yeh-Ching Chung, "ARMvisor: System Virtualization for ARM", Linux Symposium 2012, Ottawa, Canada, July 11-13, 2012.
    [20] Cortex™-A15 MPCore™ Revision: r3p3 Technical Reference Manual
    [21] Fast Models Version 7.1 Reference Manual
    [22] Carl A. Waldspurger VMware, Inc., Palo Alto, CA, “Memory Resource Management in VMware ESX Server”, in ACM SIGOPS Operating Systems Review - OSDI ’02: Proceedings of the 5th symposium on Operating systems design and implementation
    [23] McVoy, L. W., & Staelin, C. (1996). “lmbench: Portable tools for performance analysis,” In USENIX annual technical conference. Barkely (pp. 279-294), Jan. 1996.
    [24] Yang Xu, Felix Bruns, Elizabeth Gonzalez, Shadi Traboulsi, Klaus Mott, Attila Bilgic. “Performance Evaluation of Para- virtualization on Modern Mobile Phone Platform”, in Proceedings of International Conference on Electrical, and System Science and Engineering
    [25] X. Wang, J. Zang, Z. Wang, Y. Luo, and X. Li, “Selective hardware/software memory virtualization”, in Proceedings of VEE. 2011, 217-226.

    無法下載圖示 全文公開日期 本全文未授權公開 (校內網路)
    全文公開日期 本全文未授權公開 (校外網路)

    QR CODE