DOS bővítő - DOS extender

A Tenberry Software DOS/4GW indítási szalaghirdetése

A DOS bővítő egy olyan számítógépes szoftver, amely DOS alatt fut , és lehetővé teszi a szoftver védett módú környezetben történő futtatását, annak ellenére, hogy a gazda operációs rendszer csak valós módban képes működni .

A DOS bővítők eredetileg az 1980 -as években lettek kifejlesztve az Intel 80286 processzor bevezetése után (majd később az Intel 80386 -al bővítették ), hogy megbirkózzanak a DOS memória korlátaival .

DOS bővítő működés

A DOS kiterjesztő olyan program, amely "kiterjeszti" a DOS -t, hogy a védett módban futó programok átláthatóan illeszkedjenek az alatta lévő DOS API -hoz . Erre azért volt szükség, mert a DOS számos funkciója 16 bites szegmens- és eltolási címeket igényel, amelyek az első 640 kilobájt memóriahelyekre mutatnak . A védett mód azonban nem kompatibilis címzési módszert használ, ahol a szegmensregiszterek (ma úgynevezett szelektorok) segítségével mutatnak be egy bejegyzést a globális leíró táblázatban, amely leírja a szegmens jellemzőit. A két címzési módszer kölcsönösen kizárja egymást, a processzornak költséges váltást kell végrehajtania valódi (vagy V86 ) módra a nem védett módú kérések kiszolgálása érdekében.

A környezet beállításán és a ténylegesen végrehajtandó program betöltésén túl a DOS kiterjesztő (többek között) egy fordítási réteget is biztosít, amely az 1 MB valós módú memóriagát alatt tárolt puffereket tartja fenn . Ezek a pufferek adatátvitelre szolgálnak a valós módú operációs rendszer és a védett módú program között. Mivel a valódi/V86 mód és a védett mód közötti váltás viszonylag időigényes művelet, a bővítő megpróbálja minimalizálni a kapcsolók számát azáltal, hogy sok valós módú műveletet megismétel a saját védett módú környezetében. Mivel a DOS széles körben használ megszakításokat az operációs rendszer és a felhasználói szintű szoftver közötti kommunikációhoz, a DOS-bővítők elfogják a gyakori hardverek (pl. Valós idejű óra és billentyűzet vezérlő) és szoftverek (pl. Maga a DOS és az egér API) megszakításait. Egyes bővítők más gyakori megszakítási funkciókat is kezelnek, például a videó BIOS rutinokat.

Lényegében a DOS bővítő olyan, mint egy miniatűr operációs rendszer, amely maga kezeli az operációs rendszer funkcionalitásának nagy részét.

Fejlődéstörténet

A Tenberry Software DOS/4G terméklogója

A DOS bővítőt vitathatatlanul Phar Lap találta ki , de a Tenberry Software (korábban Rational Systems) 386 kiterjesztője DOS/4GW hozta a védett módú DOS programokat a tömegpiacra. A Watcom C, C ++ és Fortran fordítóival együtt, 386 osztályú processzorokhoz hamarosan a PC -alkalmazások és játékok mindenütt megtalálható alappillérévé vált, mint például az id Software sikeres Doom .

Míg kezdetben a memóriaéhes üzleti alkalmazások hajtották a DOS-bővítők kifejlesztését, a PC-s játékok fogják igazán előtérbe helyezni őket. A DOS bővítők fejlesztésének eredményeként két új szoftver interfész jött létre, amelyek gondoskodnak a sok lehetséges konfliktusról, amelyek a már létező változatos memóriakezelési módszerekből adódhatnak, valamint egységes felületet biztosítanak az ügyfélprogramokhoz.

Ezen interfészek közül az első a Virtual Control Program Interface (VCPI) volt, de ezt gyorsan beárnyékolta a DOS Protected Mode Interface (DPMI) specifikáció, amely a Windows 3.0 fejlesztéséből nőtt ki. Olyan API -t biztosítottak, amelyen keresztül egy kiterjesztett program kapcsolódhat valódi módú szoftverhez, memóriát foglalhat ki és kezelheti a megszakítási szolgáltatásokat. Könnyű módszert kínáltak a bővítő számára is, hogy beállítsa a kapcsolót védett módba, és lehetővé tették több védett módú program békés együttélését.

