4.3 Mennyire jó az OS/2 Warp DOS és Windows kompatibilitása?


Az OS/2 1.x verziók DOS kompatibilitása meglehetôsen rossz volt. Mivel ezek a verziók 80286-os processzoron mûködtek, nem is voltak képesek egynél több DOS applikáció egyidejû futtatására. Szerencsére a helyzet alaposan megváltozott az OS/2 2.0 megjelenésével. Az OS/2 2.1 és a Warp tovább javított a helyzeten. Az utóbbi verziók már lehetôvé teszik a DOS és Windows 3.1 programok "preemptive" multitaszkolását.

A Warp teljes körû DOS 5.0 emulálást nyújt. Minden egyes DOS program számára maximálisan 32MB EMS 4.0, 16MB XMS 2.0 és 512MB DPMI 0.95 memória áll rendelkezésre. A maximálisan elérhetô konvencionális memória körülbelül 730kB. A DOS driverek betölthetôk a magas memória területre. Memória manager programokra (például QEMM) nincs szükség, mivel ezeket a szolgáltatásokat közvetlenül az op. rendszer nyújtja. A DOS programok számára közös a Config.Sys fájl, azonban az Autoexec.Bat-ból lehet program specifikusakat is készíteni. Ezen kívül, minden DOS programnál külön lehet beállítani az emulációs paramétereket a DOS beállításoknál (DOS Settings). Igen sok (körülbelül 250) DOS és Windows applikációt felismer az OS/2 Warp és az installáció során (kérésre) ikonokkal látja el ôket. Ha az 5.0-tól eltérô DOS verzióra van szükségünk, akkor egy meglévô DOS boot lemezrôl úgynevezett DOS képfájl (image) készíthetô a merevlemezre, mellyel bármilyen DOS verziójú szekció futtatható, ablakos, vagy teljes képernyôs üzemmódban. Elméletileg 240 DOS program egyidejû futtatására van lehetôség. "Disk caching" programokra nincs szükség, mivel az OS/2 azt is biztosítja. A teljes képernyôs üzemmódú DOS programok igen gyorsan mûködnek, sebességük eléri a valódi DOS alatti sebesség 95-97%-át. Amennyiben olyan programról van szó, amelyik sokszor használja a merevlemezt (például adatbázis-kezelô programok), a mûködési sebesség 100% feletti is lehet, ami többek között a FAT-hez képest gyorsabb HPFS fájlrendszernek is köszönhetô.

Clipperben írt programok futtatása esetén be kell írni az AUTOEXEC.BAT fájlba a SET CLIPPER=F120;E000; sort. Az F120 a megnyitható fájlok számát állítja be 120-ra, a második pedig az EMS használatot korlátozza 0-ra. A klasszikus Clipper programok ugyanis nem mûködnek megfelelôen EMS környezetben. A CPU terhelése csökkenthetô a http://www.acemake.com/hagbard/ #ClipperSoftware oldalon ismertetett trükkel.

Azok a DOS programok, amelyek nem futnak az OS/2 által emulált DOS környezetben, a következô kategóriák valamelyikébe sorolhatók:

1) Programok, melyek használjak a Virtual Control Program Interface 
(VCPI) memória extendereket, vagy olyan extendereket, amelyek direkt 
hozzáférést igényelnek a 80386-os processzor kontrol regisztereihez.

2) Programok, melyek direkt hozzáférést igényelnek a merevlemezhez 
(például a Norton Utilities UnErase programja).

3) Idôzítés érzékeny (timing sensitive) programok (például a digitalizált 
hangot generáló programok hangja sok esetben torz). Néha ez a probléma 
megszüntethetô a SESSION_PRIORITY DOS beállítás változtatásával.

4) Bizonyos DOS program debuggerek.

A Warp 4-ben került bevezetésre az úgynevezett dedikált DOS/Windows szekció (hibernálás). Ez egy olyan funkciója az operációs rendszernek, amely lehetôvé teszi az OS/2 mûködésének a felfüggesztését arra az idôre, amíg egy olyan programot futtatunk, amely például közvetlen hardver hozzáférést igényel, ezért nem mûködik az OS/2 emulált DOS/Windows szekciójában. A dedikált szekciók használatához szükség van egy olyan FAT partícióra, amelyen az OS/2 mellett DOS és/vagy Windows 3.1 is telepítve van, IDE merevlemezen helyezkedik el és legalább annyi szabad folytonos (tehát nem töredezett) helyet tartalmaz, mint amennyi RAM memória van a gépben +1MB. A sikeres mûködés feltétele még az is, hogy a swap fájl is a FAT partíción legyen.

