DOS Extender

DOS Extender (myös englanniksi  DOS Extender ) on tekniikka, jonka avulla DOS - perheen käyttöjärjestelmien ohjelmat voivat toimia prosessorin suojatussa tilassa . On olemassa 16- ja 32-bittisiä DOS-laajennuksia: 16-bittiset laajentimet on suunniteltu toimimaan Intel 80286 :n ja sitä uudempien prosessorien kanssa, 32-bittiset - Intel 80386 ja uudemmat.

Suojatussa tilassa työskentelyä tarvittiin ensisijaisesti reaalitilan osoittamisen rajoitusten voittamiseksi (DOS-tilassa suorittimen reaalitilassa toimiva ohjelma voi osoittaa vain 1 MB) turvautumatta temppuihin, kuten muistipankkien vaihtamiseen.

32-bittiset laajennukset mahdollistivat myös DOS-ohjelmien suorittamisen 32-bittisessä tilassa, mikä on monissa tapauksissa tehokkaampaa kuin 16-bittinen.

DOS-laajentimet sisältävät sovelluskehitystyökaluja, jotka toimitetaan usein kääntäjien mukana , sekä suoritettavaa koodia joko yhtenä tiedostona (suoritettavana tai ladattavana) tai tiedostoryhmänä tai upotettuna tuotetiedostoon. Monilla kääntäjillä oli erityisvaihtoehtoja ja kirjastoja koodin luomiseksi tietylle DOS-laajennukselle.

DOS Extender tarjoaa sovellusohjelmalle erilaisia ​​muisti- ja muita resurssienhallintapalveluita ohjelmistokeskeytysten kautta .

Kaikkien DOS-laajentajien on kutsuttava DOS API päästäkseen levylle, verkkoon jne. Intel 80386:ssa tämä on helpompaa, koska DOS voidaan jättää pyörimään virtuaalisen 8086-tilan tehtävän sisällä, jota voidaan käyttää 16- tai 32-bittisellä koodilla. . Intel 80286:ssa DOS:n kutsuminen oli kuitenkin paljon vaikeampaa, koska 286:lla oli vain ohje vaihtaa oikeasta suojattuun tilasta, mutta ei takaisin. Tämän rajoituksen kiertämiseksi käytettiin suorittimen nollausta näppäimistöohjaimen kautta tai dokumentoimatonta LOADALL -käskyä ( eng.  LOADALL ) tai BIOS - toimintoa , joka itse käytti jotakin näistä menetelmistä.

Aluksi DOS-laajentimet itse siirtyivät suojattuun tilaan ja hallitsivat laajennettua muistia. Myöhemmin, kun erityisten suojattujen muistinhallintaohjelmien, kuten CEMM ( eng.  CEMM ) tai QEMM ( eng.  QEMM ) käyttö 80386:ssa tuli käytännössä, tuli tarpeelliseksi luoda mahdollisuus tuleville ohjelmille myös siirtyä suojattuun tilaan, VCPI ( eng.  VCPI ) kehitettiin näiden johtajien toimittamana. Tämä ei kuitenkaan toiminut hyvin moniajokäyttöjärjestelmissä, eikä Microsoft tukenut sitä , jonka vaihtoehto, DPMI- liitäntä , on yleistynyt.

Menestynein DOS/4G-laajennus (toimitetaan Watcom- kääntäjän mukana nimellä DOS/4GW ), ei vähiten sille kirjoitetun Doom -pelin ansiosta.

Microsoft Windowsilla on oma DOS-laajennus versiosta 3.0 lähtien (paitsi reaalitilassa 3.0:ssa).

Muita laajennuksia ovat:

On myös projekti FreeDOS-32- käyttöjärjestelmän luomiseksi , joka suorittaa järjestelmäkutsut suoraan 32-bittisille ohjelmille.

Katso myös

Linkit