La prima versione del PC/MS DOS viene presentata 12 agosto del 1981, ed è più un “concept” che un vero e proprio sistema operativo.
DOS 1.00 Command Prompt (direttamente derivato da QDos)
Derivazione diretta dell'86-DOS della Seattle Computer Products (SCP), è basata su 4.000 linee di codice assembly, permette di gestire fino a 64 KiloByte (KB) di memoria e utilizza i floppy disk da 5,25" con capacità di 160 KB.
L'OS si compone di tre file principali (IBMDOS, IBMBIO e COMMAND), che forniscono i servizi essenziali, ed è in grado di gestire due tipi di eseguibili: il .COM ed il nuovo .EXE, entrambi combinabili all'interno dei file Batch (.BAT) per creare un'esecuzione automatizzata e controllata.
All’avvio viene eseguito automaticamente il file AUTOEXEC.BAT, mentre l’utente è sempre costretto ad inserire la data corrente.
Questa prima versione con contempla il supporto ai dischi rigidi, alle directory (tutti i file sono nella dir di ROOT), alle pipe o al redirect (per la comunicazione tra processi) e a nessun tipo di driver. Sono, inoltre, presente solo un set minimale di comandi interni (COMMAND.COM) : DIR, COPY, ERASE, PAUSE, REM, RENAME, e TYPE, mentre DATE e TIME sono utility esterne.
Tra le utility più interessanti si annoverano: DEBUG, per il debug del sistema stesso, LINK, per la creazione di oggetti di codice MASM linkabili, EDLIN, un editor di file veramente minimale che, con sorpresa dello stesso autore, accompagnerà il DOS fino alla versione 4.
Microsoft ed IBM decidono di affiancare al DOS anche una specifica versione del BASIC per il nuovo PC IBM, tanto che BigBlue inserisce nel sistema una ROM BASIC con le funzionalità minimali. Sul floppy aggiuntivo troviamo il BASIC.COM e BASICA.COM che, col già citato modulo in ROM, rappresentano il primo rudimentale IDE di sviluppo per sistemi DOS.
Nel floppy del BASIC trovano, inoltre, posto alcuni programmi demo (di dimensione compresa tra 32Kb e 48Kb) finalizzati a dimostrare le capacità del nuovo PC, tra cui: la grafica CGA (Color Graphics Adapter), lo speaker sonoro, l’invio dei dati alla stampane e alcuni esempi di calcoli di base.
I programmi di esempio in BASIC
Donkey BASIC
Il DOS 1.0 viene realizzato con la supervisione di Tim Paterson che, successivamente, diventa dipendente Microsoft. Paterson, ancora in SCP, sceglie come file system il File Allocation Table (FAT), realizzato direttamente da Bill Gates e Marc McDonald nel 1977per il BASIC.
Un altro sviluppatorefondamentale nella realizzazione del DOS è stato sicuramente Robert O'Rear, dipendente Microsoft, chetra l'altro ha apposto la sua "firma" nel boot sector del sistema operativo stesso.
Absolute Sector 0 (Track 0, Side 0, Sector 1) 0 1 2 3 4 5 6 7 8 9 A B C D E F 0000 EB 2F 14 00 00 00 60 00 20 37 2D 4D 61 79 2D 38 ./....`. 7-May-8 0010 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1............... 0020 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0030 00 FA 8C C8 8E D8 BA 00 00 8E D2 BC 00 7C FB A1 .............|.. 0040 06 7C 8E D8 8E C0 BA 00 00 8B C2 CD 13 72 41 E8 .|...........rA. 0050 58 00 72 FB 2E 8B 0E 02 7C 51 BB 00 00 33 D2 B9 X.r.....|Q...3.. 0060 08 00 BE 01 00 56 B0 01 B4 02 CD 13 72 22 5E 58 .....V......r"^X 0070 E8 E7 00 2B C6 74 14 FE C5 B1 01 BE 08 00 3B C6 ...+.t........;. 0080 73 04 8B F0 EB 01 96 56 50 EB DD 2E FF 2E 04 7C s......VP......| 0090 BE 44 7D B8 42 7D 50 32 FF AC 24 7F 74 0B 56 B4 .D}.B}P2..$.t.V. 00A0 0E BB 07 00 CD 10 5E EB F0 C3 BB 00 00 B9 04 00 ......^......... 00B0 B8 01 02 CD 13 1E 72 34 8C C8 8E D8 BF 00 00 B9 ......r4........ 00C0 0B 00 26 80 0D 20 26 80 8D 20 00 20 47 E2 F3 BF ..&.. &.. . G... 00D0 00 00 BE 76 7D B9 0B 00 FC F3 A6 75 0F BF 20 00 ...v}......u.. . 00E0 BE 82 7D B9 0B 00 F3 A6 75 02 1F C3 BE F9 7C E8 ..}.....u.....|. 00F0 A5 FF B4 00 CD 16 1F F9 C3 0D 0A 4E 6F 6E 2D 53 ...........Non-S 0100 79 73 74 65 6D 20 64 69 73 6B 20 6F 72 20 64 69 ystem disk or di 0110 73 6B 20 65 72 72 6F F2 0D 0A 52 65 70 6C 61 63 sk erro...Replac 0120 65 20 61 6E 64 20 73 74 72 69 6B 65 20 61 6E 79 e and strike any 0130 20 6B 65 79 20 77 68 65 6E 20 72 65 61 64 F9 0D key when read.. 0140 0A 00 CD 18 0D 0A 44 69 73 6B 20 42 6F 6F 74 20 ......Disk Boot 0150 66 61 69 6C 75 72 E5 0D 0A 00 50 52 8B C6 BF 00 failur....PR.... 0160 02 F7 E7 03 D8 5A 58 C3 52 6F 62 65 72 74 20 4F .....ZX.Robert O 0170 27 52 65 61 72 20 69 62 6D 62 69 6F 20 20 63 6F 'Rear ibmbio co 0180 6D B0 69 62 6D 64 6F 73 20 20 63 6F 6D B0 C9 00 m.ibmdos com... 0190 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01A0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01B0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01C0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01D0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 01F0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ 0 1 2 3 4 5 6 7 8 9 A B C D E F |
Il Boot Sector del DOS 1.0
In totale la prima versione del DOS è composta da 40 file,di cui 38 visualizzabili con il semplice DIR e datati: 08-04-81. Gli altri due file, nascosti, sono l'IBMBIO.COM (23 luglio 1981) e l'IBMDOS.COM (13 agosto 1981).
Il forte connubio proprio con Big Blue fa si che, questa prima release, venga venduta esclusivamente con hardware IBM che, tra l'altro, impiega molte risorse e tempo per riscriverne una parte e realizzare la necessaria manualistica d'uso. Ciò condiziona anche la roadmap delle release immediatamente successive che vengono rilasciate in concomitanza agli aggiornamenti hardware del PC.
IBM DOS 1.0 Disk
Release ufficiali:
· 1.0 (retail), 12 agosto 1981, prezzo: 39.95$
· 1.1 (retail), 1982, prezzo: 39.95$
· 1.12 (retail)
· 1.25 (oem), settembre 1982, prezzo: 2$/5$
Esempio di interazione con la prima versione del DOS:
Enter today's date (m-d-y): 10-16-2004
The IBM Personal Computer DOS Version 1.00 (C)Copyright IBM Corp 1981
A>dir *.exe LINK EXE 43264 08-04-81
A>dir *.com COMMAND COM 3231 08-04-81
FORMAT COM 2560 08-04-81
CHKDSK COM 1395 08-04-81
SYS COM 896 08-04-81
DISKCOPY COM 1216 08-04-81
DISKCOMP COM 1124 08-04-81
COMP COM 1620 08-04-81
DATE COM 252 08-04-81
TIME COM 250 08-04-81
MODE COM 860 08-04-81
EDLIN COM 2392 08-04-81
DEBUG COM 6049 08-04-81
BASIC COM 10880 08-04-81
BASICA COM 16256 08-04-81
A>chkdsk 40 disk files 160256 bytes total disk space 6144 bytes remain
available 654336 bytes total memory 642192 bytes free
A>date Current date is 10-16-04 Enter new date:
A>time Current time is 15:03:05.64 Enter new time:
A>debug -l 100 0 3 1 -d 049F:0100 49 42 4D 42 49 4F 20 20-43 4F 4D
06 00 00 00 00 IBMBIO COM..... 049F:0110 00 00 00 00 00 00 00 00-F7
02 02 00 80 07 00 00 ........w....... 049F:0120 49 42 4D 44 4F 53 20 20-43
4F 4D 06 00 00 00 00 IBMDOS COM..... 049F:0130 00 00 00 00 00 00 00
00-0D 03 06 00 00 19 00 00 ................ 049F:0140 43 4F 4D 4D 41 4E 44
20-43 4F 4D 00 00 00 00 00 COMMAND COM..... 049F:0150 00 00 00 00
00 00 00 00-04 03 13 00 9F 0C 00 00 ................ 049F:0160 46 4F 52 4D
41 54 20 20-43 4F 4D 00 00 00 00 00 FORMAT COM..... 049F:0170 00 00
00 00 00 00 00 00-04 03 1A 00 00 0A 00 00 ................ -q
A>