請用此 Handle URI 來引用此文件:
http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/47009
完整後設資料紀錄
DC 欄位 | 值 | 語言 |
---|---|---|
dc.contributor.advisor | 薛智文(Chih-Wen Hsueh) | |
dc.contributor.author | Yuan-Cheng Lee | en |
dc.contributor.author | 李沅臻 | zh_TW |
dc.date.accessioned | 2021-06-15T05:45:10Z | - |
dc.date.available | 2011-09-01 | |
dc.date.copyright | 2011-08-22 | |
dc.date.issued | 2011 | |
dc.date.submitted | 2011-08-19 | |
dc.identifier.citation | [1] Fabrice Bellard. QEMU, a fast and portable dynamic translator. In ATEC’05: Proceedings of the annual conference on USENIX Annual Technical Conference, page 41, Berkeley, CA, USA, 2005. USENIX Association.
[2] Splashtop Inc. Splashtop website, 2011. http://www.splashtop.com. [3] ARM Ltd. ARM website, 2011. http://www.arm.com. [4] Roberto Mijat and Andy Nightingale. Virtualization is Coming to a Platform Near You, 2010. http://www.arm.com/files/pdf/System-MMU-Whitepaper-v8.0.pdf. [5] ARM Ltd. Cortex-A5TMTechnical Reference Manual, 2010. http://infocenter.arm.com/help/topic/com.arm.doc.ddi0433-/. [6] P. P. Chang and W.-W. Hwu. Inline function expansion for compiling C programs. In Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation, PLDI ’89, pages 246–257, New York, NY, USA, 1989. ACM. [7] Google. Android Emulator, 2011. http://developer.android.com/ guide/developing/tools/emulator.html. [8] Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield. Xen and the art of virtualization. In Proceedings of the nineteenth ACM symposium on Operating systems principles, SOSP ’03, pages 164–177, New York, NY, USA, 2003. ACM. [9] Gerald J. Popek and Robert P. Goldberg. Formal requirements for virtualizable third generation architectures. Commun. ACM, 17(7):412–421, July 1974. [10] Muli B. Yehuda, Michael D. Day, Zvi Dubitzky, Michael Factor, Nadav Har’El, Abel Gordon, Anthony Liguori, Orit Wasserman, and Ben A. Yassour. The turtles project: design and implementation of nested virtualization. In Proceedings of the 9th USENIX conference on Operating systems design and implementation, OSDI’10, pages 1–6, Berkeley, CA, USA, 2010. USENIX Association. [11] John Scott Robin and Cynthia E. Irvine. Analysis of the Intel Pentium’s ability to support a secure virtual machine monitor. In Proceedings of the 9th conference on USENIX Security Symposium - Volume 9, pages 10–10, Berkeley, CA, USA, 2000. USENIX Association. [12] VMware, Inc. Understanding Full Virtualization, Paravirtualization, and Hardware Assist, 2007. http://www.vmware.com/files/pdf/VMware_paravirtualization.pdf. [13] David Chisnall. The Definitive Guide to the Xen Hypervisor. Prentice Hall PTR, Upper Saddle River, NJ, USA, 2007. [14] Keith Adams and Ole Agesen. A comparison of software and hardware techniques for x86 virtualization. In Proceedings of the 12th international conference on Architectural support for programming languages and operating systems, ASPLOS-XII, pages 2–13, New York, NY, USA, 2006. ACM. [15] DalvikVM.com. Brief overview of the Dalvik virtual machine and its insights, 2008. http://www.dalvikvm.com/. [16] Joo-Young Hwang, Sang-Bum Suh, Sung-Kwan Heo, Chan-Ju Park, Jae-Min Ryu, Seong-Yeol Park, and Chul-Ryun Kim. 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, pages 257 –261, January 2008. [17] Patrick Gerber, Pietro Descombes, Daniel Rossier, Lionel Sambuc, and Gilles Curchod. PENAR - Porting XEN on ARM-based Embedded Systems. Technical report, HES-SO, 2010. [18] Gernot Heiser and Ben Leslie. The OKL4 microvisor: convergence point of microkernels and hypervisors. In Proceedings of the first ACM asia-pacific workshop on Workshop on systems, APSys ’10, pages 19–24, New York, NY, USA, 2010. ACM. [19] J. Liedtke. On micro-kernel construction. In SOSP ’95: Proceedings of the fifteenth ACM symposium on Operating systems principles, pages 237–250, New York, NY, USA, 1995. ACM. [20] Gernot Heiser. OKL4 Programming: Overview of the OKL4 3.0 API, 2008. wiki.ok-labs.com/downloads/LATEST/api-slides-3.0.pdf. | |
dc.identifier.uri | http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/47009 | - |
dc.description.abstract | 以往受限於嵌入式處理器的計算能力,在嵌入式系統中採用虛擬化技術曾是個不切實際的想法。然而在現今的嵌入式系統中,虛擬化的需求卻日益增加。採用虛擬化技術可以完整地運用多核心的資源,也可增進與雲端計算的整合運作。然而,目前有關於嵌入式系統虛擬化的研究並不多,使用的技術也多半是基於過去 x86 平台發展而來。在這篇論文中,我們提出名為行內仿真的優化技術,以降低在嵌入式系統中採用虛擬化所產生的額外成本,並增進模擬權限指令的效能。同時,我們在 Android 仿真器中實作適用於 ARMv5 架構的行內仿真,以驗證其設計的正確性及適用性。在微觀層次的分析中,其結果指出行內仿真在模擬特定的指令時,最快可比一般半虛擬化技術快 7.1 倍。對於整個系統而言,實驗結果也證實行內仿真不但可以降低開發成本,同時也可以增加系統效能。 | zh_TW |
dc.description.abstract | For embedded systems, virtualization once seemed to be an impractical idea because of the limited capability of embedded processors and it is very challenging to design an efficient virtualization environment. In addition, the development cost is usually high for porting operating systems to adopt virtualization on embedded systems. However, the demand for virtualization on embedded systems is growing in these days. The main reasons of adopting virtualization include fully utilizing multi-core processors, cloud computing collaboration, and so on. Nevertheless, there are currently few researches about virtualization on embedded systems and most techniques are developed based on x86 platform. In this paper, we present a new optimization technique called inline emulation to lower overhead of adopting virtualization on embedded systems and increase the performance of emulating privileged instructions. We also implement inline emulation for ARMv5 architecture and evaluate the prototype in Android Emulator, which is an emulator of ARM platform. According to the experiment result, it suggests that inline emulation not only lowers the development cost but also increases system performance. | en |
dc.description.provenance | Made available in DSpace on 2021-06-15T05:45:10Z (GMT). No. of bitstreams: 1 ntu-100-R98922007-1.pdf: 635795 bytes, checksum: ccef950f879703a15ab9735475adc051 (MD5) Previous issue date: 2011 | en |
dc.description.tableofcontents | Contents
Abstract i 1 Introduction 1 2 Background 5 2.1 Virtualizable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.2 Classification of Virtual Machine Monitor . . . . . . . . . . . . . . . . . . . . . . 7 2.3 ExecutionModes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.4 Access Control of Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.5 Issues on Virtualization for ARM . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.6 Sensitive Instructions in ARMv5 . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.7 RelatedWork . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3 Design of Inline Emulation 23 3.1 Filtering Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 3.2 Finding a Proper Inline Emulation Handler . . . . . . . . . . . . . . . . . . . . . 26 3.3 Inline Emulation Handlers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 3.4 Implementation Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.4.1 Multi-core Processors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 3.4.2 The Thumb Instruction Set . . . . . . . . . . . . . . . . . . . . . . . . . 36 4 Evaluation 37 4.1 Static Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.2 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 4.3 Micro-Level Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.4 Macro-Level Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 5 Conclusions 47 Appendices A The List of Sensitive Instructions 48 A.1 Type I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 A.2 Type II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 A.3 Type III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 Bibliography 50 | |
dc.language.iso | en | |
dc.title | 行內仿真:嵌入式系統上虛擬化的優化技術 | zh_TW |
dc.title | Inline Emulation: An Optimization Technique for Virtualization on Embedded Systems | en |
dc.type | Thesis | |
dc.date.schoolyear | 99-2 | |
dc.description.degree | 碩士 | |
dc.contributor.oralexamcommittee | 陳敬(Jing Chen),張榮貴(Rong-Guey Chang) | |
dc.subject.keyword | 虛擬化,行內仿真,嵌入式系統,優化,敏感指令,Xen, | zh_TW |
dc.subject.keyword | virtualization,inline,emulation,embedded systems,optimization,sensitive instruction,Xen, | en |
dc.relation.page | 52 | |
dc.rights.note | 有償授權 | |
dc.date.accepted | 2011-08-19 | |
dc.contributor.author-college | 電機資訊學院 | zh_TW |
dc.contributor.author-dept | 資訊工程學研究所 | zh_TW |
顯示於系所單位: | 資訊工程學系 |
文件中的檔案:
檔案 | 大小 | 格式 | |
---|---|---|---|
ntu-100-1.pdf 目前未授權公開取用 | 620.89 kB | Adobe PDF |
系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。