# DOS

DOS (alfabet fonètic internacional /dɒs/, /dɔːs/) és un acrònim de la plataforma independent per a Sistema operatiu de disc que més tard es va convertir en una taquigrafia comuna per als sistemes operatius basats en disc compatibles amb IBM PC. DOS es compon principalment de l'MS-DOS de Microsoft, i una versió rebatejada amb el nom d'IBM PC DOS, introduïts el 1981. Els sistemes compatibles posteriors d'altres fabricants inclouen DR DOS (1988), ROM-DOS (1989), PTS-DOS (1993) i FreeDOS (1998). MS-DOS va dominar el mercat compatible amb IBM PC entre 1981 i 1995.
Desenes d'altres sistemes operatius també utilitzen l'acrònim "DOS", començant pel mainframe DOS / 360 del 1966. Altres inclouen Apple DOS, Apple ProDOS, Atari DOS, Commodore DOS, TRSDOS i AmigaDOS .

## Història
### Orígens

IBM PC DOS (i el MS-DOS venut per separat) i el seu predecessor, 86-DOS, es basaven en CP/M de Digital Research, el sistema operatiu de disc dominant per als microordinadors Intel 8080 i Zilog Z80 de 8 bits, però aquest funcionava per processadors Intel 8086 de 16 bits.
Quan IBM va presentar el PC IBM, construït amb el microprocessador Intel 8088, necessitaven un sistema operatiu. Buscant una versió CP/M compatible amb 8088, IBM es va dirigir inicialment a l'executiu en cap de Microsoft, Bill Gates (possiblement creient que Microsoft era propietari de CP/M a causa de la Microsoft Z-80 SoftCard, que permetia que CP/M funcionés en un Apple II). IBM va ser enviat a Digital Research i es va establir una reunió. No obstant això, les negociacions inicials per a l'ús de CP/M es van trencar; Digital Research volia vendre CP/M en règim de regalia, mentre que IBM buscava una llicència única i canviava el nom per "PC DOS". El fundador de Digital Research, Gary Kildall, es va negar i IBM es va retirar.
IBM es va tornar a apropar a Bill Gates. Al seu torn, Gates es va apropar a Seattle Computer Products. Allà, el programador Tim Paterson havia desenvolupat una variant de CP/M-80, pensada com a producte intern per provar la nova targeta de CPU Intel 8086 de 16 bits de SCP per al bus S-100. El sistema es va anomenar inicialment QDOS (quick and dirty operating system), abans de posar-lo a disposició comercial 86-DOS. Microsoft va comprar 86-DOS, suposadament per US$50,000. Això es va convertir en el sistema operatiu Microsoft, MS-DOS, introduït el 1981. En un any Microsoft va llicenciar MS-DOS a més de 70 empreses més, que subministraven el sistema operatiu per al seu propi maquinari, de vegades amb el seu propi nom. Més tard, Microsoft va requerir l’ús del nom MS-DOS, a excepció de la variant d’IBM. IBM va continuar desenvolupant la seva versió, PC DOS, per a IBM PC. Digital Research es va adonar que IBM venia un sistema operatiu similar al CP/M (sota el mateix nom que IBM va insistir per CP/M) i va amenaçar amb accions legals. IBM va respondre oferint un acord: donarien als consumidors de PC una opció de PC DOS o CP/M-86, la versió 8086 de Kildall. Al costat, CP/M costava US$200 més que el PC DOS i les vendes van ser baixes. CP/M esvaït, amb MS-DOS i PC DOS es converteix en el sistema operatiu comercialitzat per a PC i compatibles amb PC.
Microsoft originalment venia MS-DOS només a fabricants d'equips originals (OEM). Una de les raons principals va ser que no tots els primers PC eren 100% compatibles amb IBM. DOS es va estructurar de manera que hi hagués una separació entre el codi de controlador de dispositiu específic del sistema (IO. SYS) i el nucli DOS (MSDOS. SYS). Microsoft va proporcionar un kit d’adaptació OEM (OAK) que permetia als OEM personalitzar el codi del controlador del dispositiu al seu sistema particular. A principis de la dècada de 1990, la majoria dels ordinadors s'adherien als estàndards de PC IBM, de manera que Microsoft va començar a vendre MS-DOS al detall amb MS-DOS 5.0.
A mitjans dels anys vuitanta, Microsoft va desenvolupar una versió multitasca de DOS. Aquesta versió de DOS es coneix generalment com a "MS-DOS 4 europeu" perquè va ser desenvolupada per ICL i amb llicència per a diverses empreses europees. Aquesta versió de DOS admet multitasca preventiva, memòria compartida, serveis d'assistència de dispositius i executables de format nou executable ("NE"). Cap d'aquestes funcions no es va utilitzar en versions posteriors de DOS, però es van utilitzar per formar la base del nucli OS / 2 1.0. Aquesta versió de DOS és diferent de la PC àmpliament publicada DOS 4.0, desenvolupat per IBM i basat en DOS 3.3.
Digital Research va intentar recuperar el mercat perdut de CP/M-86, inicialment amb Concurrent DOS, FlexOS i DOS Plus (ambdós compatibles amb el programari MS-DOS i CP/M-86), més tard amb DOS multiusuari (compatible amb ambdós MS -DOS i programari CP/M-86) i DR-DOS (compatible amb el programari MS-DOS). Digital Research va ser comprada per Novell i DR DOS es va convertir en PalmDOS i Novell DOS ; més tard, va formar part de Caldera (amb els noms OpenDOS i DR-DOS 7.02 / 7.03), Lineo i DeviceLogics.
Gordon Letwin va escriure el 1995 que "DOS va ser, quan el vam escriure per primera vegada, un producte de llançament únic destinat a fer feliç a IBM perquè comprés els nostres llenguatges". Microsoft esperava que fos una solució provisional abans de Xenix. La companyia tenia previst millorar amb el temps MS-DOS, de manera que seria gairebé indistingible de Xenix per a un sol usuari, o XEDOS, que també funcionaria al Motorola 68000, Zilog Z8000 i LSI-11 ; serien compatibles amb Xenix, que Byte el 1983 va descriure com "el MS-DOS multiusuari del futur".
IBM, però, no volia substituir DOS. Després que AT&T començà a vendre Unix, Microsoft i IBM van començar a desenvolupar OS / 2 com a alternativa. Les dues empreses van tenir més tard una sèrie de desacords sobre dos sistemes operatius successius a DOS, OS / 2 i Windows. Com a resultat, van dividir el desenvolupament dels seus sistemes DOS. L'última versió minorista de MS-DOS va ser MS-DOS 6.22; després d'això, MS-DOS va passar a formar part de Windows 95, 98 i Me. L'última versió minorista de PC DOS era PC DOS 2000 (també anomenat PC DOS 7 revisió 1), tot i que IBM posteriorment va desenvolupar PC DOS 7.10 per a OEM i ús intern.
El projecte FreeDOS va començar el 26 de juny de 1994, quan Microsoft va anunciar que ja no vendria ni donaria suport a MS-DOS. A continuació, Jim Hall va publicar un manifest proposant el desenvolupament d'un substitut de codi obert. En poques setmanes, altres programadors, inclosos Pat Villani i Tim Norman, es van unir al projecte. Un nucli, el COMMAND. L'intèrpret de línia d'ordres COM (intèrpret d'ordres) i les utilitats bàsiques es van crear agrupant el codi que havien escrit o que estaven disponibles. Hi havia diverses distribucions oficials de pre-llançament de FreeDOS abans que la distribució de FreeDOS 1.0 fos publicada el 3 de setembre de 2006. Disponible sota la llicència GNU General Public License (GPL), FreeDOS no requereix drets de llicència ni drets d’autor.

