To'liq virtualizatsiya - Full virtualization - Wikipedia

Bitta virtualizatsiya muhitining skrinshoti

Yilda Kompyuter fanlari, virtualizatsiya 1990-yillarning oxirida ishlab chiqilgan zamonaviy texnika va undan farq qiladi simulyatsiya va taqlid qilish. Virtuallashtirish atrof-muhitni modellashtirishdan farqli o'laroq, atrof-muhit misollarini yaratish uchun ishlatiladigan usullardan foydalanadi; yoki muayyan turdagi maqsadli muhitni takrorlaydigan taqlid virtual mashina atrof-muhit. To'liq virtualizatsiya apparatning har bir muhim xususiyati bir nechta virtual mashinalardan biriga, shu jumladan to'liq ko'rsatmalar to'plamiga aks ettirilishini talab qiladi. kirish / chiqish operatsion dasturlari, uzilishlar, xotiraga kirish va boshqa har qanday elementlardan ishlaydigan dastur tomonidan foydalaniladi yalang'och mashina va bu virtual mashinada ishlashga mo'ljallangan. Bunday muhitda xom apparatda bajariladigan har qanday dasturiy ta'minot virtual mashinada va, xususan, har qanday operatsion tizimda ishlashi mumkin. To'liq virtualizatsiyaning aniq sinovi yakka o'zi foydalanishga mo'ljallangan operatsion tizim virtual mashinada muvaffaqiyatli ishlashi mumkinmi.

To'liq virtualizatsiya yoki 1-turdagi virtualizatsiyaning asosi bu gipervizator yoki OSga qaraganda yuqori imtiyoz darajasida ishlaydigan Super Operatsion tizimdir. Ushbu Hypervisor yoki Super OS virtualizatsiya qilingan muhitni ta'minlash va himoya qilish uchun ikkita asosiy xususiyatni talab qiladi. Ushbu ikkita xususiyat:

  1. Linux, Microsoft Windows yoki o'rnatilgan muhit kabi barcha qo'llab-quvvatlanadigan virtual muhitlar uchun resurslarni taqdim etish va ushbu muhitlarni ruxsatsiz kirishdan himoya qilish uchun OS-dan mustaqil saqlashni boshqarish va
  2. Virtual muhitga jismoniy hisoblash resurslarini ajratish uchun Virtuallashtirilgan muhitlarni almashtirish.

Hypervisor, OS va User rejimlari, VMCS, VM-Exit va VM-Entry uchun imtiyoz darajalarining batafsil tavsifi uchun Intel VT-x yoki AMD-V-ga qarang. Ushbu virtualizatsiyani 60-yillarning oxiri va 70-yillarning boshlarida IBM Virtual Machine dasturlari bilan adashtirish mumkin emas, chunki IBM tizimlari arxitekturasi Virtual Mashinalarning xavfsizligini yoki ajratilishini ta'minlamagan Supervisor va Programning faqat ikkita rejimini qo'llab-quvvatladi.

Ning boshqa shakllari platformani virtualizatsiya qilish virtual mashinada faqat ma'lum yoki o'zgartirilgan dasturlarning ishlashiga ruxsat berish. Tushunchasi to'liq virtualizatsiya adabiyotda yaxshi tasdiqlangan, ammo u har doim ham ushbu aniq atama bilan atalmaydi; terminologiya uchun platformani virtualizatsiyalashga qarang.

Virtual mashinalarning muhim namunasi, uni taqlid qilish orqali amalga oshiriladigan Virtuallashtirish bilan aralashmaslik kerak edi, bu IBM ning boshqaruv dasturi tomonidan taqdim etilgan. CP / CMS operatsion tizim. Bu birinchi marta IBM-lar bilan namoyish etilgan CP-40 tadqiqot tizimi 1967 yilda, keyin tarqatilgan ochiq manba 1967-1972 yillarda CP / CMS-da va IBM-da qayta amalga oshirildi VM oilasi 1972 yildan hozirgi kungacha. Har bir CP / CMS foydalanuvchisi simulyatsiya qilingan, mustaqil kompyuter bilan ta'minlandi. Har bir bunday virtual mashina asosiy mashinaning to'liq imkoniyatlariga ega edi va (uning foydalanuvchisi uchun) virtual mashinani xususiy tizimdan ajratib bo'lmaydi. Ushbu simulyatsiya keng qamrovli edi va quyidagilarga asoslangan edi Faoliyat tamoyillari apparat uchun qo'llanma. Shunday qilib, u buyruqlar to'plami, asosiy xotira, uzilishlar, istisnolar va qurilmaga kirish kabi elementlarni o'z ichiga olgan. Natijada bitta mashina bo'lishi mumkin edi multiplekslangan ko'plab foydalanuvchilar orasida.

