Bagaimana cara Hypervisor membedakan beberapa VM yang berjalan di atasnya dan mengisolasinya dari perangkat keras yang mendasarinya?

Bagaimana cara Hypervisor membedakan beberapa VM yang berjalan di atasnya dan mengisolasinya dari perangkat keras yang mendasarinya? misalnya jika ada panggilan sistem dari dalam OS tamu, bagaimana HV mengetahui bahwa itu milik OS tamu tertentu? Tidak banyak detail tentang detail pengoperasian HV.


person OzgurGuler    schedule 20.07.2019    source sumber
comment
Hypervisor tidak tahu apa pun tentang syscall. Ini bekerja pada tingkat yang lebih rendah karena intinya adalah untuk membuat tamu tidak mengetahui perbedaan apa pun dari berlari di atas bare metal. Dalam kasus biasa.   -  person Sami Kuhmonen    schedule 20.07.2019
comment
Terima kasih Sami. Jadi maksud Anda HV tidak benar-benar mengetahui VM mana yang sedang memproses jebakannya. Itu hanya memprosesnya? Maaf saya tidak memiliki latar belakang tentang cara kerja OS...   -  person OzgurGuler    schedule 20.07.2019


Jawaban (1)


Panggilan sistem normal pada tamu diproses oleh OS tamu tanpa campur tangan hypervisor.

Namun, ketika tamu memang menyebabkan jebakan pada hypervisor (bukan panggilan sistem, namun beberapa operasi lain yang memerlukan layanan hypervisor), hypervisor mengetahui tamu yang mana karena ia mengetahui tamu mana yang dijadwalkan. CPU itu.

person prl    schedule 20.07.2019