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.