Kategori
General HCIA CC Huawei Cloud

Virtualisasi Komputasi

Virtualisasi komputasi mencakup virtualisasi CPU, virtualisasi memori, dan virtualisasi I/O.

CPU Virtualization

CPU hierarchical

Sebelum kita berbicara tentang virtualisasi CPU, mari kita lihat sekilas domain perlindungan hierarkis CPU, yang sering disebut cincin perlindungan. Ada empat dering: Dering 0, Dering 1, Dering 2, dan Dering 3, yang merupakan hierarki kontrol dari hak istimewa paling banyak hingga paling sedikit. Ring 0 memiliki akses langsung ke perangkat keras. Umumnya, hanya OS dan driver yang memiliki hak istimewa ini. Ring3 memiliki hak istimewa paling sedikit. Semua program memiliki hak istimewa Ring 3. Untuk melindungi komputer, beberapa instruksi berbahaya hanya dapat dijalankan oleh OS, mencegah perangkat lunak berbahaya memanggil sumber daya perangkat keras secara acak. Misalnya, jika suatu program perlu mengaktifkan kamera, program tersebut harus meminta driver Dering 0 untuk melakukannya atas namanya. Jika tidak, operasi akan ditolak.

OS pada host umum mengirimkan dua jenis instruksi: instruksi istimewa dan instruksi umum.

  • Instruksi yang diistimewakan adalah instruksi yang digunakan untuk memanipulasi dan mengelola sumber daya sistem utama. Instruksi ini dapat dijalankan oleh program dengan tingkat hak istimewa tertinggi, yaitu Ring 0.
  • Instruksi umum dapat dieksekusi oleh program dengan tingkat hak istimewa yang sama, yaitu Ring 3.

Dalam lingkungan virtual, ada jenis instruksi khusus lain yang disebut instruksi sensitif. Instruksi sensitif digunakan untuk mengubah mode operasi VM atau status mesin host. Instruksi ditangani oleh VMM setelah instruksi hak istimewa yang awalnya perlu dijalankan di Ring 0 di OS tamu dicabut hak istimewanya.

Teknologi virtualisasi pertama kali diterapkan pada mainframe IBM. Bagaimana mainframe mengimplementasikan berbagi CPU? Pertama, mari kita pelajari tentang metode virtualisasi CPU dari mainframe. Metode virtualisasi CPU yang digunakan oleh mainframe adalah Deprivileging dan Trap-and-Emulation, yang juga disebut metode virtualisasi klasik. Prinsip dasarnya adalah sebagai berikut: OS tamu berjalan pada tingkat non-hak istimewa (yaitu, deprivileging) dan VMM berjalan pada tingkat hak istimewa tertinggi (yaitu, sepenuhnya mengendalikan sumber daya sistem).

Masalah muncul: Bagaimana instruksi istimewa yang dikirim oleh OS tamu VM dapat dilakukan? Karena hak istimewa semua sistem VM telah dihapus, Perangkap-dan-Emulasi mulai berlaku. Setelah hak istimewa dari OS tamu dihapus, sebagian besar instruksi dari OS tamu masih dapat berjalan di perangkat keras. Hanya ketika instruksi istimewa tiba, itu akan dikirim ke VMM untuk ditiru. VMM, sebagai pengganti VM, mengirimkan instruksi istimewa ke CPU perangkat keras yang sebenarnya.

Menggabungkan metode virtualisasi CPU klasik dengan mekanisme interupsi timer dari OS asli dapat memecahkan masalah dalam virtualisasi CPU. Misalnya, VM 1 mengirimkan instruksi istimewa 1 ke VMM. Interupsi dipicu. VMM menjebak instruksi istimewa
1 dikirim oleh VM 1 untuk emulasi, dan kemudian mengubah instruksi menjadi instruksi istimewa 1′ dari CPU. VMM menjadwalkan instruksi istimewa 1′ ke CPU perangkat keras untuk dieksekusi, dan mengirimkan hasilnya ke VM 1, seperti yang ditunjukkan pada Gambar 2-3. Ketika VM 1 dan VM 2 mengirim hak istimewa
instruksi ke VMM pada saat yang sama, instruksi terjebak ke dalam emulasi, dan VMM melakukan penjadwalan terpadu. Instruksi 1′ dieksekusi dan kemudian instruksi 2′ dieksekusi, seperti yang ditunjukkan pada Gambar 2-4. Fungsi virtualisasi CPU berhasil diimplementasikan dengan menggunakan mekanisme interupsi timer dan metode Deprivileging dan Trap-and-Emulation.

