Keresés

Új hozzászólás Aktív témák

  • Czo

    addikt

    válasz DarthSun #108099 üzenetére

    EMS eseten egy fizikai kartyat illesztessz be gepbe, es a karytahoz valo driver (ami csak ahhoz a tipusu kartyahoz jo, tehat masik gyarto EMS kartyajahoz nem) szoftver fog "LIM EMS" szabvanynak megfelelo memoriat adni ugy, hogy a RAM kartyan levo kontroller, belapozza a bejumperelt lyuk helyere, azt a szeletet, amit a fejleszto kert. Ennek ott volt ertelme, hogy az XT nem tud 1 MByte fole cimezni. 286 eseten jott az XMS. Ott meg azert hasznalt az ember EMS kartyat, ha szukseges volt azt a szoftvert elinditani, ami nem kezel XMS-t, de kezel EMS-t. Majd jott a 386, amiben van olyan CPU mod, hogy egyszeruen emulalhatova valt szoftveresen az EMS kartya. Bumm, ez lett az EMM386.EXE.

    Azaz, az EMM386 nem tud EMS memoriat kezelni, az csak az XMS memoriaban emulal EMS memoriat. Semmi koze nincs a fentebbi sorokhoz. Ha valamilyen gepen nem tudja magatol megkeresni a szabad blokkokat (a kezdeti idokben inkabb nem tudta, aztan volt egy idoszak, amikor igencsak jol megtalalta, mert a BIOSok segitettek neki, majd ahogy a DOS kiesett az erdeklodesi korbol, a BIOS-ok elkezdtek nem foglalkozni ezzel, igy ujra nem tudja mindenhol megtalalni), akkor parameterrel barmilyen gepen megadhato neki, hogy milyen szegmensek szabadak, ezeken fogja letrehozni az emulalt EMS memoria paget, illetve itt lesznek az UMB-hez hozzacsapott dolgok is. Hogy mindez mukodjon, 386-os CPU-ra van szukseg. Kezzel pl. a DEBUG.EXE -t hasznalva lehetett konnyen megkeresni a nem hasznalt blokkokat. Marmint, irni valamit a RAM-ba, visszaolvasni, ellenorizni, hogy az jott-e vissza. Pl. volt gond olyanbol, hogy az adott alaplapi BIOS, "ismetlodoen" "rakott" memoriat erre a teruletre, igy az EMM386 sok ures blokkot talalt, de mivel az osszes ugyonaz a blokk volt fizikaialg, csunyan crashelt a gep, amikor elkezdte ezt hasznalni. Viszont ezt kezzel az adott konfignal meg lehetett keresni, es be lehetett neki irni.

    Mit jelent az, csak latszolag toltodik be? Hogyan tud latszolag betolteni? Vagy betoltodik, vagy nem. A parametereitol fuggoen pedig, vagy athelyezi a dolgokat az UMB-be, vagy nem. Vagy keszit emulalt EMS memoriat, vagy nem, de attol, hogy valamelyik szolgaltatasat kikapcsoltad, attol meg betoltodik. Hogyan lehetseges XMS memoriat nem linearisan csinalni? Nem lehet lyuk az XMS teruleten. Pl. ha bekapcsolod a Memory Hole-t a BIOS-ban, akkor a 15-16M koze csinalt lyuk miatt, az XMS driver nem tud tobb memoriat latni, mert XMS-nek kotelezo a linearisan 1 blokkban levo memoria. Sott, miota nem chipeket pakolsz az alaplapba, nem is tudsz "lyukasan" memoriat adni a gephez. Amig draga volt a RAM, addig volt ertelme lyukasan pakolni, mert ugye folosleges volt oda RAM-ot rakni, ahol pl. a CGA kartya memoriaja is be van lapozva.

Új hozzászólás Aktív témák