Amennyiben mindenképpen valódi DOS-ra van szükségünk, akkor rendelkezésre áll az OS/2 beépített dual-boot funkciója (ez a default az installáció során) valamint a Boot Manager (Advanced Installation), mellyel a gép bekapcsolása után egy menübôl választhatjuk ki a betölteni kívánt operációs rendszert (például DOS-t, OS/2-t vagy Linuxot).

A Windows programok futtatását a beépített Windows kód (Win-OS/2) vagy (Warp for Windows esetében) a már elôzôleg a gépen installált Windows 3.1, Windows 3.11, Windows for Workgroups 3.1, vagy Windows for Workgroups 3.11 teszi lehetôvé. Az OS/2 Warp támogatja a Windows 3.x programok (beleértve a Win32s applikációkat is, Warp 3 az 1.15 verzióig, egy utólag telepíthetô driverrel 1.25-ig, a Warp 4 1.25-ig) használatát. Mind a "standard", mind pedig az "enhanced" módú futtatás biztosított. Lehetôség van a Windows programok munkaasztalon ("seamless" mód) illetve teljes képernyôs üzemmódban való futtatására. A felhasználó választásától függôen a Windows programok "preemptive-en" vagy "cooperative-an" is multitaszkolhatók. Amennyiben sûrûn használunk Windows programokat, érdemes bekapcsolni a Windows FastLoad opciót. Ha engedélyezzük ezt a funkciót, az OS/2 a bootolás során be fogja tölteni a Windows kód egy részét, így a továbbiakban jelentôs idôt spórolhatunk meg a Windows programok indításakor, ha azok ebben a közös szekcióban futnak.

Ha beépített Windows kód nélküli OS/2-höz magyar Windows 3.1-et használunk, akkor a Windows programok csak teljes képernyôs szekcióban lesznek futtathatók a magyar Windows GDI.EXE-jének eltérô szerkezete miatt.

Win95/98-ra, vagy NT-re írt programokat is lehet korlátozott mértékben futtatni Warp alatt. A korai Win95-ös programok egy része megelégedett a win32s 1.25-ös támogatással, ugyanis ezeket csak pusztán reklámfogásból nevezték Win95-re írt alkalmazásnak. Ha tehát régebbi ('96 elôtti) 32 bites Windows programmal van dolgunk, akkor a Win32s támogatás telepítése után próba szerencse alapon megpróbálkozhatunk a futtatással. Amennyiben "Unexpected DOS error" üzenetet kapunk, szinte biztos, hogy "valódi" 32 bites Windows programról van szó. Ebben az esetben megpróbálkozhatunk a korábban Win32OS2 konverter, manapság pedig Odin project név alatt fejlesztett alkalmazás kipróbálásával. Az Odin nem más, mint egy konverter program, amely a 32 bites Windows kódot (EXE-ket, DLL-eket) alakítja OS/2-es megfelelôjére. Bár a program még messze van a tökéletestôl, a lelkes felhasználók már eddig is nagyon sok Windows alkalmazást bírtak szóra OS/2 alatt. Sajnos a Windows programok egy része még az Odin tökélyre fejlesztése után sem lesz futtatható Warp 3/4 alatt. A Windows alkalmazások egy része ugyanis 512Mb "fölé címez", ami nem lehetséges az OS/2 által emulált DOS szekcióban. A Warp Server 4 SMP-ben és Warp Server for e-Business-ben ezt a korlátot már feloldotta az IBM, így ezen rendszerek alatt több sikerrel próbálkozhatunk. Amennyiben az Odinnal sem érünk el sikert, akkor megpróbálkozhatunk valamelyik PC emulátorral. OS/2-es körökben a Bochs a leggyakrabban használt emulátor, amelyben telepíthetjük a Win95/98-at és az alatt futtathatjuk a kívánt alkalmazást. Ez az út sajnos csak a nagyon erôs hardverrel (min. PII processzor) rendelkezôk számára járható, ugyanis az emulátorban futó Windows jelentôsen lassabb, mint normális körülmények között használt társa.


A témához kapcsolódó más oldalak:


< [ OS/2 kérdések és válaszok | Keresés | Észrevételek, megjegyzések ] >
Utolsó módosítás ideje: 2000.01.08.