Unified scheduling of all instructions
Special instructions

Mengapa mekanisme interupsi pengatur waktu diperlukan? Jika keadaan darurat terjadi di luar sistem, di dalam sistem, atau dalam program saat ini, CPU segera menghentikan jalannya program saat ini, dan secara otomatis beralih ke program pemrosesan yang sesuai (program layanan gangguan). Setelah pemrosesan selesai, CPU kembali ke program semula. Proses ini disebut interupsi program. Misalnya, saat Anda menonton video, program pesan instan tiba-tiba menampilkan pesan, yang memicu mekanisme interupsi. CPU akan menjeda proses pemutaran video dan menjalankan proses pesan instan. Setelah memproses operasi pesan instan, CPU terus menjalankan proses pemutaran video. Tentu saja, waktu interupsi sangat singkat dan pengguna tidak menyadari adanya interupsi.

Karena kinerja host x86 semakin ditingkatkan, penerapan teknologi virtualisasi ke arsitektur x86 menjadi masalah utama untuk mengimplementasikan virtualisasi server x86. Pada saat ini, orang biasanya memikirkan penggunaan teknologi virtualisasi CPU pada mainframe. Bisakah metode virtualisasi CPU yang digunakan pada mainframe ditransplantasikan ke server x86? Jawabannya adalah tidak. Tapi kenapa? Untuk menjawab pertanyaan ini, kita perlu memahami perbedaan antara CPU arsitektur x86 dan CPU mainframe.

Mainframe (termasuk komputer kelas menengah berikutnya) menggunakan arsitektur PowerPC, yaitu arsitektur komputer set instruksi yang dikurangi (RISC). Dalam set instruksi CPU dari RISC
arsitektur, instruksi sensitif khusus untuk VM disertakan dalam instruksi istimewa, seperti yang ditunjukkan pada Gambar 2-5. Setelah hak istimewa VM OS dihapus, instruksi istimewa dan instruksi sensitif dapat dijebak, ditiru, dan dieksekusi. Karena instruksi yang diistimewakan menyertakan instruksi sensitif, CPU dengan arsitektur RISC dapat menggunakan metode Deprivileging dan Trap-and-Emulation dengan benar. Namun, set instruksi CPU dalam arsitektur x86 adalah set instruksi CISC, yang berbeda dari set instruksi RISC, seperti yang ditunjukkan pada Gambar 2-6.

RISC instruction set
CISC instruction set

Seperti yang ditunjukkan pada gambar sebelumnya, instruksi istimewa dan instruksi sensitif dalam set instruksi CISC tidak sepenuhnya tumpang tindih. Secara khusus, 19 instruksi sensitif dalam set instruksi CISC berdasarkan arsitektur x86 bukanlah instruksi yang diistimewakan. Instruksi sensitif ini berjalan dalam mode pengguna Ring 1 dari CPU. Masalah apa yang akan ditimbulkan? Rupanya, ketika VM mengirim salah satu dari 19 instruksi sensitif, instruksi tersebut tidak dapat ditangkap oleh VMM dengan cara Trap-and-Emulation karena itu bukan instruksi yang diistimewakan. Oleh karena itu, server x86 tidak dapat divirtualisasikan menggunakan metode Deprivileging dan Trap-and-Emulation. Masalah ini disebut kerentanan virtualisasi. Karena metode virtualisasi CPU berbasis mainframe tidak dapat langsung ditransplantasikan ke platform x86, metode virtualisasi CPU apa yang harus digunakan oleh platform x86?

Arsitek TI datang dengan tiga teknik alternatif. Mereka adalah virtualisasi penuh, paravirtualisasi, dan virtualisasi yang dibantu perangkat keras (diusulkan oleh vendor perangkat keras).

Virtualisasi penuh
Metode virtualisasi klasik tidak cocok untuk CPU berbasis x86. Akar penyebabnya adalah bahwa 19 instruksi sensitif di luar instruksi istimewa. Masalah virtualisasi CPU dapat diselesaikan hanya setelah instruksi sensitif ini dapat diidentifikasi, dijebak, dan ditiru oleh VMM. Tapi bagaimana mungkin 19 instruksi ini?
diidentifikasi?