### Declivi

Les primeres versions de Microsoft Windows funcionaven amb una versió independent de MS-DOS. A principis de la dècada de 1990, el shell gràfic de Windows tenia un ús intensiu en els nous sistemes DOS. El 1995, Windows 95 va incloure com a sistema operatiu independent, que no requeria una llicència DOS separada. El Windows 95 (i el Windows 98 i ME, que el van seguir) es van fer càrrec del nucli del sistema operatiu per defecte, tot i que el component MS-DOS es va mantenir per compatibilitat. Amb Windows 95 i 98, però no amb ME, el component MS-DOS es podria executar sense iniciar Windows. Com que DOS ja no requereix utilitzar Windows, la majoria dels usuaris van deixar d'utilitzar-lo directament.

### Ús posterior

Els sistemes DOS disponibles el 2012 són FreeDOS, DR-DOS, ROM-DOS, PTS-DOS, RxDOS i REAL / 32. Alguns fabricants d’ordinadors, inclosos Dell i HP, venen equips amb FreeDOS i DR-DOS com a sistemes operatius OEM.

#### Sistemes incrustats

L'estructura d'accés directe al maquinari de DOS el fa ideal per utilitzar-lo en dispositius incrustats. Les versions finals de DR-DOS continuen dirigides a aquest mercat. ROM-DOS es va utilitzar com a sistema incrustat a la Canon PowerShot Pro 70.

#### Emulació

