abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:44 | Komunita

    Vývojáři svobodného 3D softwaru Blender představili (𝕏, Mastodon, Bluesky) nejnovějšího firemního sponzora Blenderu. Je ním společnost Anthropic stojící za AI Claude a úroveň sponzoringu je Patron, tj. minimálně 240 tisíc eur ročně. Anthropic oznámil sponzorství v tiskové zprávě Claude for Creative Work.

    Ladislav Hagara | Komentářů: 0
    dnes 03:55 | Nová verze

    VNC server wayvnc pro Wayland kompozitory postavené nad wlroots - ne GNOME, KDE nebo Weston - byl vydán ve verzi 0.10.0. Vydána byla také verze 1.0.0 související knihovny neatvnc.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Nová verze

    Bylo oznámeno vydání Fedora Linuxu 44. Ve finální verzi vychází šest oficiálních edic: Fedora Workstation a Fedora KDE Plasma Desktop pro desktopové, Fedora Server pro serverové, Fedora IoT pro internet věcí, Fedora Cloud pro cloudové nasazení a Fedora CoreOS pro ty, kteří preferují neměnné systémy. Vedle nich jsou k dispozici také další atomické desktopy, spiny a laby. Podrobný přehled novinek v samostatných článcích na stránkách

    … více »
    Ladislav Hagara | Komentářů: 0
    včera 15:44 | Zajímavý článek

    David Malcolm se na blogu vývojářů Red Hatu rozepsal o vybraných novinkách v GCC 16, jež by mělo vyjít v nejbližších dnech. Vypíchnuta jsou vylepšení čitelnosti chybových zpráv v C++, aktualizovaný SARIF (Static Analysis Results Interchange Format) výstup a nová volba experimental-html v HTML výstupu.

    Ladislav Hagara | Komentářů: 0
    včera 15:11 | Nová verze

    Byla vydána verze R14.1.6 desktopového prostředí Trinity Desktop Environment (TDE, fork KDE 3.5, Wikipedie). Přehled novinek v poznámkách k vydání, podrobnosti v seznamu změn.

    JZD | Komentářů: 0
    včera 12:55 | Komunita

    Jon Seager z Canonicalu včera na Ubuntu Community Hubu popsal budoucnost AI v Ubuntu. Dnes upřesnil: AI nástroje budou k dispozici jako Snap balíčky, vždy je může uživatel odinstalovat. Ve výchozím nastavení budou všechny AI nástroje používat lokální AI modely.

    Ladislav Hagara | Komentářů: 0
    27.4. 23:11 | IT novinky

    Nový ovladač Steam Controller jde do prodeje 4. května. Cena je 99 eur.

    Ladislav Hagara | Komentářů: 2
    27.4. 14:22 | Komunita

    Greg Kroah-Hartman začal používat AI asistenta pojmenovaného gkh_clanker_t1000. V commitech se objevuje "Assisted-by: gkh_clanker_t1000". Na social.kernel.org publikoval jeho fotografii. Jedná se o Framework Desktop s AMD Ryzen AI Max a lokální LLM.

    Ladislav Hagara | Komentářů: 8
    27.4. 04:44 | Komunita

    Ubuntu 26.10 bude Stonking Stingray (úžasný rejnok).

    Ladislav Hagara | Komentářů: 2
    26.4. 22:22 | Nová verze

    Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.3.0. S experimentální podporou FLTK 1.4. S příkazem dilloc pro ovládání prohlížeče z příkazové řádky. Vývoj prohlížeče se přesunul z GitHubu na vlastní doménu dillo-browser.org (Git).

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (2%)
     (13%)
     (31%)
     (4%)
     (7%)
     (3%)
     (15%)
     (25%)
    Celkem 1449 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Xen - základy virtualizácie

    19. 11. 2008 | Ivan Dirbák | Systém | 14349×

    Xen je open-source virtualizačný software určený pre linuxové hostiteľské systémy. Článok obsahuje zakladný popis princípov virtualizácie a paravirtualizácie, rovnako ako možnosti realizácie virtualizácie pomocou Xenu.

    Úvod

    Vznikol na univerzite Cambridge (UK) odštiepením od projektu Xenoserver určenom k vývoju infraštruktúry pre distribuovaný výpočet. Prvá verzia XENu (1.0) bola uvoľnená v roku 2003. V súčasnosti existuje už verzia XEN 3.3. ktorá sa  využíva v rozličných komerčných prostrediach na beh štandardných ale aj bussiness critical aplikácií. V tomto článku popíšem základné princípy virtualizácie prostredníctvom virtualizačného software XEN.

    Virtualizácia a požiadavky na ňu kladené

    Virtualizácia umožňuje simultánny beh niekoľkých virtuálnych mašín (VM) na jednom fyzickom hardware, pričom je zaručená ich vzájomná izolácia. Keďže VM zdieľajú spoločný prístup k HW, musí byť virtualizácia navrhnutá tak, aby pri tomto zdieľaní došlo k minimálnemu poklesu výkonu. Z administrátorského hľadiska by bolo vhodné zabezpečiť centrálnu administráciu virtuálnych mašín a dynamickú relokáciu zdrojov prípadne samotných VM bez toho, aby došlo k prerušeniu služieb. Vzhľadom k operačnému systému bežiacom na samotných virtuálnych VM by mal byť virtualizačný software navrhnutý tak, aby nebola nutná jeho modifikácia.

    Privilegovaný režim procesora

    Súčasné procesory dokážu bežať v rôznych režimoch z dôvodu ochrany proti neautorizovanému prístupu k fyzickému procesoru a hardware (reálny, privilegovaný, nereálny mód, virtuálny reálny režim ai.). Z pohľadu virtualizácie nás najviac zaujíma privilegovaný režim procesora. Tento režim vytvára tzv. chránené úrovne, označované tiež ako kruh (ring). Procesory x86 rozoznávajú štyri kruhy, ktoré sú číslované od 0 do 3 (viz Obr. 1). Najnižší - kruh0 - je označovaný aj ako “supervisor mode“ a je to úroveň s najväčšími privilégiami vzhľadom k prístupu k hardwarovým prostriedkom. Na tejto úrovni beží jadro operačného systému, správa pamäti, kontrola prístupu k HW a privilegované inštrukcie, tzn. inštrukcie, ktoré môžu ohroziť beh systému. Kruh 1 a 2 sa používajú minimálne, kruh3 je označovaný ako „user mode“ a je určený pre beh neprivilegovaných inštrukcií, tj. užívateľských aplikácií.

    xen 1: Úrovne privilegovaného režimu
    Obr. 1: Úrovne privilegovaného režimu.

    Xen

    Pri virtualizácií prostredníctvom virtualizačného software XEN dochádza k niekoľkým zmenám oproti predchodziemu popisu. Jadro operačného systému nebeží v supervisor mode, ale na menej privilegovanej úrovni v závislosti na tom, či je použitá 32bit. architektúra (kruh1), alebo 64bit. (kruh3). Keďže je jadro OS presunuté, dochádza k závažnému problému s vykonávaním privilegovaných inštrukcií – tie samozrejme nie je možné spúšťať na úrovni kruhu 1 resp. 3. Pokus o ich spustenie by vyvolal chybový stav. Jedným z riešení by mohol byť prechod do kruhu0, kde by sa vykonala operácia s následným návratom. Toto riešenie však znamená značnú degradáciu výkonu. XEN na rozdiel od predchodzieho riešenia využíva paravirtualizáciu. Pre vykonávanie privilegovaných inštrukcií je v kruhu0 zavedená vrstva označovaná ako hypervisor (viz Obr. 2), ktorý je akýmsi sprostredkovateľom medzi hardware a virtuálnymi mašinami XENu.

    xen 2: XEN a začlenenie jeho komponentov v úrovniach privilegovaného režimu
    Obr. 2: XEN a začlenenie jeho komponentov v úrovniach privilegovaného režimu.

    Hypervisor spolu s modifikovaným kernelom operačného systému nielenže spravuje prístup k pamäti a ostatnému hardware, ale slúži aj k monitorovaniu a administrácií virtuálnych mašín. Tento modifikovaný kernel sa nazýva domain0 (v skratke dom0). Domain0 následne spúšťa ďalšie tzv. neprivilegované domény označované aj ako domainU (v skratke domU). Detailné informácie o každej domU sú uložené v konfiguračnom súbore domény (konfigurácia siete, grafická podpora, pamäť, plánovač ai.). Konfiguračný súbor taktiež poskytuje mechanizmus pre priradenie jedného alebo viacerých CPU k danej doméne, aby zabezpečil, že v prípade potreby vyšších výpočetných nárokov bude doméne priradene priradená adekvátna výpočetná sila.

    xen 3: Základné komponenty virtualizácie pomocou XENu
    Obr. 3: Základné komponenty virtualizácie pomocou Xenu.

    Podobne ako aplikácia komunikuje s operačným systémom prostredníctvom systémových volaní, komunikujú domU s hypervisorom prostredníctvom volaní označovaných ako hypercally. Jedná sa o softwarové volania, ktoré sú reakciou napr. na potrebu vykonania privilegovaných operácií. V prípade, že procesor hardwarovo nepodporuje virtualizáciu, označuje sa domU ako „paravirtual guest“. V tomto prípade je nutné modifikovať operačný systém tak, aby zabraňoval spusteniu privilegovaných operácií a v prípade potreby vykonania týchto operácií volal hypervisor pomocou hypercallov. Tento proces je naznačený na obrázku 4.

    xen 4: Porovnanie vykonávania privilegovaných operácií v paravirtualizovanom a natívnom móde
    Obr. 4: Porovnanie vykonávania privilegovaných operácií v paravirtualizovanom a natívnom móde.

    Moderné procesory ako Intel VM (Virtualization technology, aka vanderpool), a AMD-V/SVM(Virtualization/Secure Virtual Nachine, aka pacifica), obsahujú hardwarovú podporu virtualizácie. Týmto pridávajú sadu nových inštrukcií pre podporu virtualizácie na úrovni Kruh1. Výsledokom je, že nie je nutná zmena OS a teda dochádza k plnej virtualizácií.

    V prípade simultánneho behu viacerých domU plánovač hypervisoru zisťuje, ktorá VM má mať pridelený fyzický procesor a v akom poradí. XEN spočiatku podporoval plánovače round robin a bvt (borrowed virtual time). Tieto však boli postupom času odstranené a nahradené plánovačmi sedf a credit (pridelenie na základe výsledkov merania), ktoré využíva XEN verzie 3.x. Výber plánovača sa volí ako parameter v konfiguračnom súbore Grub loadera (pozn. Grub je jediný bootloader podporovaný XENom). Okrem samotného plánovača hypervisora každá VM implementuje svoju vlastnú politiku plánovania pre procesy bežiace vo vnútri domény k poskytovaniu I/O požiadaviek vo vnútri jadra (SCHED_FIFO, SCHED_NORMAL, SCHED_BATCH, SCHED_RR).

    Záver

    Zmeny OS vyžadované pre interakciu s hypervisorom nemenia vyšší level kernelu (nieje nutné modifikovať aplikácie) ale len kernel level kód, ako napríklad drivery zariadení. Dochádza teda k paravirtualizácii, čím je zaručený minimálny pokles výkonu virtuálnych mašín. Do doby, kým nebola pridaná HW podpora virtualizácie, bolo možné púšťať len 32bit. XEN domU na fyzickom hoste, ktorý bežal na 32bit. hypervisore a dom0. S nástupom HW podpory virtualizácie zavádzajúcej kruh1 umožňuje XEN aj podporu plnej virtualizácie. Výsledokom je, že XEN podporuje 32 a 64bit. virtuálne mašiny rôznych typov na jednom systéme bez nutnosti modifikácie OS.

    Nie som špecialista na virtualizáciu, avšak táto téma je hodne zaujímavá, preto by som v prípade nejakých nepresností poprosil o pripomienky.

    Nejčtenější články posledního měsíce

    Týden na ScienceMag.cz: Modely umělé inteligence založené na fyzice místo na jazyce by se mohly stát hnací silou vědeckých objevů
    Událo se v týdnu 14/2026
    Týden na ScienceMag.cz: Umělá inteligence ChatGPT zvládla i původní matematický důkaz

    Nejkomentovanější články posledního měsíce

    Jaderné noviny – přehled za únor 2026
    Týden na ScienceMag.cz: Modely umělé inteligence založené na fyzice místo na jazyce by se mohly stát hnací silou vědeckých objevů
    Událo se v týdnu 14/2026
      všechny statistiky »

    Související články

    Seriál: Virtualizace na úrovni jádra
    Virtuální linuxový server - User Mode Linux
    Solaris 10 a zóny
    Jaderné noviny: Souborové kvalifikace
    Jaderné noviny: KVM 15
    Jaderné noviny: Vývoj KVM
    Jaderné noviny: /dev/kvm
    Jaderné noviny: Patche Xen
    Jaderné noviny: Kontejnery procesů
    Jaderné noviny: Připojení Linuxu k hypervisorům
    Jaderné noviny: Virtualizační rozhraní VMI
    Jaderné noviny: Kontejnery a odlehčená virtualizace
    Jaderné noviny: API pro virtuální I/O: virtio
    Jaderné noviny: Virtuální čas
    Jaderné noviny: OpenVZ a checkpointing za běhu
    Jaderné noviny: Zdroje: má dáti, dal
    VMware 4.0
    VMWARE - recenze knihy

    Odkazy a zdroje

    xen.org

    Další články z této rubriky

    Úvod do Dockeru (1)
    Paralelizace běžných činností v konzoli pomocí GNU Parallel
    Unixové nástroje – 26 (triky pro práci v Bashi)
    Unixové nástroje – 25 ((s,c)fdisk, gdisk, parted a findmnt)
    Linux: systémové volání splice()
           

    Hodnocení: 91 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    19.11.2008 03:37 Láďa | skóre: 9
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Skvělé, jenom škoda že Xen už není virtualizační hvězda jako býval - seriál by byl hned mnohem zajímavější. V současné době má přece jenom mnohem zářivější budoucnost KVM, jednak protože je podporováno dvěmi nejvýraznějšími distribucemi (Redhat a Ubuntu) a druhák protože je oblíbené mezi Linuxovými hackery.
    19.11.2008 07:01 Pavel F.
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    KVM má možná budoucnost, ale v současnosti bych stále volil Xen, zejména pro mission-critical aplikace. Xen bych nazval vyzrálým systémem, kde dnes můžeme sklízet plody, u KVM uvidíme za jeden, dva roky, kam nám doroste.
    Nikola Ciprich avatar 19.11.2008 08:17 Nikola Ciprich | skóre: 23 | blog: NiX_blog | Palkovice
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    na zaklade ceho byste oznacil XEN za vyzralejsi, zvlaste pro mission-critical aplikace? ze svych zkusenosti bych rekl ze mnohem bezproblemovejsi je KVM, at uz z hlediska funkcnosti, tak i z hlediska diagnostiky chyb, odezvy vyvojaru, celkove koncepce vyvoje atd...
    Did you ever touch the starlight ? Dream for a thousand years? Have you ever seen the beauty Of a newborn century?
    Black.Stone avatar 19.11.2008 20:20 Black.Stone | skóre: 7
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    treba tim ze je nejakou dobu XEN v RHEL supportovany? Nebo snad nekdo nasazuje mission-critical aplikace na nesupportovany SW/HW?
    20.11.2008 08:40 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Představ si, že na mission-critical aplikace se používá i třeba takový Debian.
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    19.11.2008 17:06 xm | skóre: 36 | blog: Osvobozený blog | Praha
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Já bych naopak za mnohem vyzrálejší řešení nazval KVM (a to přesto, že je mnohem mladší - i to něco vypovídá o jeho kvalitách).
    Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
    19.11.2008 22:37 SAL
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    XEN stale vedie, ale je fakt, ze KVM sa v poslednom case vyvija velmi rychlo a naopak XEN dost pomaly.

    KVM stale postrada:
      - live migraciu (migraciu za behu virtualneho systemu)
      - paravirtualizacia je stale v plienkach. Paravirtualne ovladace disku/sietovky znacne urychluju beh. Paravirtualne servery nepotrebuju podporu virtualizacie v HW.
      - nejaka vhodne nastroje na spravu virtualnych serverov (start, stop, restart, pripojenie na konzolu, ...) su v plienkach
      - sprava zariadeni v KVM je tiez dost obmedzena
    
    Co sa tyka virtualizacie na desktope, tak KVM urcite vedie. Co sa tyka virtualizacie na servri, tak Xen stale vedie.
    20.11.2008 02:12 Láďa | skóre: 9
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    - Live migraci KVM umí.

    - Díky virtio je výkon KVM při komunikaci s hostem výborný. A HW bez podpory virtualizace jsou už muzejní kousky.

    - libvirt vyvíjený Redhatem je dost dobře použitelný. Sériová konzole je trabl, na druhou stranu VNC do guesta funguje skvěle.

    Virtualizace na desktopu je spíš doménou produktů jako VirtualBox nebo VMware, které se zaměřují na pohodlí a už tolik neřeší výkon. Xen samozřejmě je v tuhle chvíli napřed, protože je déle podporovaný Redhatem a Novellem a protože tu jednoduše byl dřív. Ale třeba u Redhatu to může být otázka jenom do vydání RHEL 6, protože je jasné, že po zaplacení 107 mil. USD za Quamranet sotva budou pokračovat ve výrazné podpoře Xenu (už dříve koupeného Citrixem za 500 mil. USD - skvělý obchod).
    19.11.2008 10:13 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Prosim no flame - ako Ubuntu podporuje XEN?
    Project Satan infects Calculon with Werecar virus
    19.11.2008 10:14 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    ... samozrejme som myslel KVM ;-)
    Project Satan infects Calculon with Werecar virus
    19.11.2008 14:00 Láďa | skóre: 9
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Víc info tady. Z vlastní zkušenosti můžu říct, že nástroj ubuntu-vm-builder není tak dotažený jako xen-tools, ale samotný běh KVM je bezproblémový.
    19.11.2008 14:59 miso | skóre: 36 | blog: iSCSI_initiator_howto | Praha
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Ale nepytal som sa ci preferuje, ale ako ho podporuje ...(nieco taketo)
    Inak suhlasim, ze KVM ma nabeh zatienit XEN, ale ten den este neprisiel
    Project Satan infects Calculon with Werecar virus
    19.11.2008 16:32 Láďa | skóre: 9
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Podporovat má dva významy - do oblíbené diskuze jestli Ubuntu dostatečně přispívá do upstreamu nechci zabíhat ;-)
    nettezzaumana avatar 19.11.2008 16:21 nettezzaumana | skóre: 3
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    hmm .. nestacil by priste misto takto pozoruhodneho clanku jen odkaz na wiki ??

    nechci rejpat, ale informacni hodnota mi pripada miziva ..

    regards
    nettezzaumana avatar 19.11.2008 16:23 nettezzaumana | skóre: 3
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    pouzivame ve firme Xen i kvm a mohu prohlasit, ze s KVM jsme nemeli diky bohu jediny problem a me osobne pripada transparentnejsi, efektivnejsi a ve virtualizaci linuxoveho kernelu temer spolehlivejsi nez Xen ..

    19.11.2008 10:50 Kerala
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Předpokládám, že MS Hyper-V vychází z XENu, takže XEN nemusí být jenom pro linux.
    xxxs avatar 19.11.2008 10:51 xxxs | skóre: 25 | blog: vetvicky
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    esteticke chybicky:

    označovaných ako hypercalli -y

    potrebu vykonanie -vykonania

    nieje -nie je

    kernel level kod -kód

    Dochádza teda k paravirtualizácií -cii

    virtualne mašiny -virtuálne

    Niesom -nie som

    clanok sa mi pacil.
    19.11.2008 15:03 Stevko
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie

    predchodziemu -> predchádzajúcemu/predošlému

    A nejak sa strácam v článku (a asi aj v problematike). Viackrát je tam spomenutý operačný systém (a že ho treba nejak upravovať), ale neviem, či hostiteľský (ak tam vôbec niečo také je) alebo ten vo virtuálnom stroji.

    Luboš Doležel (Doli) avatar 20.11.2008 11:19 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Opraveno.
    19.11.2008 18:48 artec | skóre: 24
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Informacni hodnota clanku mi prijde uplne nulova ve srovnani s tim, co vyslo asi pred rokem a pul na rootu. Bude mit clanek nejake pokracovani s nejakou praktickou casti?
    20.11.2008 22:15 dannak
    Rozbalit Rozbalit vše Re: Xen - základy virtualizácie
    Nemate nekdo, prosim, tuseni, jestli ve VM v XENu, kdyz budu mit procak s HW virtualizaci (Core i7), pujde accelerace videa ? resp. pristup k HW ? jde mi o programovani v CUDE (grafika NV9500GT), ne tak o video acceleraci, ikdyz i to by bylo prijemny.

    Nebo by melo spis smysl mit jako "podvozek" treba Gentoo64bit a v tom nekolik masin v KVM ? chci jednu VM na databazi, druhou na WWW server, treti na windowsy a mozna jeste jedna se bude hodit na hrani... Diky, s virtualizaci mam zatim zkusenosti jen s VMWare-serverem (ne ESX(i)) a VirtualBoxem, XEN ani KVM jsem zatim nestudoval a neznam :( takze, prosim o radu. diky

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.