Metode identifikasi fuzzy dapat digunakan. Semua permintaan OS yang dikirim oleh VM diteruskan ke VMM, dan VMM melakukan terjemahan biner pada permintaan tersebut. Ketika VMM mendeteksi instruksi yang diistimewakan atau sensitif, permintaan akan dijebak ke dalam VMM untuk diemulasi. Kemudian, permintaan dijadwalkan ke tingkat hak istimewa CPU untuk dieksekusi. Ketika VMM
mendeteksi instruksi program, instruksi dieksekusi pada level non-privilege CPU. Teknik ini disebut virtualisasi penuh karena semua instruksi permintaan yang dikirim oleh VM perlu difilter. Gambar 2-7 menunjukkan implementasi virtualisasi penuh.

Virtualisasi penuh pertama kali diusulkan dan diimplementasikan oleh VMware. VMM menerjemahkan kode biner dari VM OS (guest OS) tanpa memodifikasi VM OS. VM memiliki portabilitas dan kompatibilitas yang tinggi. Namun, terjemahan biner menyebabkan overhead kinerja VMM. Di satu sisi, virtualisasi penuh memiliki keuntungan sebagai berikut: VM OS tidak perlu dimodifikasi. VM sangat portabel dan kompatibel, serta mendukung berbagai OS. Di sisi lain, ia memiliki kelemahan sebagai berikut: Memodifikasi kode biner OS tamu selama menjalankan menyebabkan kerugian kinerja yang besar dan meningkatkan kompleksitas pengembangan VMM. Xen mengembangkan teknik paravirtualization, yang mengkompensasi kerugian dari virtualisasi penuh.

Full virtualization

Paravirtualisasi
Kerentanan virtualisasi berasal dari 19 instruksi sensitif. Jika kita dapat memodifikasi VM OS (guest OS) untuk menghindari kerentanan virtualisasi, maka masalahnya dapat diselesaikan.

Jika OS tamu dapat dimodifikasi untuk dapat menyadari bahwa itu adalah virtual, OS VM menggunakan Hypercall untuk mengganti instruksi sensitif dalam virtualisasi dengan lapisan hypervisor untuk mengimplementasikan virtualisasi. Instruksi non-sensitif seperti privileged dan instruksi program dieksekusi langsung pada level non-privilege CPU. Gambar 2-8 menunjukkan paravirtualisasi. Paravirtualization memiliki keuntungan sebagai berikut: Beberapa jenis OS tamu dapat berjalan pada waktu yang sama. Paravirtualization memberikan kinerja yang mirip dengan sistem non-virtualisasi asli. Kerugiannya adalah sebagai berikut: OS host hanya dapat dimodifikasi untuk sistem sumber terbuka, seperti Linux. Sistem non-sumber terbuka, seperti Windows, tidak mendukung paravirtualisasi. Selain itu, OS tamu yang dimodifikasi memiliki portabilitas yang buruk.

Paravirtualization

Virtualisasi yang dibantu perangkat keras
Dalam virtualisasi dan paravirtualisasi penuh, perangkat keras fisik tidak mendukung identifikasi virtualisasi secara default. Jika CPU fisik mendukung virtualisasi dan mampu mengidentifikasi instruksi sensitif, itu akan menjadi perubahan revolusioner untuk virtualisasi CPU.

Untungnya, CPU dari host x86 mainstream mendukung teknologi virtualisasi perangkat keras, misalnya CPU Intel Virtualization Technology (VT-x) dan CPU AMD-V AMD. Intel VT-x dan AMD-V AMD keduanya menargetkan instruksi istimewa dengan fitur mode eksekusi CPU baru yang memungkinkan VMM berjalan dalam mode ROOT baru di bawah Ring 0. Panggilan istimewa dan sensitif diatur untuk secara otomatis menjebak hypervisor, menghilangkan kebutuhan baik untuk virtualisasi penuh atau paravirtualisasi. Virtualisasi berbantuan perangkat keras digunakan untuk mengatasi kerentanan virtualisasi, menyederhanakan perangkat lunak VMM, dan menghilangkan kebutuhan akan paravirtualisasi atau terjemahan biner. Gambar 2-9 menunjukkan teknik virtualisasi berbantuan perangkat keras.

Hardware-assisted virtualization

Memory Virtualization

j

Virtualisasi memori adalah jenis penting lain dari virtualisasi komputasi selain virtualisasi CPU. Jadi mengapa virtualisasi CPU mengarah ke virtualisasi memori?