To'liq virtualizatsiya faqat apparat va dasturiy ta'minotning to'g'ri kombinatsiyasi elementlar. Masalan, IBM kompaniyalarining ko'pchiligida bu mumkin emas edi Tizim / 360 ketma-ketligi bundan mustasno IBM System / 360-67; IBM-ning erta davrida ham mumkin emas edi Tizim / 370 tizim. IBM 1972 yilda System / 370 seriyasiga virtual xotira uskunasini qo'shdi, bu Intel VT-x Rings bilan bir xil emas, bu Hypervisor uchun Virtual Mashinalarni to'g'ri boshqarish uchun Supervisor va Program yoki User rejimlariga to'liq kirishni talab qiladi.

Xuddi shunday, x86 platformasi bilan 2005-2006 yillarga qadar to'liq virtualizatsiya qilishning iloji yo'q edi AMD-V va Intel VT-x kengaytmalar (qarang. qarang x86 virtualizatsiyasi ).[iqtibos kerak ] Ko'pchilik platforma gipervizatorlari chunki x86 platformasi juda yaqinlashdi va AMD-V va Intel VT-x qo'shimchalaridan oldin ham to'liq virtualizatsiyani talab qildi. Bunga misollar kiradi Adeos, Mac-on-Linux, Parallels Desktop for Mac, Parallels Workstation, VMware ish stantsiyasi, VMware Server (ilgari GSX Server), Virtual quti, Win4BSD va Win4Lin Pro. Masalan, VMware deb nomlangan texnikadan foydalanadi ikkilik tarjima "virtual mashinani teshadigan" ko'rsatmalarni boshqa virtual mashinaning xavfsiz ko'rsatmalar ketma-ketligi bilan almashtirish uchun tezkor ravishda x86 dasturiy ta'minotini o'zgartirish; ushbu texnika to'liq virtualizatsiya ko'rinishini ta'minlaydi.[1]

To'liq virtualizatsiya uchun asosiy muammo - bu I / U ko'rsatmalari kabi imtiyozli operatsiyalarni ushlab qolish va simulyatsiya qilish. Berilgan virtual mashina ichida bajarilgan har bir operatsiyaning effektlari shu virtual mashinada saqlanishi kerak - virtual operatsiyalarga boshqa virtual mashinaning, boshqaruv dasturining yoki apparatning holatini o'zgartirishiga yo'l qo'yib bo'lmaydi. Ba'zi mashina ko'rsatmalari to'g'ridan-to'g'ri apparat tomonidan bajarilishi mumkin, chunki ularning ta'siri butunlay boshqaruv dasturi tomonidan boshqariladigan elementlarda, masalan, xotira joylari va arifmetik registrlarda mavjud. Ammo "virtual mashinani teshadigan" boshqa ko'rsatmalar to'g'ridan-to'g'ri bajarilishiga yo'l qo'yib bo'lmaydi; ular o'rniga tuzoqqa tushish va taqlid qilish kerak. Bunday ko'rsatmalar virtual mashinadan tashqarida bo'lgan davlat ma'lumotlariga kirish yoki ta'sir qilish.

To'liq virtualizatsiya quyidagilar uchun juda muvaffaqiyatli ekanligini isbotladi:

  • kompyuter tizimini bir nechta foydalanuvchilar o'rtasida bo'lishish;
  • foydalanuvchilarni bir-biridan ajratish (va boshqaruv dasturidan);
  • yaxshilangan ishonchlilik, xavfsizlik va mahsuldorlikka erishish uchun yangi apparatni taqlid qilish.

Shuningdek qarang

Adabiyotlar

  1. ^ VMware (2007 yil 11 sentyabr). "To'liq virtualizatsiya, paravirtuallashtirish va texnik yordamni tushunish" (PDF). VMware. Arxivlandi asl nusxasi (PDF) 2008-05-11. Olingan 2007-12-09.

Quyida keltirilgan aniq manbalarga qarang platformani virtualizatsiya qilish va (tarixiy manbalar uchun) CP / CMS.

Tashqi havolalar