DOS extender (de asemenea în engleză DOS extender ) este o tehnologie care permite programelor pentru sistemele de operare din familia DOS să funcționeze în modul protejat de procesor . Există extensii DOS pe 16 și 32 de biți: extensiile pe 16 biți sunt proiectate să funcționeze pe procesoare Intel 80286 și mai mari, cele pe 32 de biți - Intel 80386 și mai mari.
Lucrul în modul protejat era necesar în primul rând pentru a depăși limitarea adresei în modul real (un program care rulează în modul real al procesorului sub DOS poate adresa doar 1 MB), fără a recurge la trucuri precum schimbarea băncilor de memorie.
De asemenea, extensiile pe 32 de biți au permis programelor DOS să ruleze în modul pe 32 de biți, care în multe cazuri este mai eficient decât pe 16 biți.
Extensoarele DOS includ instrumente de dezvoltare a aplicațiilor adesea livrate cu compilatoare , precum și cod executabil, fie ca un singur fișier (executabil sau încărcat) sau ca grup de fișiere, fie încorporat într-un fișier de produs. Multe compilatoare aveau opțiuni și biblioteci speciale pentru a genera cod pentru o anumită extensie DOS.
Extensorul DOS oferă programului aplicației diverse servicii de gestionare a memoriei și a resurselor prin întreruperi software .
Toate extensiile DOS trebuie să apeleze API -ul DOS pentru a accesa disc, rețea etc. Pe Intel 80386, acest lucru este simplificat, deoarece DOS poate fi lăsat să ruleze într-o sarcină în mod virtual 8086 care poate fi accesată prin cod de 16 sau 32 de biți . Cu toate acestea, pe Intel 80286, apelarea DOS a fost mult mai dificilă, deoarece 286 avea doar o instrucțiune pentru a comuta de la modul real la modul protejat, dar nu înapoi. Pentru a evita această limitare, a fost folosită o resetare a procesorului prin controlerul tastaturii sau o instrucțiune LOADALL nedocumentată ( de exemplu LOADALL ) sau o funcție BIOS care a folosit una dintre aceste metode.
Inițial, extensiile DOS însele au efectuat trecerea în modul protejat și gestionau memoria extinsă. Mai târziu, când a intrat în practică utilizarea unor manageri speciale de memorie protejată, cum ar fi CEMM ( ing. CEMM ) sau QEMM ( ing. QEMM ) pe 80386, a devenit necesară crearea capacității pentru viitoarele programe de a intra și în modul protejat, VCPI ( ing. VCPI ) a fost dezvoltat ) furnizat de aceşti manageri. Cu toate acestea, acest lucru nu a jucat bine cu sistemele de operare multitasking și nu a fost susținut de Microsoft , a cărui alternativă, interfața DPMI , a devenit mai comună.
Cel mai de succes extender DOS/4G (livrat cu compilatorul Watcom ca DOS/4GW ), nu în ultimul rând datorită jocului Doom scris pentru el.
Microsoft Windows are propriul extensor DOS începând cu versiunea 3.0 (cu excepția modului real din 3.0).
Alte extensii includ:
Există, de asemenea, un proiect pentru a crea un sistem de operare FreeDOS-32 care va executa direct apeluri de sistem către programe pe 32 de biți.