Dengan virtualisasi CPU, VM yang berjalan di atas lapisan VMM telah menggantikan host fisik untuk menjalankan aplikasi. Beberapa VM dapat berjalan di host yang sama. Sebuah host biasanya memiliki satu atau lebih modul memori. Bagaimana sumber daya memori dapat dialokasikan ke beberapa VM dengan benar? Virtualisasi memori diperkenalkan untuk mengatasi masalah ini. Satu masalah dengan virtualisasi memori adalah bagaimana mengalokasikan ruang alamat memori. Umumnya, host fisik mengalokasikan ruang alamat memori sebagai berikut:

  • Alamat memori dimulai dari alamat fisik 0.
  • Ruang alamat memori dialokasikan secara terus menerus.

Namun, setelah virtualisasi diperkenalkan, masalah berikut terjadi: Hanya ada satu ruang alamat memori yang alamat fisiknya 0. Oleh karena itu, tidak mungkin untuk memastikan bahwa ruang alamat memori semua VM di host dimulai dari alamat fisik 0. Di sisi lain, mengalokasikan alamat fisik yang berdekatan ke VM menyebabkan pemanfaatan memori yang rendah dan tidak fleksibel.

Virtualisasi memori diperkenalkan untuk memecahkan masalah mengenai pembagian memori dan alokasi dinamis alamat memori. Virtualisasi memori adalah proses pengelolaan memori fisik secara terpusat dari mesin fisik dan menggabungkan memori fisik
ke dalam kumpulan memori tervirtualisasi yang tersedia untuk VM. Virtualisasi memori menciptakan lapisan baru ruang alamat, yaitu ruang alamat VM. VM dibuat untuk percaya bahwa mereka berjalan di ruang alamat fisik nyata padahal permintaan akses mereka disampaikan oleh VMM. VMM menyimpan pemetaan antara ruang alamat mesin tamu dan ruang alamat mesin fisik, seperti yang ditunjukkan pada Gambar 2-10.

Virtualisasi memori melibatkan terjemahan dari tiga jenis alamat memori: alamat memori VM (VA), alamat memori fisik (PA), dan alamat memori mesin (MA). Jalur terjemahan alamat langsung berikut harus didukung agar beberapa VM dapat menjalankan host fisik: VA (memori virtual) → PA (memori fisik) → MA (memori mesin). VM OS mengontrol pemetaan dari alamat virtual ke alamat fisik memori pelanggan (VA → PA). Namun, VM OS tidak dapat langsung mengakses memori mesin. Oleh karena itu, hypervisor perlu memetakan memori fisik ke memori mesin (PA → MA).

Kita dapat menggunakan contoh untuk menjelaskan perbedaan antara MA dan PA. Jika server memiliki total enam belas bilah memori 16 GB, maka PA-nya adalah 256 GB, dan MA adalah enam belas bilah memori yang didistribusikan di berbagai slot memori.

I/O Virtualization

Dengan virtualisasi komputasi, sejumlah besar VM dapat dibuat pada satu host, dan semua VM ini perlu mengakses perangkat I/O dari host ini. Namun, perangkat I/O terbatas. Berbagi perangkat I/O di antara beberapa VM membutuhkan VMM. VMM memotong permintaan akses dari VM ke perangkat I/O, mensimulasikan perangkat I/O menggunakan perangkat lunak, dan merespons permintaan I/O. Dengan cara ini, beberapa VM dapat mengakses sumber daya I/O secara bersamaan. Virtualisasi I/O dapat diimplementasikan dalam metode berikut: virtualisasi penuh, paravirtualisasi, dan virtualisasi berbantuan perangkat keras. Virtualisasi berbantuan perangkat keras adalah teknologi utama untuk virtualisasi I/O.

Virtualisasi penuh
VMM memvirtualisasikan perangkat I/O untuk VM. Ketika VM memulai permintaan I/O ke perangkat I/O, VMM memotong permintaan yang dikirim oleh VM, dan kemudian mengirimkan permintaan akses nyata ke perangkat fisik untuk diproses. Apa pun jenis OS yang digunakan oleh VM, OS tidak perlu dimodifikasi untuk virtualisasi I/O. Beberapa VM dapat
langsung menggunakan perangkat I/O dari server fisik. Namun, VMM perlu mencegat permintaan I/O yang dikirimkan oleh setiap VM secara real time dan mengemulasi permintaan ke perangkat I/O yang sebenarnya. Pemantauan dan emulasi real-time diimplementasikan oleh program perangkat lunak pada CPU, yang menyebabkan hilangnya kinerja yang parah ke server.

