ImDisk – nejen ramdisky pro Windows

Před časem jsem popisoval několik programů pro vytvoření ramdisku pod Windows, včetně důvodů, proč by se tím člověk měl zabývat. Doba pokročila a 64bitové operační systémy už jsou běžné i v domácnosti. Důvody pro použití ramdisků zůstaly, ale trochu se změnily požadavky a hlavně je tu „drobný“ problém s nekompatibilitou – pro 64bitový systém je třeba 64bitový ramdisk. Z dostupné nabídky jsem si nakonec vybral skoro neznámý, ale o to lepší ImDisk; nenechte se zmást jeho celým názvem („ImDisk Virtual Disk Driver“) – ano, je to nástroj pro práci s virtuálními disky, ale ramdisky umí také! Jediný problém je v tom, ImDisk správně nastavit, protože uživatelské rozhraní to neumí a dokumentace to nepopisuje – ale od toho tu jsem já…

ImDisk - ovládací panel

Napřed několik vysvětlení:

  • Proč jsem nepoužil 64bitovou verzi jednoho z ramdisků popsaných dříve? Primárně proto, že v 64bitovém prostředí odpadá hlavní výhoda popisovaných programů, že totiž mohou přistupovat i k paměti, kterou Windows „nevidí“ a tím vlastně dovolí vytvořit ramdisk, aniž by mě to stálo nějaké zdroje. V 64bitových systémech vidí Windows celou dostupnou paměť, tudíž nejsem omezen na několik málo programů využívajících speciální triky a mohu vybírat i podle dalších kritérií. Tudíž jsem uplatnil kritéria „Kolik mě bude program stát?“ (oba ramdisky jsou poměrně drahé a jejich výrobce shodou okolností nenabízí přijatelné podmínky pro přechod na „vyšší“ verzi), „Jak výrobce komunikuje?“ (VSuite komunikuje dobře a rychle, SuperSpeed nekomunikuje vůbec, dokonce i když se ho ptám, jak si mám jeho produkt koupit) a „Jak moc mě bude program otravovat?“ (SuperSpeed skoro vůbec, akorát nesmím přejmenovat počítač, ale aktivační proces VSuite vázaný na konkrétní hardware jsem v posledním roce několikrát proklel, když jsem nedobrovolně měnil základní desku) a výsledkem byl přechod na úplně jiný program.

  • Proč jsem nepoužil ramdisk nějakého jiného zavedeného výrobce? Existuje řada dalších výrobců, kteří své ramdisky nabízejí už několik let a jsou mezi uživateli docela známí (např. odkazy na Gavotte Ramdisk nebo Dataram Ramdisk najdete relativně často i na českých webech). Problém s nimi je, stejně jako ve starším článku, že i když jsou třeba k dispozici zdarma, vesměs jim chybí nějaká pro mě podstatná vlastnost – třeba podpora víc současně běžících ramdisků s různými parametry nebo možnost vytvořený ramdisk nějak rozumně za běhu zálohovat.

  • Proč jsem si nenapsal ramdisk sám za pomoci Virtual Drive SDK? (Pro osobní použití zdarma.) Protože jsem líná kůže a i když jsem si SDK stáhnul „až někdy budu mít čas a chuť se tím zabývat“, hledal jsem něco, co bude fungovat hned od začátku.

Takže jsem hledal dál postupně jsem narazil na doslova desítky různých ramdisků, zejména v komunitě kolem nástrojů pro vytváření „živých“ bootovacích CD s Windows, kde se ramdisky uplatňují skutečně masivně. No a jedním z nich je i ImDisk.

Pozn.: V dalším textu budu používat slovo „ramdisk“ i tam, kde bych měl přesněji použít „virtuální disk“ – každý ramdisk je sice současně virtuálním diskem, ale ne každý virtuální disk je ramdiskem (ramdisk je virtuální disk, který je celý uložen v paměti počítače). Pokud někde bude tento rozdíl podstatný, tak na to upozorním.

