Emulátorok
Mivel a szerkezet ARM alapú, ezért a Windows-t nem telepíthettem fel egy mozdulattal. Valahogy meg kellett oldani, hogy a Windows egy komplett PC-t - x86-os processzort, VGA kártyát, merevlemezt - lásson maga alatt. Több emulátort is kipróbáltam több-kevesebb sikerrel.
Bochs
Hirdetés
Első ötletként a bochs-ra gondoltam. Forró nyomon jártam, ez a program már másnak is az eszébe jutott. A bochs nagyon régi darab, minimum egy évtizede találkoztam vele először. Az OS2008-ra fordított bináris és libxpm feltelepítése után vidáman futott. A Win98-at egy Desktop gépen telepítettem fel, aminek két oka is volt:
- Az emulált gép gyenge, egy bootolás alatt kényelmesen meg lehetett vacsorázni. Nem akartam több napig telepíteni a Windowst.
- Mivel nincs "Hildonizálva" nem lehet normálisan kezelni az érintő képernyőn keresztül. Nincs billentyűzet és a kép alja nem jelenik meg, mert nem fér bele a 480-as függőleges felbontásba.
Ezeket a gondokat leszámítva a bochs stabilan futtatta a Win98-at. Ha kéznél lett volna egy N810, akkor a billentyűzettel könnyebb dolgom lett volna. Szerencsére a négy kurzormozgató és az enter működött, ráadásként a user inputra is megadtam egy billetyű kombinációt.
Qemu
Második nekifutásra egy kifinomultabb darabot vettem elő. A qemu több rendszer emulációjára (arm, sparc, x86...) is alkalmas, például akár maemo is futhat az asztali gépünkön. Dinamikus block újrafordítást használ, ami gyorsabb, mint a bochs megoldása, mert egy adott kódrészt csak egyszer fordít le, majd ezt hívja le ismételt futásnál a memóriából. A gyorsabb futásér cserébe a memória igénye is nagyobb.
Ha a host és a guest is x86-os a qemu képes részben virtualizált gépet létrehozni, így az emuláció sokkal gyorsabb lehet. Érdekes, hogy bizonyos részei a bochs kódjára támaszkodnak, de a qemuból is emeltek át részeket a Virtualboxba, XEN-be. Nekem legjobban mégis a beépített VNC szervere tetszett. Annak már kevésbé örültem, hogy csak több napos fordítgatással sikerült előállítani egy többé-kevésbé elfogadható statikus verziót. A beállításokat is jobb` szeretem állományban kezelni, mint több sorban bepötyögni.
A benchmarkolás közben is ez volt a legmakrancosabb. Ez valószínűleg az N800 kevés memóriájának és a dinamikus fordítás memóriaigényének köszönhető. Ugyan szinte bármit el lehetett rajta indítani, a folyamatos swap miatt szenvedés volt kivárni. A win2k például egy éjszaka alatt indult el. Pontosabb adatom nincs, de második próbálkozásnál 9 óra nem volt elég neki...
A benchmarkokat sem szerette. A merevlemez teszt pl végtelen ciklusba került. A landmark lefutott, majd rögtön ki is lépett, de a legjobb a checkit és a 3DBench volt, minden futás után más-más eredményt adtak. Gondolom ez is a már emlegetett gyorsításra szolgáló recompiler számlájára írható.
Dosbox
Az dosboxot próbáltam ki utoljára. Mivel az előző két emulátornál már tisztán kiderült, hogy a Windows értelmes sebességgel nem futtatható, ezért gondoltam maradok a DOS-nál. Kicsit utána olvastam és több helyen is emlegették a Windows 95 támogatást. A telepítés nem volt nehéz, bár pár kört futni kellett, mire minden a helyére került. A billetyűzet hiánya már nem okozott gondot, mert a qemu-ból tanulva felraktam egy vnc szervert. Az emuláció sebességétől viszont ennél az emunál sem voltam elájulva. Nagyjából fél óra alatt indult el a rendszer és minden egyes ablak megnyitása fél-egy perces homokórázást jelentett.
Jobb híján feladtam a Windowsos teszteket és maradtam a dosbox eredeti rendeltetésnél a DOS-os programok futtatásánál. Annyit csavartam a dolgon, hogy a Win95 OSR2 DOS módját használtam. Ekkor már vígan futott majdnem az összes program.
A cikk még nem ért véget, kérlek, lapozz!