A Linux, és possible executar còpies de DOS i molts dels seus clons a DOSEMU, una màquina virtual nativa de Linux per executar programes DOS a una velocitat gairebé nativa. Hi ha una sèrie d'altres emuladors per executar DOS en diverses versions d'Unix i Microsoft Windows, com ara DOSBox. DOSBox està dissenyat per a jocs antics (per exemple, King's Quest, Doom) en sistemes operatius moderns.

## Disseny

Els sistemes operatius relacionats amb IBM PC DOS i MS-DOS s'associen comunament a màquines que utilitzen Intel x86 o CPU compatibles, principalment compatibles amb IBM PC. Les versions de MS-DOS que depenen de la màquina es van produir per a moltes màquines basades en x86 no compatibles amb IBM, amb variacions des de la etiquetatge de la distribució de Microsoft sota el nom del fabricant fins a versions dissenyades específicament per funcionar amb maquinari no compatible amb PC-IBM.. Mentre els programes d'aplicació utilitzen API DOS en lloc d'accés directe al maquinari, podrien executar-se tant en màquines compatibles amb IBM PC com en incompatibles. El nucli original FreeDOS, DOS-C, es va derivar de DOS / NT per a la sèrie de CPU Motorola 68000 a principis dels anys noranta. Tot i que aquests sistemes s'assemblaven poc a l’arquitectura DOS, les aplicacions no eren compatibles amb el binari a causa dels conjunts d’instruccions incompatibles d’aquestes CPU no-x86. No obstant això, les aplicacions escrites en idiomes d'alt nivell es podrien transportar fàcilment.
DOS és un sistema operatiu d’un sol usuari i de tasca única amb funcions bàsiques del nucli que no són reintroductor: només un programa a la vegada pot utilitzar-les i el DOS no té cap funcionalitat que permeti executar més d’un programa alhora. El nucli DOS proporciona diverses funcions per a programes (una interfície de programa d'aplicació), com E / S de caràcters, gestió de fitxers, gestió de memòria, càrrega i finalització de programes.
DOS proporciona la possibilitat de fer scripts de l'intèrpret d'ordres mitjançant fitxers per lots (amb l'extensió del nom de fitxer . BAT). Cada línia d'un fitxer per lots s'interpreta com un programa per executar. Els fitxers per lots també poden fer ús d’ordres internes, com ara GOTO i sentències condicionals.
El sistema operatiu ofereix una interfície de programació d'aplicacions que permet el desenvolupament d'aplicacions basades en caràcters, però no per accedir a la majoria del maquinari, com ara targetes gràfiques, impressores o ratolins. Això feia necessari que els programadors accedissin directament al maquinari, de manera que normalment cada aplicació tenia el seu propi conjunt de controladors de dispositiu per a cada perifèric de maquinari. Els fabricants de maquinari publicarien especificacions per garantir que estiguessin disponibles els controladors de dispositiu per a aplicacions populars.

### Seqüència d'arrencada

* El carregador d’arrencada en ordinadors compatibles amb PC, el registre d’arrencada principal, es troba a partir del sector d’arrencada, el primer sector de la primera pista (pista zero), del disc d’arrencada. La BIOS de la ROM carregarà aquest sector a la memòria a l'adreça0000h :7C00h i normalment comproveu si hi ha signatura "55h AAh "en compensació+1FEh. Si el sector no es considera vàlid, la BIOS de la ROM provarà el següent disc físic de la fila, en cas contrari saltarà a l'adreça de càrrega amb determinats registres configurats.
* Si el sector d’arrencada carregat és un registre d’arrencada principal (MBR), tal com es troba als suports particionats, es traslladarà a0000h :0600h a la memòria, cas contrari, s'omet aquest pas. El codi MBR explorarà la taula de particions, que es troba dins d’aquest sector, per buscar una partició activa (els MBR moderns comproven si el bit 7 està establert en offset+1BEh+10h*n, mentre que els MBR antics simplement busquen un valor de80h) i, si es troba, carregueu a la memòria el primer sector de la partició corresponent, que conté el registre d’arrencada de volum (VBR) d’aquest volum.0000h :7C00h de la mateixa manera que havia estat carregat per la mateixa BIOS de la ROM. El MBR passarà l'execució a la part carregada amb determinats registres configurats.
* El contingut del sector carregat a0000h :7C00h constitueix un VBR ara. Els VBR són específics del sistema operatiu i no es poden intercanviar entre diferents versions de DOS en general, ja que el comportament exacte difereix entre diferents versions de DOS. En versions molt antigues de DOS com ara DOS 1.x, el VBR carregaria tot el IO. SYS / IBMBIO. Arxiu COM a la memòria a0000h :0600h. Perquè això funcionés, aquests sectors havien de ser emmagatzemats en ordre consecutiu al disc per SYS. En números posteriors, localitzaria i emmagatzemaria el contingut de les dues primeres entrades al directori arrel a0000h :0500h i si reflecteixen els fitxers d'arrencada correctes tal com es van registrar al VBR, el VBR carregaria els primers 3 sectors consecutius de l'IO. SYS / IBMBIO. Arxiu COM a la memòria a0070h :0000h. El VBR també ha de tenir cura de preservar el contingut de la Taula de paràmetres de disc (DPT). Finalment, passa el control a la part carregada saltant al seu punt d’entrada amb certs registres configurats (amb diferències considerables entre les diferents versions de DOS).
* En les versions modernes de DOS, on el VBR només ha carregat els primers 3 sectors de l’IO. SYS / IBMBIO. Fitxer COM a la memòria, la part carregada conté un altre carregador d’arrencada, que carregarà la resta de la mateixa a la memòria mitjançant la informació del directori arrel emmagatzemada a0000h :0500h. Per a la majoria de versions, el contingut del fitxer encara s'ha d'emmagatzemar en ordre consecutiu al disc. En les versions anteriors de DOS, que encara es carregaven en conjunt, aquest pas s'omet.
* El codi d’inicialització del sistema DOS inicialitzarà els controladors de dispositiu integrats i, a continuació, carregarà el nucli DOS, situat a MS - DOS. SYS en sistemes MS-DOS, també a la memòria. Al Windows 9x, el codi d’inicialització del sistema DOS i els controladors de dispositiu integrats i el nucli DOS es combinen en una única E / S. SYS mentre es troba MSDOS. SYS s'utilitza com a fitxer de configuració de text.
* El CONFIG.A continuació, es llegeix el fitxer SYS per analitzar els paràmetres de configuració. ElSHELL variable especifica la ubicació de l'intèrpret d'ordres que per defecte és COMMAND.COM.
* L'intèrpret d'ordres es carrega i s'executa.
* El fitxer per lots d’inici AUTOEXEC. Aleshores, el shell executa BAT.
Els fitxers del sistema DOS carregats pel sector d'arrencada han de ser contigus i ser les dues primeres entrades de directori. Com a tal, suprimir i afegir aquest fitxer probablement farà que el suport no es pugui iniciar. No obstant això, és possible reemplaçar l'intèrpret d'ordres a voluntat, un mètode que es pot utilitzar per iniciar l'execució d'aplicacions dedicades més ràpidament. Aquesta limitació no s'aplica a cap versió de DR DOS, on els fitxers del sistema es poden localitzar en qualsevol lloc del directori arrel i no cal que siguin contigus. Per tant, els fitxers del sistema es poden copiar simplement a un disc sempre que el sector d’arrencada sigui DR Compatible amb DOS.
En PC DOS i DR DOS 5.0 i versions posteriors, els fitxers del sistema DOS s'anomenen IBMBIO. COM en lloc de IO. SYS i IBMDOS. COM en lloc de MS-DOS. SYS. Versions anteriors de DR DOS va utilitzar DRBIOS. SYS i DRBDOS. SYS en canvi.
Començant amb MS-DOS 7.0, els fitxers IO del sistema binari. SYS i MS-DOS. SYS es van combinar en un sol fitxer IO. SYS mentre MSDOS. SYS es va convertir en un fitxer de configuració similar a CONFIG. SYS i AUTOEXEC. BAT. Si el MS-DOS. La directiva SYS BootGUI s'estableix a 0, el procés d'arrencada s'aturarà amb el processador d'ordres (normalment COMMAND. COM) carregat, en lloc d’executar WIN. COM automàticament.

### Sistema de fitxers

DOS utilitza un sistema de fitxers que admet 8.3 noms de fitxer: 8 caràcters per al nom de fitxer i 3 caràcters per a l'extensió. Començant per DOS 2 s'admeten directoris jeràrquics. Cada nom de directori també té un format 8.3, però la longitud màxima del camí d'accés al directori és de 64 caràcters a causa de les taules d'estructura de directori actual (CDS) que manté DOS. Incloent el nom de la unitat, la longitud màxima d’un nom de fitxer completament compatible amb DOS és de 80 caràcters mitjançant la unitat de format: \ path \ filename.ext seguida d’un byte nul.
DOS utilitza el sistema de fitxers Taula d'assignació de fitxers (FAT). Originalment era FAT12, que suportava fins a 4078 clústers per unitat. DOS 3.0 va afegir compatibilitat amb FAT16, que utilitzava entrades d’assignació de 16 bits i admetia fins a 65518 clústers per unitat. Compaq MS-DOS 3.31 va afegir compatibilitat amb FAT16B que va eliminar el 32 Límit de la unitat de MB i pot suportar fins a 512 MB. Finalment, MS-DOS 7.1 (el component DOS de Windows 9x) va afegir compatibilitat amb FAT32, que utilitzava entrades d'assignació de 32 bits i podia suportar discs durs de fins a 137 GB i més.
A partir de DOS 3.1, es va afegir a DOS el suport del redirector de fitxers. Això es va utilitzar inicialment per donar suport a la creació de xarxes, però més tard es va utilitzar per donar suport a les unitats de CD-ROM amb MSCDEX. PC IBM DOS 4.0 també tenia suport per al sistema de fitxers instal·lable preliminar (IFS), però no es va utilitzar i es va eliminar a DOS 5.0. DOS també admetia dispositius de bloqueig (dispositius "Unitat de disc") carregats des de CONFIG. SYS que es podria utilitzar amb el sistema de fitxers DOS per donar suport als dispositius de xarxa.

#### Esquema de noms de les unitats

En DOS, es fa referència a les unitats mitjançant lletres identificatives. La pràctica estàndard és reservar "A" i "B" per a les unitats de disquet. En sistemes amb només una unitat de disquet, DOS assigna les dues lletres a la unitat, cosa que demana a l'usuari que intercanviï els discs a mesura que els programes alternin l'accés entre ells. Això facilita la còpia d'un disquet a un disquet o fer executar un programa des d'un disquet mentre s'accedeix a les seves dades en un altre. Als discs durs se'ls assignava originalment les lletres "C" i "D". DOS només podia admetre una partició activa per unitat. A mesura que es disposava de suport per a més discs durs, es va desenvolupar en assignar primer una lletra de la unitat a la partició primària activa de cada unitat, després fer una segona passada sobre les unitats per assignar lletres a les unitats lògiques de la partició estesa, i després una tercera passada per donar qualsevol altres particions primàries no actives els seus noms (on existien particions addicionals que contenien un sistema de fitxers compatible amb DOS). Finalment, DOS assigna lletres per a unitats de discos òptics, discs RAM i altre maquinari. Les assignacions de cartes solen produir-se en l'ordre en què es carreguen els controladors, però els controladors poden indicar a DOS que assigni una lletra diferent; els controladors per a les unitats de xarxa, per exemple, normalment assignen lletres més properes al final de l’alfabet.
Com que les aplicacions DOS fan servir aquestes lletres de la unitat directament (a diferència del directori / dev en sistemes similars a Unix), es poden interrompre afegint maquinari nou que necessiti una lletra de la unitat. Un exemple és l’addició d’un nou disc dur que té una partició principal on un disc dur preexistent conté unitats lògiques en particions esteses; a la nova unitat se li assignarà una lletra que anteriorment s'havia assignat a una de les unitats lògiques de partició ampliada. A més, fins i tot afegir un nou disc dur que només tingui unitats lògiques en una partició estesa encara afectaria les lletres dels discs RAM i les unitats òptiques. Aquest problema va persistir a través de les versions 9x de Windows basades en DOS de Microsoft fins que es van substituir per versions basades en la línia NT, que conserva les lletres de les unitats existents fins que l'usuari les canvia. A DOS, es pot solucionar aquest problema definint una unitat SUBST i instal·lant el programa DOS en aquesta unitat lògica. L'assignació d'aquesta unitat es canviaria en un treball per lots sempre que s'iniciï l'aplicació. En algunes versions de Concurrent DOS, així com en Multiusuari DOS, System Manager i REAL / 32, la lletra reservada L: s'assignarà automàticament a la unitat de càrrega corresponent sempre que s'iniciï una aplicació.

#### Noms de dispositiu reservats

Hi ha noms de dispositius reservats a DOS que no es poden utilitzar com a noms de fitxer independentment de l'extensió, ja que estan ocupats per dispositius de caràcters integrats. Aquestes restriccions també afecten diverses versions de Windows, en alguns casos causant bloquejos i vulnerabilitats de seguretat.
Els noms reservats són:
* CON, per a consola
* AUX, per a auxiliars
* PRN, per a impressora
* LST, per lister; introduït amb 86-DOS 0,74.
* NUL, per a dispositius nuls ; afegit a 86-DOS 1.10 i PC DOS 1.0.
Aquests noms (excepte NUL) van continuar sent compatibles amb totes les versions de MS-DOS, PC DOS i DR-DOS des de llavors. LST també estava disponible en algunes versions OEM de MS-DOS 1.25, mentre que altres versions OEM de MS-DOS 1.25 ja feien servir LPT1 (impressora de primera línia) i COM1 (primer dispositiu de comunicació en sèrie), tal com es va introduir amb PC DOS. A més de LPT1 i LPT2, així com de COM1 a COM3, MS-DOS 2.11 de Hewlett-Packard per a HP Portable Plus també admetia LST com a àlies de LPT2 i 82164A com a àlies de COM2 ; també era compatible amb PLT per a conspiradors. En cas contrari, es van introduir els dispositius de rellotge COM2, LPT2, LPT3 i CLOCK$ (encara anomenat CLOCK en alguns números de MS-DOS 2.11) amb DOS 2.0 i COM3 i COM4 amb DOS 3.3. Només el MS-DOS 4 KEYBD$ admetia KEYBD$ i SCREEN$. DR DOS 5.0 i versions posteriors i DOS multiusuari admeten un dispositiu $IDLE$ per a la detecció dinàmica del ralentí per estalviar energia i millorar la multitasca. LPT4 és un controlador integrat opcional per a una impressora de quarta línia compatible amb algunes versions de DR-DOS des de la 7.02. CONFIG$ constitueix el gestor PnP de mode real a MS-DOS 7.0-8.0.
Normalment, AUX predetermina COM1 i PRN a LPT1 (LST), però aquests valors predeterminats es poden canviar en algunes versions de DOS per apuntar a altres dispositius serials o paral·lels. PLT va configurar.
Els noms de fitxer van acabar amb dos punts (: com ara NUL: indica convencionalment els noms dels dispositius, però els dos punts no són en realitat una part del nom dels controladors de dispositiu integrats. No cal escriure dos punts en alguns casos, per exemple:
Encara és possible crear fitxers o directoris mitjançant aquests noms de dispositius reservats, com ara mitjançant l'edició directa d’estructures de dades de directoris en sectors de disc. Aquest nom, com ara iniciar un nom de fitxer amb un espai, de vegades ha estat utilitzat per virus o programes de pirateria informàtica per ocultar fitxers d’usuaris que no saben com accedir a aquestes ubicacions.

### Gestió de la memòria

DOS es va dissenyar originalment per al processador Intel 8086/8088 i, per tant, només podia accedir directament a un màxim d’1 MB de RAM. A causa de l'arquitectura de l'ordinador, només hi ha disponible un màxim de 640 KB (coneguda com a memòria convencional), ja que es reserven els 384 KB superiors.
Es van desenvolupar especificacions per permetre l'accés a memòria addicional. El primer va ser l’ especificació de memòria expandida (EMS) que originalment permetia accedir a la memòria d’una targeta complementària mitjançant un marc de pàgina de 64 KB a l’àrea de memòria superior reservada. Els sistemes 80386 i posteriors podrien utilitzar un gestor de memòria en mode 8086 (V86) virtual, com EMM386, per crear memòria ampliada a partir de memòria ampliada sense la necessitat d’una targeta complementària. La segona especificació era l'especificació de memòria estesa (XMS) per als sistemes 80286 i posteriors. Això proporcionava una manera de copiar dades des de i cap a la memòria estesa, accedint a l’àrea de memòria alta (HMA) de 65520 bytes directament per sobre del primer megabyte de memòria i de l’àrea de bloc de memòria superior (UMB). Generalment, HIMEM proporcionava el suport XMS. SYS o un gestor de memòria en mode V86 com QEMM o 386MAX que també admeten EMS.
Començant amb DOS 5, DOS podria aprofitar directament l'HMA carregant allí el seu nucli i els búfers de disc mitjançant la instrucció DOS = HIGH a CONFIG. SYS. DOS 5+ també va permetre l’ús d’UMB disponibles mitjançant la sentència DOS = UMB a CONFIG. SYS.

### DOS sota OS / 2 i Windows

L'emulació DOS a OS / 2 i Windows s'executa de la mateixa manera que ho fan les aplicacions natives. Poden accedir a totes les unitats i serveis, i fins i tot poden utilitzar els serveis de porta-retalls de l’amfitrió. Com que els controladors de sistemes de fitxers i altres resideixen al sistema amfitrió, l'emulació DOS només ha de proporcionar una capa de traducció de l'API DOS que converti les trucades DOS a trucades de sistema OS / 2 o Windows. La capa de traducció també converteix les trucades del BIOS i virtualitza els accessos de port d'E/S comuns que molts programes DOS utilitzen habitualment.
A Windows 3.1 i 9x, WINOLDAP proporciona la màquina virtual DOS. WinOldAp crea una màquina virtual basada en el fitxer PIF del programa i l'estat del sistema quan es va carregar Windows. El mode gràfic DOS, tant de caràcter com gràfic, es pot capturar i executar a la finestra. Les aplicacions DOS poden utilitzar el porta-retalls de Windows accedint a trucades publicades addicionals a WinOldAp, i es pot enganxar text a través dels gràfics WinOldAp.
El DOS emulat a OS / 2 i Windows NT es basa en DOS 5. Tot i que hi ha una configuració predeterminada (config.sys i autoexec.bat), es poden utilitzar fitxers alternatius cada sessió. És possible carregar controladors en aquests fitxers per accedir al sistema amfitrió, tot i que normalment són de tercers.
Sota OS / 2 2.x i versions posteriors, l'emulació DOS la proporciona DOSKRNL. Es tracta d'un fitxer que representa l'IBMBIO combinat. COM i IBMDOS. COM, les trucades del sistema es transmeten als serveis de finestra OS / 2. Els programes DOS s'executen al seu propi entorn, la major part de les utilitats DOS són proporcionades per aplicacions DOS / OS2 vinculades al directori \ OS2. OS / 2 pot executar aplicacions de Windows 3.1 mitjançant una còpia modificada de Windows (Win-OS / 2). Les modificacions permeten que els programes de Windows 3.1 s'executin perfectament a l'escriptori OS / 2, o es pot iniciar un escriptori WinOS / 2, similar a l’inici de Windows des de DOS.
OS / 2 permet "DOS des de la unitat A:", (VMDISK). Es tracta d’un DOS real, com MS-DOS 6.22 o PC DOS 5,00. Un crea un disquet d'arrencada del DOS, afegeix diversos controladors des d'OS / 2 i crea una imatge especial. El DOS arrencat d'aquesta manera té accés complet al sistema, però proporciona els seus propis controladors de maquinari. Es pot utilitzar aquest disc per accedir a les unitats de CD-ROM per a les quals no hi ha controlador OS / 2.
En totes les edicions de 32 bits (IA-32) de la família Windows NT des de 1993, l'emulació DOS es proporciona mitjançant una màquina DOS virtual (NTVDM). Les versions de 64 bits (IA-64) de Windows no admeten NTVDM i no poden executar directament aplicacions DOS de 16 bits; emuladors de tercers com DOSbox es poden utilitzar per executar programes DOS en aquestes màquines.

## Interfície d'usuari

Els sistemes DOS utilitzen una interfície de línia d’ordres. Per iniciar un programa, introduïu el nom del fitxer a l’indicador d’ordres. Els sistemes DOS inclouen programes d’utilitat i proporcionen ordres internes que no es corresponen amb els programes.
En un intent de proporcionar un entorn més fàcil d'utilitzar, nombrosos fabricants de programari van escriure programes de gestió de fitxers que proporcionaven als usuaris interfícies basades en menús i / o icones. convertir-se en un carregador de programes autònom i substituir DOS com a carregador de programes més compatible amb PC. Els programes d’ interfície d’usuari de text inclouen Norton Commander, DOS Navigator, Volkov Commander, Quarterdesk DESQview i Sidekick. Els programes d'interfície gràfica d’usuari inclouen el GEM de Digital Research (escrit originalment per a CP/M) i GEOS.
Finalment, els fabricants dels principals sistemes DOS van començar a incloure els seus propis gestors d'entorn. MS-DOS / IBM DOS 4 incloïa DOS Shell ; DR DOS 5.0, publicat l'any següent, incloïa ViewMAX, basat en GEM.

### TSR

DOS no és un sistema operatiu multitasca. Tanmateix, DOS va proporcionar una funció Terminate and Stay Resident (TSR) que permetia als programes romandre residents a la memòria. Aquests programes podrien connectar el temporitzador del sistema i / o les interrupcions del teclat per permetre’s executar tasques en segon pla o ser invocades en qualsevol moment evitant que el programa en execució actual implementés efectivament una forma senzilla de multitasca sobre una base específica del programa. L'ordre PRINT ho va fer per implementar la cola d'impressió en segon pla. Borland Sidekick, un gestor d'informació personal emergent (PIM), també va utilitzar aquesta tècnica.
Els programes Terminate and Stay Resident també es van utilitzar per proporcionar funcions addicionals no disponibles per defecte. Programes com CED i DOSKEY proporcionaven instal·lacions d'edició en línia d'ordres més enllà del que estava disponible a COMMAND. COM. Programes com les extensions de CD-ROM de Microsoft (MSCDEX) proporcionaven accés als fitxers dels discs de CD-ROM.
Alguns TSR fins i tot podrien realitzar una forma rudimentària de commutació de tasques. Per exemple, el programa shareware Back and Forth (1990) tenia una tecla d'accés directe per desar l'estat del programa que s'està executant actualment al disc, carregar un altre programa i canviar-hi, per tant, era possible canviar "endavant i endarrere "entre programes, encara que lentament a causa de l'accés al disc necessari. Back and Forth no ha pogut habilitar el processament en segon pla; que necessitava DESQview (almenys en un 386).

## Programari

* Arachne, un navegador web gràfic de 16 bits
* dBase, programa de bases de dades
* Harvard Graphics, un programa de disseny de gràfics de presentació
* Lotus 1-2-3, un full de càlcul s'ha acreditat amb l’èxit de l’ordinador IBM.
* Norton Commander i XTree, utilitats de gestió de fitxers
* PKZIP, la utilitat de compressió que es va convertir ràpidament en l'estàndard en la compressió de fitxers
* Programes de comunicació per mòdem ProComm, Qmodem i Telix
* Sidekick, gestor d'informació personal que es podria utilitzar des d'altres programes
* WordPerfect, un processador de textos que va ser dominant als anys vuitanta
* WordStar, processador de text originalment per a CP/M que es va popularitzar a l'ordinador IBM

### Eines de desenvolupament

* Intèrprets de llenguatge BÀSIC. BASICA i GW-BASIC
* DJGPP, el port DPMI DOS de 32 bits de gcc
* Microsoft Macro Assembler, Microsoft C i CodeView de Microsoft
* Watcom C / C ++ de Watcom
* Turbo Pascal, Turbo BASIC, Turbo C, Turbo Prolog i Turbo Assembler de Borland

## Referències

* ↑ Dictionary.com Arxivat 2017-11-12 a Wayback Machine.
* ↑ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books, 1988. ISBN 0-923178-00-7.
* 1 2 Rolander, Tom. «The rest of the story: How Bill Gates beat Gary Kildall in OS war, Part 1». The Scoble Show (en anglès). Arxivat de l'original el 2007-11-04.
* ↑ , 2005, p. 9–11. ISBN 1-59327-064-X.
* ↑ Bellis, Mary. «The Unusual History of MS-DOS The Microsoft Operating System». Arxivat de l'original el 2012-04-27. [Consulta: 2 setembre 2008].
* ↑ InfoWorld, 23-08-1982, pàg. 22 [Consulta: 29 gener 2015].
* ↑ «Did you know that OS/2 wasn't Microsoft's first non Unix multi-tasking operating system?». Arxivat de l'original el 2012-11-04.
* ↑ «Larry Osterman's Biography». Arxivat de l'original el 2013-06-02.
* ↑ Letwin, Gordon. «What's happening to OS/2» (en anglès). comp.os.os2.advocacy, 17-08-1995. [Consulta: 18 desembre 2021].
* ↑ Byte, 1-1982, pàg. 6 [Consulta: 19 octubre 2013].
* ↑ Byte, 10-1983, pàg. 132 [Consulta: 30 gener 2015].
* ↑ InfoWorld, 10-12-1984, pàg. 28 [Consulta: 7 febrer 2015].
* ↑ The New York Times, 27-07-1991 [Consulta: 2 setembre 2008].
* ↑ New York Times, 28-05-1999 [Consulta: 2 setembre 2008].
* ↑ Hall, Jim. «The past, present, and future of the FreeDOS Project», 25-03-2002. Arxivat de l'original el 2012-05-29. [Consulta: 14 juny 2008].
* ↑ Hall, Jim. «History of FreeDOS». freedos.org, 23-09-2006. Arxivat de l'original el 2007-05-27. [Consulta: 28 maig 2007].
* 1 2 Bannan, James. «HOW TO: Coax retro DOS games to play on Vista», 13-10-2006. Arxivat de l'original el 2008-08-01. [Consulta: 3 juliol 2008].
* ↑ «Finding The DOS In Windows 95». Smart Computing, 01-03-1996. Arxivat de l'original el 2004-07-07. [Consulta: 12 juliol 2008].
* ↑ Chen, Raymond. «What was the role of MS-DOS in Windows 95?». The Old New Thing - Site Home - MSDN Blogs, 24-12-2007. Arxivat de l'original el 2014-02-05. [Consulta: 5 febrer 2014].
* ↑ «Description of Restarting Computer in MS-DOS Mode». support.microsoft.com, 19-01-2007. Arxivat de l'original el 2014-02-05. [Consulta: 5 febrer 2014].
* ↑ Hall, Jim. «Jim Hall's blog - 2007», 13-07-2007. Arxivat de l'original el 2012-10-25. [Consulta: 12 juny 2008].
* ↑ «Dell PCs Featuring FreeDOS». Arxivat de l'original el 2008-03-19. [Consulta: 14 juny 2008].
* ↑ «DR-DOS Embedded DOS». Arxivat de l'original el 2008-12-21. [Consulta: 26 setembre 2008].
* ↑ «Datalight DOS Selected for Canon's New Line of Digital Still Cameras». , 24-08-1999.
* ↑ «DOSEMU Home», 05-05-2007. Arxivat de l'original el 2008-07-23. [Consulta: 3 juliol 2008].
* ↑ «DOSBox Information». Arxivat de l'original el 2008-05-25. [Consulta: 18 maig 2008].
* ↑ «Batch File Help». computerhope.com. Arxivat de l'original el 2008-09-07. [Consulta: 10 setembre 2008].
* ↑ Matczynski, Michael. «ZINGTECH - Guide to the New Game Programmer». Arxivat de l'original el 2008-12-19. [Consulta: 2 setembre 2008].
* ↑ «The Master Boot Record (MBR) and What it Does». Arxivat de l'original el 2013-05-27. 090912 dewassoc.com
* ↑ «Reverse-Engineering DOS 1.0 – Part 1: The Boot Sector « pagetable.com». Arxivat de l'original el 2009-05-11. 090912 pagetable.com
* ↑ «CONFIG.SYS Commands». Arxivat de l'original el 2009-05-02. 090913 academic.evergreen.edu
* ↑ Kozierok, Charles. «The DOS Boot Process». The PC Guide, 2001. Arxivat de l'original el 19 juliol 2008. [Consulta: 2 setembre 2008].
* ↑ «misc.txt». Arxivat de l'original el 2010-06-29. 090912 arl.wustl.edu
* 1 2 «Drive Letter Assignment and Choosing Primary vs. Logical Partitions». The PC Guide, 17-04-2001. Arxivat de l'original el 2012-04-17. [Consulta: 4 abril 2012].
* ↑ «Microsoft Windows MS-DOS Device Name DoS Vulnerability». Arxivat de l'original el 2011-07-25. [Consulta: 2 setembre 2008].
* ↑ «DOS device names definition». PC Magazine. Arxivat de l'original el 2008-09-29. [Consulta: 2 setembre 2008].
* 1 2 3 4 «MS-DOS Device Driver Names Cannot be Used as File Names», 21-07-2012. Arxivat de l'original el 2012-07-21. [Consulta: 3 setembre 2021].
* 1 2 Hewlett-Packard - Technical Reference Manual - Portable PLUS. 1ª ed.. Corvallis, OR, USA: Hewlett-Packard, Portable Computer Division, agost 1985. 45559-90001.
* ↑ Hewlett-Packard - Technical Reference Manual - Portable PLUS (en anglès). 2ª ed.. Portable Computer Division, Corvallis, OR, USA: Hewlett-Packard, desembre 1986. 45559-90006 [Consulta: 18 desembre 2021].
* ↑ Paterson, Tim. «Microsoft DOS V1.1 and V2.0: /msdos/v20source/SKELIO.TXT, /msdos/v20source/HRDDRV.ASM». Computer History Museum, Microsoft, 19-12-2013. Arxivat de l'original el 2014-03-26. [Consulta: 25 març 2014]. (NB. While the publishers claim this would be MS-DOS 1.1 and 2.0, it actually is SCP MS-DOS 1.25 and a mixture of Altos MS-DOS 2.11 and TeleVideo PC DOS 2.11.)
* ↑ Paul, Matthias R. «Caldera OpenDOS 7.01/7.02 Update Alpha 3 IBMBIO.COM README.TXT», 02-10-1997. Arxivat de l'original el 2003-10-04. [Consulta: 29 març 2009].
* ↑ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books, 2008, p. 7–12. ISBN 978-0-923178-02-4.
* ↑ Murdock, Everett. DOS the Easy Way. EasyWay Downloadable Books, 2008, p. 71. ISBN 978-0-923178-02-4.
* ↑ Dvorak, John Charles; Anis, Nick. Dvorak's Guide to DOS and PC Performance. Osborne McGraw-Hill, 1991, p. 442–444.
* ↑ Version 1.47 is archived at «Back and Forth 1.47». Arxivat de l'original el 5 novembre 2013. [Consulta: 5 agost 2013]. and says "(C) 1990 by Progressive Solutions, Inc."
* ↑ Darrow, Barbara. «Whatever Happened To Lotus 1-2-3?», 01-02-2002. Arxivat de l'original el 2009-01-09. [Consulta: 12 juliol 2008].

## Bibliografia

* IBM Corp., IBM, (gener de 1984). "Caixa de taulers durs de venda al detall de IBM DOS Release 2.10". 1a edició. IBM Corp. Número d'article. 6183946
* IBM Corp., IBM, (gener de 1984). "Guia de l'usuari del sistema operatiu de disc (versió 2.10 de DOS)". 1a edició. Microsoft Corp. (100 pàgines amb il·lustracions en color) Número d'ítem. 6183947
* IBM Corp., IBM, (gener de 1984). "Manual del sistema operatiu de disc (versió 2.10 de DOS)". 1a edició. Microsoft Corp. (574 pàgines de fulls solts a una carpeta de 3 timbres) Article núm. 6183940

## Vegeu també

* COMMAND.COM (l'intèrpret de línia d'ordres per a DOS i Windows 9x)
* CP/M (sistema operatiu inicial de Digital Research similar a DOS)

## Enllaços externs

* Orígens de DOS, articles i manuals de Tim Paterson.
* Timeline of DOS and Windows versions a Wayback Machine (archived 2007-10-28)
* «DOS - where hardware is the only limit». Arxivat de l'original el 2010-08-15. [Consulta: 29 agost 2010].
* Fitxers bat: el manual de programació de fitxers per lots DOS
* «Application Software - DOS Short File Name Family». www.jumpjet.info. Arxivat de l'original el 2020-02-17. [Consulta: 7 febrer 2020]. "(...) Un arxiu de programari GRATU [T [i abandonat ] seleccionat a mà per a DOS."