Co ImDisk umí

ImDisk vytvořil švédský programátor Olof Lagerkvist v roce 2006 a uvolnil ho pod velmi přijatelnou licencí (ještě jednodušší než mnou používaná BSD licence); uvidíme ale, jak dlouho mu to vydrží, protože ve svém kódu používá části licencované pod GPL a zjevně si ji pořádně nepřečetl. Tohle by mohlo výhledově dělat problémy i nám uživatelům.

Co ImDisk umí? Jak už jeho celý název „ImDisk Virtual Disk Driver“ napovídá, jeho hlavním účelem je práce s virtuálními disky – vezme obraz disku a vytvoří z něj virtuální disk, o kterém si Windows myslí, že je skutečný. Podporovány jsou virtuální pevné disky, diskety i optická média (CD a DVD). Podstatné jsou přitom tři momenty: obraz virtuálního disku nemusí být jenom v souboru, ale i v paměti (právě tato vlastnost se stará o to, že ImDisk jde použít i jako ramdisk), vytvořený virtuální disk podporuje čtení i zápis (tzn. lze vytvořit virtuální disk i bez image souboru a následně tento disk běžnými Windowsovými postupy zformátovat) a s běžícím virtuálním diskem lze dodatečně manipulovat (například ho zvětšit, nebo ho kdykoliv uložit do image souboru – včetně úplně nového image souboru). K dispozici je i „plugin“ pro přesměrování diskových požadavků do sítě.

Celé to jde ovládat několika způsoby, z příkazové řádky (obsluha je tu modelována podle mdconfig z FreeBSD), pomocí ovládacího panelu, k dispozici je i API pro ovládání z jiných programů (jako DLL pro toto API slouží imdisk.cpl, jinak také aplet pro Ovládací panely; k dispozici je také API pro .NET a API pro COM, některé nejběžnější funkce jde vyvolat pomocí RunDll32.exe). Díky tomu si můžete celou řadu funkcí, které ImDisk sám o sobě nepodporuje, „dobastlit“ pomocí nástrojů třetích stran nebo i vlastním prográmkem.

