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 16:44 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.

    Ladislav Hagara | Komentářů: 2
    dnes 15:11 | IT novinky

    Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.

    Ladislav Hagara | Komentářů: 6
    dnes 13:55 | IT novinky

    Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 02:22 | Nová verze

    D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    dnes 02:00 | Nová verze

    Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 19:22 | Humor

    CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.

    NUKE GAZA! 🎆 | Komentářů: 3
    včera 12:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 3
    včera 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 1
    včera 04:44 | Nová verze

    Po více než dvou letech od vydání předchozí verze 2.12 byla vydána nová stabilní verze 2.14 systémového zavaděče GNU GRUB (GRand Unified Bootloader, Wikipedie). Přehled novinek v souboru NEWS a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 02:22 | Nová verze

    Google Chrome 144 byl prohlášen za stabilní. Nejnovější stabilní verze 144.0.7559.59 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 10 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).

    Ladislav Hagara | Komentářů: 4
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (5%)
     (0%)
     (9%)
     (19%)
     (3%)
     (6%)
     (3%)
     (11%)
     (43%)
    Celkem 461 hlasů
     Komentářů: 12, poslední 14.1. 21:12
    Rozcestník

    Emulace VM v GNU/Linuxu: Qemu

    6.3.2006 09:04 | Přečteno: 3480× | linux

    V tomto 'článku' budu pojednávat o možnosti jak emulovat virtuální stroj pomocí Qemu

    Když jsem nedávno chtěl vyzkoušet v GNU/Linuxu emulaci virtuálního počítače (dále jen VM=Virtual Machine), zkusil jsem najít i nějaký tutoriál v češtině. Žádný jsem nenašel. Proto jsem se zahloubal do manuálu a o některé zkušenosti bych se chtěl podělit. Nedočtete se zde víc než je v manuálu, ale zase to bude česky ;-)

    K čemu mi bude VM?

    Virtual Machine, neboli hezky česky Virtualní stroj, umožnuje ve spuštěném OS naemulovat další počítač s přesně nastavenými vlastnostmi. Tohoto se většinou využívá, když chcete vyzkoušet nějaký operační systém, ale nechcete ho instalovat, v případě qemu ho můžete použít i k emulaci jiné architektury, např. PPC, SPARC a jiných.

    Něco málo o Qemu

    Qemu, narozdíl od vetšiny jiných emulátorů je schopen emulovat i instrukce procesoru jiné architektury než je PC. Konkrétně se jedná o x86, x86_64, ARM, SPARC, SPARC64, PowerPC, PowerPC64, MIPS, m68k. V GNU/Linuxu se dá také použít pouze pro spuštění jednoho programu s jinými instrukcemi. Více o jejich podpoře se můžete dozvědět zde.

    Qemu si můžete stáhnout buď jako už zkompilované binárky, nebo si ho zkompilovat sám. Bohužel nejde zkompilovat se čtvrtou řadou GCC, takže zatvrzelí kompiláři budou muset buď downgradovat gcc neko skousnout použití hotových binárek.

    Práce s qemu

    Jak bylo výše řečeno, qemu umožňuje emulovat různé architektury, pro každou architekturu je jeden spustitelný soubor. Nás budou zajímat pouze ty, které mají v názvu -system- a samotné binárko qemu určené pro emulaci x86. Tyto slouží k emulaci celého systému, ostatní jsou určeny pouze ke spouštění programů pro jinou architekturu.

    Některé paramatry důležité pro práci s Qemu:
    -m int -číslo zadané za -m určuje velikost paměti, která bude poskytnuta emulovanému systému
    -boot [a,c,d] -určuje, odkud (z jakého virtuálního disku) se bude bootovat: a je disketa, c harddisk, d cdrom
    -hda až -hdd image -použije image jako obraz harddisku
    -fda a -fdb image -použije image jako obraz diskety
    -cdrom image -použije image jako obraz CD, podle manuálu nejde používat zároveň s -hdc
    -localtime -nastaví hodiny na lokální čas, jinak se použije použije greenwichský čas z BIOSu
    -snapshot -zakazuje zápis do image souborů, pokud je zápis nutný, zapisuje do /tmp

    Jako disk se dá použít i existující adresář na vašem filesystému. Stačí zadat jako obraz fat:adresář
    Tento přístup je ale pouze pro čtení, takže nastavíme možnost zápisu fat:rw:adresář
    A v případě že se jedná o disketu, přibývá ještě floppy:
    Takto můžete vytvořit z libovolného adresáře virtuální fat filesystém.


    Tak si to pěkně vyzkoušíme třeba při emulaci 64-bitového systému pro MenuetOs:

    qemu-system-x86_64 -m 64 -boot a -fda disc-images/M64-034.IMG


    A teď něco trochu složitějšího - Syllable:

    qemu -m 64 -localtime -snapshot -boot a -hda disc-images/syllable/harddisk.img -hdb fat:/home/lukas/test/ -fda disc-images/syllable/floppy.img
    Jak je vidět, Syllable má zavaděč na disketě, který potom spouští samotné Syllable, které je uložené jako harddisk.


    Vytvoření prázdného image:
    Pravděpodobně si budete chtít vytvořit i nějaký obraz disku do kterého budete moci instalovat, to uděláte příkazem qemu-img create jmeno_souboru velikost
    Zde existuje mnohem více možností, jako základ toto ale stačí, ostatní odkážu na dokumentaci qemu.

    Zrychlujeme-modul kqemu

    Pokud už Vás nebaví čekat tak dlouho než se nějaká akce v qemu vykoná a přemýšlíte jak to urychlit, je kqemu právě pro Vás. kqemu je proprietární modul pro linuxové jádro (neplést s Kqemu, grafickým frontendem pro KDE), který některé instrukce vykonává přímo na procesoru (pokud je to možné-tj. používáte počítač platformy x86 a tuto platformu zároveň emulujete). To značně zrychluje práci. Pro instalaci kqemu musíte mít stažené zdrojové kódy qemu a jádra. Přesnější popis instalace je v dokumentaci.

    V dokumentaci je sice psáno, že pro běh kqemu si musíte zkompilovat i celé qemu, nutné to však není. Binární verze qemu, která je ke stažení na oficiálních stránkách totiž umožňuje kqemu používat. Toto se hodí obvzvláště pro uživatele gcc 4.x.x Protože s gcc 4 nejde qemu přeložit. A teď jak na to:

    1.) stáhněte si zdrojáky pro qemu i kqemu
    2.) rozbalte zdroje qemu tar zxvf qemu-x.y.z.tar.gz
    3.) presuňte se do vyniklého adresáře cd qemu-x.y.z
    4.) rozbalte kqemu tar zxvf /tmp/kqemu-x.y.z.tar.gz
    5.) spustte ./configure --disable-gcc-check
    6.) přejděte do adresáře kqemu cd kqemu
    7.) a jednoduše zkompilujte make && make install
    8.) spusťte skript install ./install
    9.) a máte funkční modul kqemu, často se ale stane, že po opětovném spuštění počítače 'zmizí' potřebné zařízení v /dev takže budete muset spustit skript install znovu.

    Odkazy

    Qemu
    Testované OS:
    MenuetOs
    Syllable        

    Hodnocení: 100 %

            špatnédobré        

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

    Komentáře

    Vložit další komentář

    6.3.2006 09:18 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    No je sice pěkné že jsi sesmolil článeček, jenže...

    Rozjet qemu na běžné distribuci podle mě zvládne každý debil během 10 minut se slovníkem v ruce (pokud neumí česky a nemá za málo přečíst manuál). Zkompilovat qemu s jaderným modulem, posledním gcc, na poslední verzi jádra na 64bitové architektuře, to už je jiná pohádka. A asi proto jsem sklonil hlavu před vmware (i když to taky nebylo zcela jedním tahem)
    cezz avatar 6.3.2006 09:46 cezz | skóre: 24 | blog: dm6
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Vmware je znacne inde (ide o virtualizator, nie emulator). Clanok mi pripada dobry, vela ludi Qemu nepozna a je len dobre ak sa aj prostrednictvom tohto blogu o nom dozvie ;-) Snaha sa ceni. Nevidim dovod clanok odsudit a uz vobec nie ako blogovy zapis - keby vsetky boli taketo :-D
    Computers are not intelligent. They only think they are.
    6.3.2006 10:00 #Tom
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Funguje vám zrychlující modul kqemu nebo qvm86? Mně jde pěkně zkompilovat, zavést, chyby to nehlásí, ale žádného zrychlení jsem si nevšiml... :-(
    6.3.2006 10:10 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Ehm, to je to na co jsem narážel. Nejsem v tom sice nějak extra kovaný, ale.. Pokud je ten modul zakompilovaný jiným gcc než vlastní binárka, tak to ho nežere. Standardní binárky jsou kompilované BEZ PODPORY jaderného modulu. Mě se sice podařilo všechno zkompilovat, jenže případný pokus o spuštění qemu končí segmentation fault.
    stativ avatar 6.3.2006 11:12 stativ | skóre: 54 | blog: SlaNé roury
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu

    Tak co znamena toto: Could not open '/dev/kqemu' - QEMU acceleration layer not activated u standardnich binarek pokud neni pouzit kqemu?

    BTW: Meril jsem rychlost bootu olive: bez modulu asi 1:40 a s modulem asi 1:05 min. Je dost mozny ze to zavisi na halde dalsich faktoru.

    Ať sežeru elfa i s chlupama!!! ljirkovsky.wordpress.com stativ.tk
    6.3.2006 11:30 #Tom
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Já jsem zkoušel tento primitivní měřič rychlosti kalibrovaný na 400 MHz Pentium II v čistém DOSu:
    uses Dos;
    var Old08: Procedure;
    const CLK_TCK: LongInt = 0;
    procedure New08; interrupt;
    begin
      inline($9C); Old08;
      Inc(CLK_TCK);
    end;
    procedure StartupTimer;
    begin
      GetIntVec($08, @Old08);
      SetIntVec($08, @New08);
      CLK_TCK := 0;
    end;
    procedure ShutdownTimer;
    begin
      SetIntVec($08, @Old08);
    end;
    procedure CPUDelay; assembler;
    asm
        mov cx,0ffffh
    @1: loop @1
    end;
    { Returns CPU speed in delays/sec }
    function CPUSpeed: LongInt;
    var
      L: LongInt;
      Duration: LongInt;
      Multiplier: LongInt;
    begin
      StartupTimer;
      Duration := 0;
      Multiplier := 16;
      Duration := CLK_TCK;
      for L := 0 to Multiplier * 256 do
        CPUDelay;
      Duration := CLK_TCK - Duration;
      CPUSpeed := Round(Multiplier * 256.0 * 55.0 / Duration);
      ShutdownTimer;
    end;
    function ToMHz(Speed: LongInt): LongInt;
    begin
      ToMHz := Round(Speed * 400.0 / 3265);
    end;
    var Speed: LongInt;
    begin
      Speed := CPUSpeed;
      WriteLn('Your CPU speed is: ', Speed, ' delays/sec');
      WriteLn('That is equal to ', ToMHz(Speed), ' MHz Pentium II (Deschutes)');
    end.
    
    S modulem kqemu i bez něj mi to ukázalo přibližně 60 MHz.

    Dále jsem zkoušel výpis adresářů celého disku, ten trval v obou případech stejně dlouho. A nakonec jsem zkoušel pakovat nějaká data starým DOSovým RARem, v obou případech to trvalo rovněž stejně dlouho.
    pol128 avatar 6.3.2006 11:41 pol128 | skóre: 18
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Qemu je vynikajúci software s jednoduchým ovládaním. Ja si v ňom skúšam rôzne OS alebo verzie OS. Veľa live cd sa dá pekne, rýchlo skúsiť a až potom páliť. Za VMWare peniaze dávať nechcem, až tak to nepotrebujem.
    6.3.2006 12:26 shamot | blog: toocube
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    QEMU som tiež vyskúšal, potreboval som totiž WinXP kvôli Delphi (a to zasa kvôli škole, musíme v tom robiť semestrálku). Najprv mi to nešlo, hádzalo to nejakú chybu pri štatre Win, niečo že sa nemôže overiť autentifikácia, vyriešilo to kqemu, s ním to ide vpohode. Akurát že teraz keď som nainštaloval Delphi 7, tak mi pri jeho štarte vyhodí runtime error.
    6.3.2006 13:59 jan.xxx
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Tak to je hezký úvod. Teď bych se rád něco dověděl o funkčnosti např. sériového portu. Mám WIN aplikaci, která komunikuje s diářem (ve WIN 98). Nainstaluji v qemu WIN 98 a nyní chci komunikovat. Jak na to???
    2.4.2006 19:52 helb | skóre: 9 | blog: helb | Kralovice
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Jde to. Je to popsané v dokumentaci na webu qemu (pripadne pomuze google). Já jsem si pres to flashoval firmware v mobilu.
    Ovládání hlasem? cat /dev/dsp > /dev/hda1
    26.4.2006 20:44 Jan Novák
    Rozbalit Rozbalit vše Re: Emulace VM v GNU/Linuxu: Qemu
    Tak jsem to z té dokumentace nějak nepochopil :-(

    Asi nemáte někde v historii příkaz, kterým jste spouštěl qemu?

    Založit nové vláknoNahoru

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