Paravirtualisasi
Tidak seperti virtualisasi penuh, paravirtualization membutuhkan VM istimewa. Paravirtualization membutuhkan setiap VM untuk menjalankan driver frontend. Saat VM perlu mengakses perangkat I/O, VM mengirim permintaan I/O ke VM yang diistimewakan melalui driver frontend, dan driver backend dari VM yang diistimewakan mengumpulkan permintaan I/O yang dikirim oleh setiap VM. Kemudian, driver backend memproses beberapa permintaan I/O menurut waktu dan saluran. VM yang diistimewakan menjalankan driver perangkat I/O fisik dan mengirimkan permintaan I/O ke perangkat I/O fisik. Setelah memproses permintaan, perangkat I/O mengembalikan hasil pemrosesan ke VM yang diistimewakan. VM mengirim permintaan I/O ke VM dengan hak istimewa dan kemudian VM dengan hak istimewa mengakses perangkat I/O yang sebenarnya. Ini mengurangi hilangnya kinerja VMM. Namun, VM OS perlu dimodifikasi. Secara khusus, metode pemrosesan permintaan I/O dari OS perlu diubah sehingga semua permintaan I/O dapat dikirim ke VM istimewa untuk diproses. Ini mengharuskan VM OS dapat dimodifikasi (biasanya Linux). Gambar 2-11 menunjukkan arsitektur Xen.

Xen architecture

Pada Gambar 2-11, Domain 0 adalah VM istimewa, dan Domain U adalah VM pengguna. Informasi perangkat dari semua VM pengguna disimpan di XenSToRe dari VM Domain0 yang diistimewakan. XenBus (driver paravirtualization dikembangkan untuk Xen) di VM pengguna berkomunikasi dengan XenSToRe Domain 0 untuk mendapatkan informasi perangkat dan memuat driver frontend yang sesuai dengan perangkat. Saat VM pengguna mengirim permintaan I/O, driver perangkat frontend meneruskan semua data ke driver backend melalui antarmuka. Driver backend memproses data permintaan I/O menurut waktu dan saluran. Terakhir, driver perangkat I/O fisik Domain 0 mengirimkan permintaan I/O ke perangkat I/O fisik.

Mari kita ambil contoh untuk membandingkan virtualisasi penuh dan paravirtualisasi. Dalam virtualisasi penuh, VMM bertindak sebagai penyidik. Ini mengumpulkan dan merangkum pendapat dan permintaan setiap pelanggan (VM). Dalam paravirtualisasi, kotak penerima opini (yaitu, VM istimewa) disiapkan dan setiap pelanggan memasukkan opini dan permintaan ke dalam kotak, dan VMM memproses opini dan permintaan secara terpusat. Paravirtualisasi secara signifikan mengurangi hilangnya kinerja VMM dan oleh karena itu memberikan kinerja I/O yang lebih baik. Virtualisasi penuh dan paravirtualisasi memiliki kesamaan: VMM bertanggung jawab atas pemrosesan akses I/O, yang menyebabkan hilangnya kinerja saat VM mengakses perangkat I/O.

Virtualisasi yang dibantu perangkat keras
Berbeda dari dua metode sebelumnya, virtualisasi berbantuan perangkat keras langsung menginstal driver perangkat I/O di VM OS tanpa mengubah OS apa pun. Metode ini setara dengan akses OS PC tradisional ke perangkat keras. Oleh karena itu, waktu yang dibutuhkan VM untuk mengakses perangkat keras I/O sama dengan waktu yang dibutuhkan PC tradisional untuk mengakses perangkat keras I/O. Dalam contoh sebelumnya, virtualisasi yang dibantu perangkat keras seperti platform pengumpulan dan pemrosesan informasi yang cerdas. Permintaan pengguna dapat langsung dikirimkan ke platform dan platform secara otomatis memproses permintaan tersebut. Oleh karena itu, virtualisasi berbantuan perangkat keras mengungguli virtualisasi penuh dan paravirtualisasi dalam hal kinerja I/O. Namun, virtualisasi yang dibantu perangkat keras memerlukan dukungan perangkat keras khusus.

Mainstream Compute Virtualization