DOS bővítők

  • DOS/4G és DOS/4GW és DOS/16M, a Tenberry Software, Inc.
  • 286 | DOS Extender és 386 | Phar Lap DOS Extender . Később felváltotta a TNT Dos Extender.
  • PROT, Al Williams, 32 bites DOS kiterjesztő, amelyet a Dr. Dobb's Journal és két könyv jelent meg. Ennek a bővítőnek az volt az erénye, hogy emulált módban futtatta a DOS- és BIOS -hívásokat, ahelyett, hogy valódi módba váltott volna.
  • PMODE és PMODE /W , Thomas Pytel és Charles Sheffold . Ez utóbbi a Watcom C számára készült a DOS/4GW alternatívájaként, és nagyon népszerű volt a demoscene programozók körében
  • A CauseWay korábban saját fejlesztő volt, amely a DOS4G -vel versenyzett. 2000 -től nyílt forráskódként jelent meg. Néhány ritka játék, például a DaggerFall használja.
  • DOS/32 a DOS/4G alternatívájaként, szerző: Narech K.
  • Ergo (korábban Eclipse, korábban AI Architects) OS/286 és OS/386 bővítők, valamint DPM16 és DPM32 szerverek
  • A 386Power 32 bites DOS Extender bővítő a 32 bites Assembly alkalmazásokhoz. Tartalmazza a forráskódot .
  • 1990 óta minden Microsoft Windows verzió, az NT ág kivételével, tartalmaz DPMI szervert és DOS bővítőt is.
  • A HX DOS Extender korlátozott Win32 támogatást biztosít a Windows konzol és egyes Win32 GUI alkalmazások DOS alatt történő futtatásához. Ez tartalmazza mind a 16-bites és 32-bites DPMI szerverek (HDPMI16 / HDPMI32) használható a védett mód DOS programok
  • A DosWin32 korlátozott Win32 támogatást biztosít
  • A WDosX a TMT Pascal fordító által használt korlátozott Win32 támogatás korai megvalósítása volt.
  • A Borland Power Pack kiterjesztés volt néhány fejlesztői csomagjában , amely hozzáférhet a Win32 API korlátozott részéhez.
  • A TASM , ismét a Borland cégtől, tartalmazott 32RTM -et DPMI32VM -mel és RTM -et DPMI16BI -vel, két DPMI -gazdagépet.
  • CWSDPMI , Charles W. Sandmann, DPMI szerver 32 bites védett módú DOS DJGPP programokhoz.
  • QDPMI által Quarterdeck Office Systems , volt DPMI kezelőt tartalmazza QEMM .
  • GO32, a DJGPP régebbi (v2 előtti) verzióiban használt , és a Free Pascal
  • A D3X egy DPMI leválasztó, amely teljes egészében a Assembly -ben van írva . Még alfa állapotban van, de befejezés előtt leállították.
  • A DPMIONE egy másik DPMI leválasztó. Eredetileg a Borland C ++ és a Delphi által generált 32 bites programokhoz fejlesztették ki.
  • DBOS by Salford Software, 32 bites védett módú DOS bővítő, amelyet elsősorban az FTN77 Fortran Compiler használ
  • X32 és X32VM a FlashTek által, és célként támogatják a Digital Mars fordítók
  • A BLINKER by Blink Inc 3. és újabb verziói 286 DOS bővítőt biztosítottak számos 16 bites DOS fordítóhoz, beleértve a CA-Clipper, a Microsoft C/C ++, a PASCAL, a FORTRAN és a Borland C/C ++ verziókat. Támogatott egyedi „Dual Mode” futtatható fájlok, amelyek valós vagy védett módban is futtathatók, a futási idő környezettől függően.
  • EMX

Nevezetes DOS kiterjesztett alkalmazások

Hivatkozások

Külső linkek