Nga tikanga whakahaere whanui o QEMU-KVM

Nga tikanga whakahaere whanui o QEMU-KVM

Ko taku mohiotanga o naianei:

1) KVM

Ko te KVM (Kernel-based Virtual Machine) he hypervisor (VMM - Kaiwhakahaere Miihini Mariko) e rere ana hei waahanga mo te Linux OS. Kei te hiahiatia he hypervisor hei whakahaere i etahi rorohiko i roto i te taiao kore-kore (mariko) me te huna ano i tenei rorohiko te taputapu tinana tuturu e whakahaere ana tenei rorohiko. Ko te hypervisor te mahi hei "mokowhiti" i waenga i te taputapu tinana (kaiwhakahaere) me te OS mariko (manuhiri).

I te mea ko te KVM he waahanga paerewa o te kernel Linux, ka whiwhi ia i nga mea pai katoa e hiahiatia ana mai i te kernel (whakahaere mahara, kaiwhakarite, me etahi atu). Na, i te mutunga, ko enei painga katoa ka tae ki nga manuhiri (mai i te mahi a nga manuhiri i runga i te hypervisor e rere ana i runga i te Linux OS kernel).

He tino tere te KVM, engari ko ia anake kaore e ranea ki te whakahaere i te OS mariko, na te mea ... Me whai tauira I/O tenei. Mo te I/O (CPU, kōpae, whatunga, ataata, PCI, USB, tauranga raupapa, me etahi atu) Ka whakamahia e KVM te QEMU.

2) QEMU

Ko te QEMU (Quick Emulator) he emulator mo nga momo taputapu ka taea e koe te whakahaere i nga punaha whakahaere i hangaia mo tetahi hoahoanga ki tetahi atu (hei tauira, ARM -> x86). Hei taapiri atu ki te tukatuka, ka peehia e QEMU nga momo taputapu peripheral: kaari whatunga, HDD, kaari ataata, PCI, USB, aha atu.

He penei te mahi:

Ko nga Tohutohu/Waehere-rua (hei tauira, ARM) ka huri ki te waehere turanga-motuhake ma te whakamahi i te kaitahuri TCG (Tiny Code Generator) katahi ka hurihia tenei waehere-rua-motuhake ki nga tohutohu / tohu (hei tauira, x86).

ARM -> takawaenga_waehere -> x86

Ko te mea nui, ka taea e koe te whakahaere mihini mariko i runga i te QEMU i runga i tetahi kaihautu, ahakoa me nga tauira tukatuka tawhito e kore e tautoko i te Intel VT-x (Intel Virtualization Technology) / AMD SVM (AMD Secure Virtual Machine). Heoi, i roto i tenei take, ka tino puhoi te mahi, na te mea me whakahiato ano te waehere-rua-rua i runga i te rere e rua, ma te whakamahi i te TCG (Ko te TCG he Kaihanga Just-in-Time).

Ko era. Ko te QEMU ano he mega hauhautanga, engari he puhoi te mahi.

3) Nga mowhiti tiaki

Nga tikanga whakahaere whanui o QEMU-KVM

Ko te waehere kaupapa rua i runga i nga kaitukatuka e mahi ana mo tetahi take, engari kei nga taumata rereke (nga mowhiti / Nga mowhiti Tiaki) me nga taumata rereke o te urunga raraunga, mai i te hunga tino whai mana (Ring 0), ki nga mea iti rawa, kua whakaritea me te "me nga nati kua mau. ” (Ring 3).

Ko te punaha whakahaere (te kernel OS) e rere ana i runga i te Ring 0 (aratau kernel) ka taea e ia te mahi i nga mea katoa e hiahia ana ia me nga raraunga me nga taputapu. Ko nga tono a nga kaiwhakamahi e mahi ana i te taumata Ring 3 (aratau kaiwhakamahi) kaore e whakaaetia ki te mahi i nga mea katoa e hiahia ana ratou, engari me tono uru ia wa ki te mahi i tetahi mahi motuhake (na, ko nga tono kaiwhakamahi anake te uru ki o raatau ake raraunga kaore e taea ki roto” te pouaka kirikiri a tetahi atu). Ko te mowhiti 1 me te 2 he mea mo te whakamahi ma nga taraiwa.

I mua i te tenenga o Intel VT-x / AMD SVM, i rere nga hypervisors i runga i te Ring 0, a ka oma nga manuhiri i runga i te Ring 1. I te mea kaore he mana o te Ring 1 mo te whakahaere noa o te OS, me ia piiraa whaimana mai i te punaha manuhiri, me whakarereke e te hypervisor tenei piiraa i runga i te rere ka mahia i runga i te Ring 0 (he rite ki te mahi a QEMU). Ko era. ā-rua manuhiri NOT i mahia tika i runga i te kaitukatuka, a, ia wa i haere i roto i te maha o nga whakarereketanga takawaenga i runga i te rere.

He mea nui te upoko, he raru nui tenei, katahi ka tukuna e nga kaihanga tukatuka, takitahi tetahi ki tetahi, he huinga tohutohu roa (Intel VT-x / AMD SVM) ka taea te whakamahi i te waehere OS manuhiri. TONU i runga i te kaitukatuka kaihautu (ka takahi i nga hikoinga takawaenga utu nui, pera i te keehi o mua).

I te taenga mai o Intel VT-x / AMD SVM, i hangaia he taumata Ringa hou -1 (he iti te kotahi). Na inaianei ka rere te hypervisor ki runga, ka rere nga manuhiri i runga i te Ring 0 ka whai waahi ki te PTM.

Ko era. te mutunga:

  • ka rere te kaihautu i runga i te Ring 0
  • Ka mahi nga manuhiri ki te Ring 0
  • ka rere te hypervisor i runga i te Ring -1

4) QEMU-KVM

Ka hoatu e KVM ki nga manuhiri te uru ki te Ring 0 me te whakamahi i te QEMU ki te whai i te I/O (tukatuka, kōpae, whatunga, ataata, PCI, USB, tauranga rangatū, me etahi atu e "kitea" e nga manuhiri me te mahi tahi).

No reira QEMU-KVM (KVM-QEMU ranei) :)

CREDITS
Pikitia hei kukume i te aro
Pikitia o nga mowhiti Tiaki

PS Ko te tuhinga o tenei tuhinga i whakaputaina tuatahitia i roto i te hongere Telegram @RU_Voip hei whakautu mo te patai a tetahi o nga kaiuru hongere.

Tuhia ki roto i nga korero kaore au i te tino marama ki te kaupapa, mena he mea hei taapiri.

Mauruuru!

Source: will.com

Tāpiri i te kōrero