Mesin virtual: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Agung.C (bicara | kontrib)
Agung.C (bicara | kontrib)
Baris 113:
-->
=== Virtualisasi di tingkat sistem operasi ===
 
Type II melakukan virtualisasi di tingkat sistem operasi. Type II membutuhkan host operating system untuk melakukan virtualisasi. Ketika dilakukan inisiasi VM, pertama-tama VMM membuat komponen hardware virtual yang memetakan abstraksi di host OS. Kemudian terjadi degradasi performansi akibat bottlenect ketika menjalankan VM. Bottlenect yang terjadi merupakan proses untuk menginisiasi VM. Setelah itu maka VM akan berjalan di sistem komputer.
 
Terdapat tiga bottleneck penyebab virtualization overhead. Pertama, struktur yang memisahkan dua host procesess yang menyebabkan inordinate number dari context switches di host. Kedua, perubahan antara guest kernel dan guest user yang menghasilkan banyaknya operasi untuk melindungi memory (memory protection operation). Ketiga, perubahan antara dua guest application process (atau lebih dari dua) yang menghasilkan banyaknya operasi memory mapping.
 
Proses inisiasi VM yang telah dijalankan oleh VMM mempunyai functional process untuk melakukan hal-hal tersebut. VMMM functional process berada di host kernel. Methode untuk melakukan intercept key events (system call and signals) di eksekusi di host kernel. Hal ini menyebabkan VMM kernel module mempunyai control yang baik terhadap guest machine process. Sebagai contoh kelebihannya, modul kernel VMM dapat merubah address guest machine process secara langsung.
 
Guest machine process berubah secara periodik antara guest user mode dengan guest kernel mode. Guest kernel harus dilibatkan untuk melakukan system call dan exception yang dilakukan oleh guest application process dan mengolah data yang dikirim oleh virtual I/O device. Setiap kali guest machine memproses perpindahan dari guest kernel mode ke guest user mode maka address space guest kernel [0x7000000, 0xc0000000] harus dilindungi dari akses yang tidak diinginkan. Sebaliknya, setiap kali perpindahan antara guest machine memproses perpindahan antara user mode ke guest kernel maka address space harus disediakan. Guest machine process dapat melakukan address space manipulation karena membuat host system calls mmap, munmap dan mprotect.
 
Perpindahan address space antara guest application process Dilakukan di dalam proses virtualisasi. Perpidahan address space milik guest harus merubah mapping antara guest virtual pages dan page di memory file physical tempat mesin melakukan virtualisasi. Perubahan mapping dilakukan dengan memanggil munmap untuk mengirim address space milik guest application process. Kemudian mmap dipanggil setiap residen di virtual page untuk menerima guess application process.
 
 
<!--
===Operating system-level virtualization===