Instalační balík má necelých 300 KB, po instalaci ale zabere ImDisk ještě méně místa, protože každá komponenta je v něm třikrát (běžná 32bitová verze (označená jako I386), běžná 64bitová verze (AMD64) a 64bitová verze pro Itanium (IA64). Potřebné ovladače jsou podepsané Verisign Class 3 certifikátem, takže bez omezení fungují v 64bitových Windows.

ImDisk - založení nového ramdisku

Co ImDisk neumí?

V aktuální verzi 1.4.2 podle všeho nejde bez použití API vyžádat zápis do image souboru bez zásahu uživatele – z příkazové řádky zápis možný není vůbec, v ovládacím panelu a pomocí RunDll32.exe sice funkce pro ukládání přístupná je, ale uživatel musí vybrat a odsouhlasit umístění souboru. Bez trochy programování automatické uložení ramdisku možné není.

Trochu omezená je funkčnost ve Vistách a novějších se zapnutým UAC. Domovská stránka říká, že je potřeba buď vypnout UAC nebo ovladač ImDisku spouštět automaticky hned při startu systému (nastavíte to příkazem sc config imdisk start= auto (pozor na mezeru za rovnítkem! A osobně bych doporučil spíš sc config imdisk start= system, aby se ovladač spouštěl ještě o něco dříve; mám vyzkoušené, že to bez problémů funguje), příkazem net start imdisk pak ovladač spustíte i bez restartu). Ověřit jsem to nemohl, UAC mám vypnuté a zapínat ho nebudu.

Pro veškeré řízení ramdisku jsou potřeba administrátorská práva. Chápu to v případě rušení ramdisku a v zásadě i při jeho zakládání (i když tam bych uvítal, kdyby byla aspoň volitelná možnost udělat to i z běžného uživatelského účtu), ale dost mi to vadí při ukládání – bylo by myslím vhodné, aby tohle mohl běžný uživatel dělat.

ImDisk a spouštění hned po startu Windows

Pokud se budete orientovat jen podle nabízených programů a dokumentace, snadno nabudete dojmu, že ImDisk nejde spustit přímo při startu Windows – že napřed musí naběhnout Windows a vy v nich pak ramdisky ručně připojíte. Naštěstí to není pravda: Jsou dokonce dva přístupy, jak ramdisky připojit automaticky.

První z nich využívá možností ovládání popsaných výše: Pokud najdete nějaký způsob, jak během startu Windows spustit uživatelský program (nejtriviálněji samozřejmě pomocí složky Po spuštění ve Start menu), můžete spustit imdisk.exe s parametry, které ramdisk připojí. Toto řešení je jednoduché a přímočaré, má ale také řadu nevýhod – zejména tu, že se tak ramdisk vytvoří až v dost pozdní fázi startu systému a nepůjde tak pro řadu použití (ramdisk, místo, odkud se spouštějí služby a ovladače, apod.) uplatnit.

Druhý způsob tyto nevýhody nemá – umožňuje vytvořit ramdisky okamžitě poté, co se spustí ovladač ImDisku, tedy ještě před spouštěním služeb a programů (a i mnohých ovladačů). Potíž je jen v tom, že ten druhý způsob je značně uživatelsky nepřívětivý a velmi špatně dokumentovaný – na stránkách programu ani v jeho dokumentaci ho nikde nenajdete, zjistit ho můžete buď ze zdrojového kódu nebo ze stránky http://reboot.pro/2072/page__st__22, kam Lagerkvist postup napsal (proč to nenapsal i do dokumentace mi je záhadou).

  1. Nainstalujte ImDisk běžným způsobem a nastavte jeho ovladač na automatické spouštění při startu systému (viz výše)

  2. Připravte si všechny image soubory, které budete používat.

  3. Spusťte editor registru (REGEDIT). Musíte to udělat pod administrátorem (UAC pravděpodobně nestačí) a měli byste spustit tolikabitovou verzi, kolikabitový máte systém.

  4. Otevřete větev HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ImDisk.

  5. Pokud v ní existuje klíč Parameters, otevřete ho, jinak ho vytvořte a pak otevřete.

  6. Vytvořte v něm DWORD (32bitů) (REG_DWORD) položku LoadDevices a do její hodnoty napište počet ramdisků, které se mají při startu ovladače vytvořit (například 3).

  7. Nyní musíte vytvořit záznamy pro každý ramdisk. Ramdisky jsou číslovány od nuly (tzn. pro tři ramdisky budou ramdisky 0, 1, a 2) a každý musí mít vyplněny následující položky (číslo na konci názvu položky říká, ke kterému ramdisku se položka vztahuje; já budu v příkladech používat nulu, tj. první ramdisk):

    • Položka DriveLetter0 typu řetězec (REG_SZ). Hodnotou je jedno písmeno a určuje písmeno disku, ke kterému se ramdisk připojí. Například hodnota Q říká, že ramdisk bude vidět jako disk Q:.

    • Položka FileName0 typu řetězec (REG_SZ). Hodnotou je jméno souboru, ve kterém se nachází image ramdisku.

      POZOR, DŮLEŽITÁ INFORMACE! Pro pojmenování souborů je nezbytné použít pravidla kernelu (jádra Windows), ne pravidla uživatelského režimu, na která jste nejspíš zvyklí. Nicméně za běžných okolností stačí před tradiční jméno souboru napsat \??\ – tzn. pokud chcete použít soubor C:\Ramdisky\Programy.img, tak do hodnoty napíšete \??\C:\Ramdisky\Programy.img. (Toto tzv. „NT namespace“ má ještě celou řadu dalších variant, například má prostředky pro označení souborů na diskách, které nemají písmena, ale nejjednodušší je využít pojmenování se dvěma otazníky výše. Příklad, který jsem uvedl, funguje. Nedám ruku do ohně za to, že upravené verze (se špatně velkými písmenky, s obráceně otočenými lomítky atd. atd.) budou fungovat také.)

      Pokud používáte šifrování celých disků, dejte si navíc pozor, aby soubor byl přístupný už při startu systému – osobně pro jistotu ukládám ramdisky na systémový disk C:.

    • Položka Flags0 typu DWORD (32bitů) (REG_DWORD). Hodnotu musíte teprve vypočítat, a pro neprogramátory to nebude úplně jednoduché. Programátorsky řečeno, Flags jsou bitovým polem, kde každý bit má nějaký význam; jaký význam, to je zdokumentované na jediném místě, a to ve zdrojáku ImDisku – v souboru inc\imdisk.h v sekci uvedené jako Bit constants for the Flags field in IMDISK_CREATE_DATA. Vy si musíte vybrat, které příznaky chcete použít, dohledat si k nim v tomto souboru jejich číselné hodnoty, tyto hodnoty posčítat a výsledek teprve vložit do hodnoty položky Flags0. Celé je to ještě komplikované tím, že některé příznaky se vzájemně vylučují.

      Všechny možné příznaky sem vypisovat nebudu, kdo se na to cítí, jistě si je dokáže ve zdrojáku ImDisku vyhledat. Ale ty nejdůležitější napíšu, pro ty, kdo programátory nejsou:

      • Příznak „jenom pro čtení“ má hodnotu 1. Pokud je uveden, značí, že na ramdisk nepůjde zapisovat. Má smysl u ramdisků založených na obrazu CD nebo diskety, pro ramdisky na bázi pevných disků (nejběžnější) už moc ne (mimo jiné proto, že Windows těžce nesou kombinaci disku jen pro čtení a souborového systému NTFS; takže i když si třeba říkáte, že „na tento disk mi nemá kdo co zapisovat“, stejně je lepší příznak „jenom pro čtení“ nepoužít a nezapisování řešit jinými prostředky, např. pomocí přístupových práv).

      • Pomocí následující skupiny příznaků určíte, ramdisk jakého typu bude vytvořen: 16 značí virtuální pevný disk, 32 virtuální disketu a 48 virtuální CD nebo DVD. Použít lze pochopitelně jen jeden z příznaků, typicky 16 (pevný disk). Příznak musí odpovídat tomu, jakého typu je soubor s obrazem disku.

      • Další skupina určuje typ virtuálního disku: 512 značí ramdisk (virtuální disk je uložen čistě jen v paměti, image soubor z parametru FileName0 se použije jen pro naplnění na začátku, ale pak už se na něj nikdy nesáhne), 256 je virtuální disk založený na souboru (každý požadavek na čtení se ve skutečnosti provede ze souboru z FileName a každý požadavek na zápis proběhne do tohoto souboru) a 768 jsou ostatní typy zdroje dat (posílaná přes síť, například). Pro běžný ramdisk budete používat hodnotu 512, pro některá použití může snad mít smysl 256 (chová se to trochu podobně jako „ramdisk, u kterého se každý zápis okamžitě propíše i na disk“).

      Počítám, že téměř vždy budete do Flags0 psát buď hodnotu 528 (virtuální pevný disk, opravdový ramdisk trvale uložený v paměti), plus možná někdy 272 (virtuální pevný disk, který se čte i zapisuje do souboru). Ostatní hodnoty jsou vysloveně speciální a pokud je budete chtít použít, pravděpodobně budete vědět proč i jak.

  8. Na stránce uvedené výše jsou ještě některé další parametry, které za normálních okolností nejsou potřeba. Pokud však plánujete používat víc než 16 ramdisků současně nebo chcete vytvářet „prázdné“ ramdisky (nezaložené na předem vytvořených obrazech), budou se vám hodit.

  9. Nezapomeňte zadat i DriveLetter1, FileName1, Flags1 atd., pokud chcete používat více ramdisků!

  10. No a teď stačí už jenom restartovat počítač. Pokud jste všechno provedli správně, budete mít rovnou k dispozici všechny zadané disky. Teprve v tomto okamžiku bych doporučoval provádět závažnější změny v konfiguraci Windows (přesun adresáře s dočasnými soubory na ramdisk apod.).

Tipy a triky

ImDisk podporuje pouze nekomprimované obrazy ramdisků. Co dělat, pokud potřebujete velký skoro prázdný disk (hodí se pro dočasné soubory) a nechcete, aby zbytečně zabíral místo? Využijte toho, že souborový systém NTFS (dnes už běžně používaný) podporuje kompresi „sám od sebe“ a nastavte mu příznak „komprimovat“. O zbytek se postará operační systém sám.

Systémem komprimovaný soubor s obrazem disku zabírá méně místa než jeho obsah
Komprimaci zapnete zde

Podobné příspěvky:

21 Responses to “ImDisk – nejen ramdisky pro Windows”

  1. avatar pepak napsal:

    Mira: A opravil sis ty cesty, jak jsem tě upozorňoval? Bez toho to fungovat nebude, musíš použít NT konvenci zápisu jmen!

  2. avatar Mira napsal:

    Tak to myslíš to GUI rozhraní v ovládacích panelech.
    Bohužel mi to ve W8.1 64bit nechce ukládat. Myslím, že jsem zkoušel všechny varianty i create disk psychical memory (528), tam je offset 0, přesto nedošlo k uložení. Hlásí to chybu, že nebyla nalezena cesta souboru. Zkoušel jsem i na jiné jednotky než výchozí C:\
    V diskuzích doporučují vytvoření v rawcopy, ale nikde to nemají pořádně zdokumentované.

  3. avatar pepak napsal:

    Mira: ImDisk.cpl (applet pro ovládací panely) má grafické prostředí, ve kterém jde vytvářet disky, načítat je, ukládat, mazat atd. Když si tam vytvoříš disk s požadovanými parametry, pak ho někde mimo naplníš a potom zpátky v ImDisk.cpl uložíš, tak bude fungovat i při načítání při startu.

    Je možné, že to při načítání při startu bude chtít, aby ten disk byl uložený bez hlaviček, tzn. na offsetu nula bude přímo první bajt obsahu disku. Nevybavuji si, že bych to někde viděl zdokumentované, ale všechny moje ramdisky jsou uložené tímto způsobem a mám matný dojem, že jsem možná měl s disky s offsetem nějaké problémy (ale nevím při jaké příležitosti, pokud vůbec nějaké).

  4. avatar Mira napsal:

    Nechápu moc dobře jak mám vytvořit image pomocí imdisk.cpl.
    Chybí mi syntaxe. Image jsem si vytvořil přes GUI rozhraní,
    ale když ji chci uložit tak mi to odmítne.
    To VHD imdisk umí alespoň v zavedeném Windows.
    Jen je tedy otázkou jestli při zvádění imdisku už mám zavedeny ovladače VHD. Partion mám vytvořenu správně, protože přes GUI ji normálně zavedu. Vše pak funguje. Ukládají se na ni data. Ještě by mohl být problém, že bych měl snad nadefinovat radši velikost. Používá totiž offset. Partion je tedy jak se dívám noraw, ale to by nemělo vadit, protože používám Flags0 200(512) nikoli 210(528).
    A ještě je tu divná chyba, když zapíšu do registů tohle
    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ImDisk\Parameters]
    „LoadDevices“=dword:00000002 správně 000001 nemá vliv
    „DriveLetter0″=“R“
    „Size0″=hex(B):00,00,00,40,00,00,00,00
    „Flags0″=dword:00000210
    Partion to vytvoří samozřejmě nenaformátovanou. Problém je v tom,
    že i když je tam 528 pro create disk psychical memory, hásí to pak v imdisk GUI virtual memory.

  5. avatar pepak napsal:

    Míra:
    1) ImDisk nepodporuje image ve formátu VHD, ani to nikde netvrdí. Kde jsi přišel k přesvědčení, že to bude fungovat? (Ono to i fungovat může, ale nemusí, podle toho, jak přesně je to VHD vytvořené; dokonce to může fungovat tak napůl, na první pohled OK, ale ve skutečnosti špatně.) Nejjednodušší cesta, jak získat image, je vytvořit v RAM nový ramdisk pomocí imdisk.cpl, zformátovat a naplnit ho podle svých potřeb, pak ho opět v imdisk.cpl uložit na disk. Pokud se tomu chceš vyhnout (proč??) a vytvořit image v jiném programu, tak to jde, ale ten výsledný image pak musíš uložit jako raw (nekomprimovaný, bez jakýchkoliv hlaviček).
    2) Máš špatně jméno souboru. Viz ta část článku, která začíná tučně a velkými písmeny napsaným textem „Pozor, důležitá informace!“.
    3) Nejsem si tak docela jistý, že takto vyplněné flags budou fungovat. Já bych určitě doplnil ještě typ emulovaného disku, viz příslušná sekce ve článku.

  6. avatar Mira napsal:

    Ano ale celé mi to nějak nefunguje.

    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ImDisk\Parameters]
    „LoadDevices“=dword:00000002
    „DriveLetter0″=“R“
    „FileName0″=“C:\imdisk.vhd“
    „Flags0″=dword:00000200

    Nic to po startu nepřipojí.
    Ještě vidím chybu v LoadDevices by mělo být 1.
    To však asi nepomůže, protože když jsem ze stejnou chybou vytvořil disk bez natažení z image s určením velikosti tak to šlo, akorát to zas nebylo naformátované.
    Image jsem vytvořil jako VHD soubor ve Windows.
    Když tu image připojím po startu v rozhraní imdisku tak se připojí.

  7. avatar pepak napsal:

    Mira: Pokud chceš už do začátku nějaký obsah ramdisku, musíš buď použít připravený image soubor, nebo si po připojení ramdisku ten obsah vytvořit vhodným nástrojem. To není úkolem ramdiskového programu jako takového. Dalo by se uvažovat o prostém zformátování, ale stejně dříve nebo později narazíš na to, že budeš chtít mít nějaké parametry toho formátu (třeba souborový systém) nebo dodatečné požadavky (vytvořit sadu prázdných adresářů).

    Osobně dávám přednost image souboru. Ten si můžu připravit podle potřeby, a pokud ho uložím jako komprimovaný (atribut v rámci souborového systému NTFS), zabere minimum místa, i když bude připravený třeba na gigabajt.

  8. avatar Mira napsal:

    Ale když image soubor není to byla má otázka. Už to vím size0.
    Jenže když ho dám do těch registrů není pak naformátovaný.
    Já ho potřebuju aby byl při vytvoření i naformátovaný.
    Gavote toto uměl. Možná ten formát načetl taky z image nevím.
    Zkoušel jsem tedy uložit image hlásí to chybu, že nemůže najít cestu.
    verzi mám 1.8.4 64bit W8.1 64bit
    Normálně bych se pokusil použít Gavote, ale ten mi v 64bit verzi nechodí.

  9. avatar pepak napsal:

    Mira: Velikost je daná velikostí image souboru.

  10. avatar Mira napsal:

    Nikde nevidím u těch registrů definici velikosti ramdisku.
    Bez velikosti jej asi nevytvoří.

  11. avatar pepak napsal:

    Petr: Považoval bych za vhodnější nakonfigurovat to MSSQL. Určitě mu musí jít říct, ať použije co nejvíc paměti.

    Ano, ImDisk bude dobrá volba, za předpokladu, že s ním bude MSSQL ochotno spolupracovat. Vytvořit ramdisk jde už v rané fázi bootu.

  12. avatar Petr napsal:

    Ještě jsem nenapsal, že jde o win server 8

  13. avatar Petr napsal:

    Ahoj. Potřeboval bych spolehlivý ramdisk, na který bych dal MS SQL databázi, abych vylepšil rychle a levně rychlost aplikace. Data se načtou, zkontrolují a pak je mažu. Aplikace bohužel vůbec nevyužívá sys prostředky. Potřebuji RAM disk vytvářet před zavedením databáze.
    Je toto dobrá volba? Neobjevilo se něco lepšího? Dík.

  14. avatar Honza napsal:

    Super, něco takového jsem potřeboval slyšet, díky.

  15. avatar pepak napsal:

    Honza: Máš v tom obrovský hokej. Začal bych tím, že ramdisk je na počítači s 256 MB paměti naprostý nesmysl – tedy aspoň od doby, kdy se přestaly používat Windows 98. Ramdiskem se nedá „zvětšit paměť“, spíš naopak – jeho smyslem je zabrat nějakou nevyužívanou paměť a vyrobit z ní něco, co se bude chovat jako velmi rychlý disk. Takže ten ramdisk zase zruš, pro tvůj počítač nemůže mít pozitivní efekt.

  16. avatar Honza napsal:

    Na NTB s W XP a 256 MB RAM bych chtěl ramdiskem zvětšit paměť, nevyznám se dobře v problematice. Žádný ramdisk tam nefunguje, všechny při pokusu o vytvoření disku skončí modrou obrazovkou. Jen s ImDiskem jsem úspěšný, když to vezmu postupně od 16MB, podaří se mi na 2gb virt. disku dostat, uloženo do souboru, mám nastaveno nahrátí hned po startu. Tedy, dělal jsem to přes ty registry, hodnoty flags jdou zadávat jen v 16 bitech, to ani nevím, jak bych z doporučovaných hodnot v 32 bit přepočítával. Ale jede to.
    A teď, disky běží. Můžu už počítat s tím, že je systém používá jako ramdisky, anebo musím ještě něco někde nastavit?
    Díky, Honza

  17. avatar pepak napsal:

    Nejsem si jistý, jestli ImDisk, ale VSuite Ramdisk tvrdí, že umí ramdisk podle potřeby zvětšovat. Co je na tom pravdy nevím, každopádně se trochu obávám, jak se s tím vypořádají Windows.

  18. avatar kotek napsal:

    Velmi dobry navod, diky. Jenom porad hledam neco, co bylo v pocitaci Amiga. RamDisk, ktery vzdycky byl tak velkej jako soubory ktere v nem byly. Az do konce pameti. Nesetkal se nekdo s necim takovym?

  19. avatar Kerikus napsal:

    Tak problém vyřešen, chyba byla opravdu ve flags, jak jsem si myslel. Špatně jsem se podíval a měl jsem ji typu řetězec a né DWORD. Teď to funguje spolehlivě, moc děkuji za výborný návod. Předtím jsem to spouštěl pomocí bat souboru, ale musel jsem si tam naházet věci pokaždé ručně. Díky

  20. avatar pepak napsal:

    Pro Flags rozhodně nebudeš používat 512 ale 528. A zkus jednu věc, když ten ramdisk vytvoříš ručně, dej v ovládacím panelu „Save image“ a vyber jednu z možností „Save disk image at offset 0“ – nejsem si teď úplně jistý, ale matně se mi vybavuje, že jsem možná měl s automatickým nahráváním problém, pokud offset nebyl nula (což je u diskových obrazů celkem běžné, protože je mnoho programů vytváří včetně master boot record).

  21. avatar Kerikus napsal:

    Ahoj, vytvořil jsem si virtuální disk pomocí tvého návodu, všechno funguje, ale mám problém, že mi pak pracuje pouze s daty, které mám uložené na disku. Totiž tyto informace se nenahrají po startu do paměti RAM. Do flags jsem zkoušel zapsat jak hodnotu 512 tak 528. Děkuji

Leave a Reply

Themocracy iconWordPress Themes

css.php