Virtualisasi CPU, virtualisasi memori, dan virtualisasi I/O dapat diimplementasikan untuk memungkinkan penggunaan kembali sumber daya fisik. Beberapa server virtual dapat berjalan pada host fisik pada saat yang sama, dan setiap server virtual dapat menjalankan beban kerja yang berbeda. Ini meningkatkan pemanfaatan perangkat keras. Selain itu, segala sesuatu tentang server virtual dapat dikemas ke dalam satu file atau folder. Ini memutuskan hubungan erat antara perangkat lunak dan perangkat keras dan memungkinkan VM untuk bermigrasi di seluruh host dan bahkan pusat data, meningkatkan keandalan beban kerja yang berjalan di VM. Dalam komputasi awan, kami terutama menggunakan virtualisasi untuk mengimplementasikan layanan cloud IaaS.

Ada tiga model layanan cloud: IaaS, PaaS, dan SaaS. Beberapa layanan PaaS dan SaaS diimplementasikan berdasarkan virtualisasi, dan beberapa diimplementasikan berdasarkan perangkat keras fisik dan komputasi terdistribusi. Mari kita gunakan film fiksi ilmiah pertama China “The Wandering Earth” sebagai contoh, yang mengejutkan banyak orang karena gambarnya yang jelas. Gambar-gambar film dirender menggunakan solusi rendering cloud publik Huawei (HUAWEI CLOUD) yang melibatkan banyak produk. Render SD dapat diimplementasikan oleh C3 ECS dan layanan cloud lainnya. C3 ECS menggunakan teknologi virtualisasi di lapisan bawah. Render panorama dapat diimplementasikan oleh BMS dan layanan cloud lainnya. Latar belakang BMS menggunakan server fisik nyata alih-alih teknologi virtualisasi.

Komputasi awan adalah model bisnis yang menyediakan layanan TI kepada pengguna kapan saja di mana saja. Virtualisasi adalah sarana teknis yang penting untuk implementasi komputasi awan.

Ada banyak teknologi virtualisasi arus utama. Umumnya, open-source dan closed-source digunakan untuk klasifikasi. Teknologi open-source termasuk KVM dan Xen. Teknologi virtualisasi sumber tertutup termasuk Microsoft Hyper-V, VMware vSphere, dan Huawei FusionSphere.

Teknologi open-source tidak dikenai biaya dan dapat digunakan kapan saja. Pengguna dapat menyesuaikan beberapa persyaratan khusus berdasarkan kode sumber terbuka. Teknologi open-source memiliki persyaratan tinggi pada teknologi pengguna. Setelah masalah terjadi pada sistem, pemulihan sistem sangat bergantung pada keahlian dan pengalaman administrator. Dalam teknologi sumber tertutup, pengguna tidak dapat melihat atau menyesuaikan kode sumber. Produk virtualisasi sumber tertutup umumnya tidak gratis dan dapat digunakan secara langsung. Jika terjadi masalah sistem, vendor menyediakan dukungan menyeluruh.

Bagi pengguna, tidak ada artinya untuk menentukan mana yang lebih baik antara teknologi virtualisasi sumber terbuka atau sumber tertutup, tetapi menentukan skenario aplikasi masing-masing masuk akal.

Dalam teknologi virtualisasi sumber terbuka, Xen setara dengan KVM. KVM adalah virtualisasi penuh, sedangkan Xen mendukung paravirtualisasi dan virtualisasi penuh. KVM, sebuah modul di kernel Linux, digunakan untuk memvirtualisasikan CPU dan memori. Ini adalah proses dari OS Linux. Perangkat I/O lainnya (seperti NIC dan disk) perlu divirtualisasikan oleh QEMU.
Berbeda dengan KVM, Xen langsung berjalan di perangkat keras, dan VM berjalan di Xen. VM di Xen diklasifikasikan sebagai VM istimewa (Domain 0) yang memiliki izin untuk mengakses perangkat keras secara langsung dan mengelola VM lain (misalnya, Domain U). Domain 0 harus dimulai sebelumnya
VM lainnya. Domain U adalah VM umum dan tidak dapat langsung mengakses sumber daya perangkat keras. Semua operasi di Domain U harus diteruskan ke Domain 0 melalui driver frontend dan backend. Domain 0 menyelesaikan operasi dan mengembalikan hasilnya ke Domain U.

Ref :

HCIA Cloud Computing