The Development of MS-DOS
The Development of MS-DOS
MS-f)OS
Encyclopr,dia
Microsoft Press
'\(ashington
Redmond,
1988
The compatibility revolution began with the Intel 8080 microprocessor' This technolog-
ical breakthrough brought unprecedented opportunities in the emerging
microcomputer
in power, sPeed, and cost ofdesktop com-
industry, promising continued improvements
puting. In the miniiomputer market, every hardware manufacturer had its own special
instruction set ancl operating sfstem, so software developed for a specific machine was in-
compatible with the machines of other hardware vendors This specialization also meant
tremendous duplication of effort each hardware vendor had to write language compilers'
- tools to fit its particular machine Microcomputers
databases, and other develoPment
based on the 8080 microprocessor promised to change all this because different manu
facturers would buy the same chip with the same instruction set'
-.*" b.."-" ."tremely imptrtant, Lading Lifeboat, Microsoft, and Digital Research all to
support CP/M-8O, Digital Research's 8080 DOS'
Foreuorcl xüi
The S-bit era proved the importance of having a multiple_manufacturer standard that
permittedthe free interchange of programs. It was important that
software designed for
the new 16-bit machines have this same aclvantage. N; personal
computer manufacturer in
1980 could have predicted with any accuracy how quickJy
a third_pany software industry
would grow and get behind a strong standarci-a slancrarcr that wourd
be the software
industry's lifeblood. The intdcacies of how MS-Dos became rhe mosr
common 16-bir
operating system, in part through rhe work we did for IBM, is not the key point
here. The
key point is that it was inevitable for a popuJ:rr operaring sy.stem to
cmerge tbr the 16_bit
machine, just as Microsoft's BASIC had prevailecl on the 8_tit systems.
Bill Gates
Ray Duncan
The Development of MS-DOS
To many people who use personal computers, MS,DOS is the key that unlocks the power
ofthe machine. It is thcir most visible connection to the hardware hidden inside the
cabinet, and it is through MS-DOS that they can run applications and manage disks and
disk files.
In the sense that it opens the door to doing work with a personal computer, MS-DOS is
indeed a key, and the lock it fits is rhe lntel 8086 family of microprocessors. MS DOS and
the chips it works with are, in fact, closely connected so closely that the story of
MS DOS is really pafi of a larger history that encompasses not only an operating system
but also a microprocessor and, in retrospect, part ofthc explosive growth of personal
computing itseli
Chronologically, the hisrory of MS-DOS can be divicled into rhree parts. Firsr came rhe
formation ofMicrosoft and the events preceding Microsoft's decision to develop an
operating system. Then came the creation olthe first version of MS-DOS. Finally, there is
the continuing evolution of MS-DOS since its release in 1981.
Much ofthe story is based on technical developments, but dates and facts alone do not
provide an adequate look at the past. Many people have been involved in creating MS DOS
and directing the lincs alon€l which it continucs to grow. To the extent that personal opin-
ions and memories are appropriate, they are included here to provide a fuller picturc of
the origin ancl clevelopment of MS-DOS.
Before MS-DOS
The role of Intcrnational Rusiness Machines Corporation in Micr()s()ft's decjsion to create
MS-DOS has been well publicizcd. But events, like invcntions, always build on prior ac-
cornplishments, and in this respect the roots of MS-DOS reach farther back, to four iurd
warc and sofiware developments ofthe 1970s: Microsoit's clisk basecl and stand akrne
versions of BASIC, Digital Research's CP/M-80 operating system, the emergence ofthe
i3086 chip, ancl a disk opcrating systcm for the 8086 developed by Tim Parerson at a hard,
ware company called Seattle Computer Prcxlucts.
The Altaif. C.hristetBd one euefüng shortlf belore its alü)earance ()n
the .opr o/ popular Elecrronics
m.agazite, the computel aas named
for the t ight,s clestination ofthe stars&rp enterirtse. The phorogfaph
clearlj shobs the input srDitches ofi thefront
|lanet of the cabinei .
merrory expansion boards became av:rilable for the Altait the softwarc needecl mosr by its
llsers was not a $()rcl processor or a spreädsheel, but a programming language and the
-
language first clevclopecl for it was a vcrsion of BASIC written by Bill Gates ancl Paul Allen.
Gates anciAllen tr:rcl become friencls in their teens, whilc .rttending Lakesidc School in
Seattle. They shared an intense intcrest in computcrs, ancl by rhe time Geles was in the
tenth gracle, they and another liiencl namecl I'aul Gilbert l.tad fbrmed a company callcd
Traf O-Data to proclucc a mrchine that automaled the reacling ol16-channel, 'l-digit.
binary-coded clecimal (l]CD) tapes generated by traffic lnonitoring re'orders. This ma
chine, built by Gilbert, was basccl on the Intel 8008 microprocessor, the predeccssor
ofthe B0B0 in the Altair.
hpular
ffi
Electrtrnics af thousands af like minded electron-
ics enlhusiasts
- among them, paul
Allen and llill Catp:
PNO'ECT BREAKTHNOUGH !
Although it was too limitcd to serve as the central processor for a general_purpose
compu_
ter, the 8008 was undeniably the ancestor of the g0g0 as lar as
its ähitecture ancl insrrrrc_
tion set were concerned. Thus Traf-O-Data,s work with the g00g gave
Gates ancl Allcn a
head start when they larer developecl lheir version of BASIC for
th"e elralr
Paul Allen learned of the Altair from the cover story in theJanuary
1975 issue of popular
Electronics magazine. Ailen, then an employee ofHoneywell in äoston, convinccd
Gates,
a student at Harvard University, to develop a BASIC for the new computer The
two wrote
their version of BASIC for the 8080 in six wceks, and Allen flew to New Mexico to .lemon_
strate the language for MITS. The developers gave themselves the
company name of
Microsoft and licensed thcir BASIC to MITS as Microsofr,s fircr product.
Though nor a direct forerunner of MS DOS, Aftair BASIC, like the machine for
which it was
developed, was a landmark product in the history ofpcrsonal conputing.
On an()ther
level, Altair BASIC was also the first link in a chain that led, somewhat
circuitously, to Tim
läterson and the disk opcrating systern he developed for Seattle Computer products
fbr
the 8086 chip.
\,".
LI
I ro' .udl. d3!.rt. lo.diq !h.
[email protected] .nd ch.ck3ur !ö.d.r! tirl
of this rilr b. .r-
'Rr,,1 a 6ae -+- -J \ I a> pr.lr.d ln d.t!l! i! . cov.. 9.ck.3"
z<." th.t rll! 3o oui flrh arr softf.r..
f.\ ).,)
I t-^"] !'^rr" "-.,atl.:.6ajtt y *',".11<
7 b'11e, q t +Lp
lo.la.drng..n.ch..k3w.a
it . :ho.t prcsrd I
I 2 br it l."rlq.\
lv't-t - R^L ;g.t input rc.dy bit
P-
".^l! +". ."J -,'h
frra e"{ r,-'i1 1,""1,^ +
l.dz r|d<a (n'f"dt - t.e)
'\t
f.rxrorl ftoat ft.z!+ taal Q"it-r.
t
sidc\- (?? byr.!)
[FsErbE b"1th "t s+-.r i'1,.e-t t".o.,+' +":"
f r
tunch
0q3
. p.p!r r.p. rlth r..,1.r,
3t. byt.'
th. byr! to b.
13e-'at; .- k-{ s+,,.q ",-e2 sfr3lr i:r!i3 sur.
sl?iv G5 J ' lodd". is in i3
su.. yöu doi t eip.
fr^eusrz) t^,1u":1 onozln,- fa . -1ia.. by loadin. on toe or it.
ro .un thls as.in ch.n.. CHCIOC
On the le.ft, Bitl Gates's orisinal handturitten nales describin| memorv contis
rationfar Allait BASIC On
thefight,ashoflboatstrapprasramafittenbfGdtes'forAttairuse|s;pubtishe.tintheJul!1975e.1itionofthe
MITS üser neusletter, Computer Notes.
This disk-based BASIC marked Microsofr's entry inro rhe business of languages
for per_
sonal computers-not oniy for the MITS Altair, but also for
D"tu
Terminals Corporation and General Electric. Along the way, ",r.h.o^p".ri..-u"
Microsoft BASIC took on
added features, such as enhanced mathematics cafabilities, and,
more to the point in
terms of MS,DOS, evolved into Stand alone Disk BASIC, procluced
for NCR in 192.
Designed and coded by Marc McDonald, stand arone Disk BASIC,
incruded a file-
management scheme called the FAT, or file allocation table that used
a linked list for man-
aging disk files. The FAT, born during one ofa series ofdiscussions
between McDonald
and Bill Gates, enabled disk-allocation information to be kept
in one location, with
'thained" references pointing to the actual storage locations on disk.
Fast anj flexibte,
this file management strategy was later used in a stand-alone version
of BASIC for the g0g6
chrp andeventually, through an operating system named M_DOS, became
the basis for the
file-handling routines in MS-DOS.
M-DOS
During 1977 and 1978, Microsofr adapted borh BASIC and Microsoft FoRTRAN
for an
increasingly popular 8 bit operating sysrem called Cp/M. At the end
of197g, cares and
Allen moved Microsoft from Albuquerqr-re to Belleme, Vashingon. The company
con_
tinued to concentrate on programming languages, producing versions
of BASIC for the
6502 and the T19900.
During this same period, Marc McDonald also worked on developing an 8-bit opcrating
system called M-DOS (usually pronounced "Midas" or "My DOS '). Although it never
became a real part of the Microsoft product line, M-DOS was a true multitasking operating
system modeled after the DEC TOPS-10 operating system M DOS provided good perfor-
mance and, with a more flexible FAT than rhat built into BASIC, had a better fileJtandling
structure than the up-and-coming CP/M operating system At about 30 KB, howevet
M-DOS was unfortr,rnately too big for an 8-bit environment and so ended uP treing rele-
gatedtothebackroom.AsAllendescribesit"'Tryingtodoalarge,fullblownoperating
;ystem on the 8080 was a lot of work, and it took a lot of memory, The 8080 addresses only
64 K. so wirh the success of CPIM, we finally concluded that it was best not to press on
with that."
CP/M
1976 through 1978, both users and developers of per
In the volatile microcomputer era of
sonal computers quickly came to recognize the limitations of running applications on top
of Microsort,s stand-alone Disk BASIC or any other language. MITS, for examplc, scheduled
aJuly 1976 release date for an independent operating system for its machine
that used the
code from the Aftair's Disk BASIC. In rhe same yerr, bigital Research,
headed by Gary
Kiidall, released its Control program/Monitor, or CplM.
cPlM was a typical microcomputer software product ofthe 1970s in that
it was n ritten bv
one person, not a group, in response to a specific need that had not yer heen
fiucJ. One of
the most interesting aspects of CplM's history is that the software was
developed several
years before its release date several years befbre the harclware on which it
would be a standard became-actually,
commercially available.
In 1973' Kildatl, a professor ofcomputer science at the Naval postgraduate school
in
Monterey, California, was working with an g0g0_based snrall computer given
him by Intel
Corporation in return for some programming he had done for the comjany Kildall,s
machine, equipped with a monitor and paper-tape reader, was certainly
advanced for the
time, but Kildall became convinced that magneticdisk storage woulcl
make the machine
rven morc efficirnt thJn it q d5
Trading some programming for a disk <1rive from Shugart, Kildall fißr
attempted ro builcl
a drive controller on his own. Iacking the necessary engineering
ability, he contacte.l a
friend, John Torode, who agreed to handle rhc hardware aspecrs of
interfacing the compu_
ter and the disk drive while Kildall rvorked on the softwareportion
the refinement cf an
operating system he had written earlier tllat year. The result $,,as Cp,/M.
The version of CP/M developed by Kildall in 1973 rrnderwent several reflnements.
Kilclall
enhanced the CP/M debugger and assembler, adcled a BASIC interpreter,
and clid some
work on an editor, eventually developing the procluct that, from aÄour 1977
until the ap_
pearance of the IBM Personal Computer, set the standaral for g_bit
microcompurer opcrat-
ing systems.
At the time, howevet CP/M was highly regarded ancl gainecl the support ofa
broad base of
hardware and software developers alike. euitc poweiful for its size
iabout 4KB), ir was, in
all respects, the undisputed standard in the g-bit world, and remainecl so until. ancl even
after. the appqsra6(e ol lhe c08o.
!,
The 8O86
Vhen Intel released the 8-bit 8080 chip in 1974, the Altair was still a year in the future.
The 8080 was designed not to make computing a part oleveryday life but to make house-
hold appliances and industrial machines more intelligent By 1978, when Intel introduced
the 16-bit 8086, the microcomputer was a reality and the new chip represented a majof
step ahead in performance and memory capacity. The 8086's full 16-bit buses made it fast-
er than the 8080, and its ability to address one megabyte ofrandom-access memoty was a
gianr srep bcyond the 8080's 64 KB iimit. Although the 8086 was not compatible with the
8080, it was architectumlly similar to its predecessor and 8080 source codc could be me
chanically translatecl to run on it. This translation capability, in fact, was a najor influence
on the design ofTim Paterson's operating system for the 8086 and, through Paterson's
work. on the first released version of MS-DOS.
When the 8086 arrived on the scene, Microsoft, like other developers, was conlionted with
two choices: continue working in the familiar 8 bit world or turn to the broader horizons
oflerecl by the new 16 bit technology. For a time, Microsoft did both Acting on Paul Allen's
suggestion, the company developed the SoftCard for thc popular Apple II, wltich was
based on the 8-bit 6502 microprocessor. The SoftCard included a 280 microprocessor and
a copy of CP/M-80 licensed from Dilaital Research !?ith the SoftCard, Apple II users could
run any program or language designed to run on a CP/M machine.
It was 16-bit technology, however, that held the most interest for Gates and Allen, who
believed that this would soon become the standard for microcomputers Their optimism
was not universal-more than one voice in the trade press warned that industry invest
ment in 8 bit equipment and software was too great t() successfully introduce a new slan-
Microsoft, however, disregarded these forecasts and entered the 16-bit arena as it
darc.l.
hacl with the Altair: by developing a stand-alone version of BASIC for the 8086
12 TheMS-DOSEntytopedia
1980
An aduertisement for
the Seattle Computer
GO 15.BIT NOW-WE HAVE MADE IT EASY
Products 8086 cPU,
86-DOS; published
8
8086
Mhz.2-cerd CPU Set
uith
in the December l98O
issue af P,yte .
wnHa6.Dos@$595
ASSEMELEO ESTED GUAiANIEEO
At the same time, however, Paterson was dissatisfied with certain elements of CP/M' one
of them being its file-allocation system, which he considered inefficienl in the use of disk
space and too slow in operation. So for fast, efficient file handling, he rrse<l a File allocation
table, as Microsoft had done with Stand-alone Disk BASIC and M-DOS fle also wrote a
translator to translate 8080 code to 8086 code, and he then wrote an assembler in 280
assembly language and used the translator to translate it.
Four months alter beginning work, Paterson had a functioning 6 KB operating syslem,
officially renamed 86-DoS, and in September 1980 he contacted Microsoft again, this time
to ask the company to wdte a version ofBASIC to run on his system
IßM
'while Paterson
was developing 86-Dos, the third major element leacling to the creation of
MS-DOS was gaining force at the opposite end ofthe country. IBM, until rhen seerningly
oblivious to most ofthe developments in the microcomputer world, had turned its atten_
tion to the possibility of developing a low-end workstation for a market it knew well: busi_
ness and business people.
On August 21, 1980, a study group ofIBM representatives from Boca Raton, Florida, visited
Microsoft. This group, headed by a man namedJack Sams, told Microsoft of IBM,s inreresr
in developing a computer based on a microprocessor. IBM was, however unsure of micro_
computing technology and the microcomputing market. Traditionally, IBM relied on long
development cycles typically four or five years and was aware that such lengthy
- fit the rapidly
design periods did not -
evolving microcomputer environment.
One of IBM's solutions-the one outlined by Sams's group to base the new
-was hardware was available,
machine on products from other manufacturers. All the necessary
but the same could not be said of the software. Hence the visit to Microsoft with the ques_
tion: Given the specifications for an 8-bit computer, could Microsoft write a ROM BASIC for
it by the following April?
Microsoft responded positively, but added questions of its own: $trhy introduce an g_bit
computer? \ü/hy nor release a 16 bir machine based on Intel,s 9086 chip instead? Ar rhe end
of this meeting-the first of many-Sams and his group returned to Boca Raton with a
proposal for the development ofa low-end, 16-bit business workstation. The venture was
named Proiect Chess.
One month later, Sams returned to Microsoft asking whether Gates and Allen could, stili
by April 1981, provide not only BASIC but also FORTRAN, pascal, and COBOL for the new
computer This time the answer was no because, though Microsoft,s BASIC had been
designed to run as a stand-alone product, it was unique in that respect_the other lan_
guages would need an operating system. Gates suggested Cp/M_g6, which was then still
under development at Digital Research, and in fact made the initial contact for IBM. Digital
Research and IBM did not come to any agreement, however.
Microsoft, meanwhile, still wanted ro write all the languages fo. IBM_ approximately 400
KB ofcode. But to do this within the allotted six-monrh schedule, the company needed
some assurances about the operating system IBM was going to use. Further, it neecled
specific information on the internals ofrhe operating bystem, because the ROM BASIC
wouid interacl inrimareLy wrlh rhe BIOS.
The turning point
That state of indecision, then, was Microsoft's situation on Sunday, September 2g, 19g0,
when Bill Gares, Paul Allen, and Kay Nishi, a Microsoft vice president and president of
ASCII Corporation inJapan, sat in Gares,s eighth-floor corner office in the Old National
Bank Building in Belle*re, 'Washington. Gates recalls, ,,Kay and I were just sitting rhere at
night and Paul was on rhe couch. Kay said, ,Got to do it, gor ro do it., Ir was only i0 more K
CreatingMS-DOS
and Bill Gates' Paul
At Thanksgiving, a prototype of the IBM machine arrived at Microsoft
af f.", sob ö'near began a scheclule of long, sometimes hectic days ancl
""AlptiÄ".ity,
total immersion in the project. As O'Rear recalls, "If I was awake'
I was thinking about
the project."
on the new machine This was
The first task handlecl by the team was bringing up 86 DOS
changing hardware environ-
o ltroit.ng. n"o"te the work had to be done in a
constantly
.nn'tg.s were also being made to the specifications of the budding operating
-"r.rt *frä"
system itself.
Bi Gates (1982).
Änd ofcourse, throughout the process the developers encounte.ed the mydad
loose ends,
momentary puzzles, bugs, and unforeseen details withorlt which no project
is complete.
There were, for example, the serial card inteffupts that occurred whän
they shoulclnot
and, frustratingly, a hardwarc constraint that the BIos coulcl not
accon.rmoclate at first and
that resultcd in sporadic crashes during eariy MS DOS operations.
!:
{
I
t
I
Ll
_r,/l.lL r^,'t"i
l"{l Ascvrcl*
f_
,(
t !1)
I /l I
--.-t-t
n v'Lk'd '1"
q M +v
-," *;.-at"-f/4J
la , tt, :-t+ "1i;
(
T. -'ffiirce
i-
u a0wr a-.'* ,)#^u
f;
r! ):';\r,.,_;.1y.'
t- " L")
9- ]ce ?g
J; c'"JL
e-"-il-"
I ( tte)k
s c+--ys qG:""s
DD
&* t-a,; . so, -
t 9: ]
"'O@:tr-
qr:r, l'.& 1- BbDDs t" >-- aaL,e *J. o*l!- .
**^ f,-&
Flrl !.L 6t E6Dos r*-{ c. a.t r* ;;. ;--*tj
bhl'""dilt) to
- I
G üX+ f*
' ut--4;+l^
V ^".t e.r^l& z,eo 4uv sp^* -^. - "*
(O,.lu^ :q) r*ri. -- *uL-
^ ^ ^,.^0^
/. 1 cL.t "J es 2., o.+fJ ; - $ro\
rf' \f#cUr orJ J,rs'ür e,-----,
+ , J. c)*l n4 6r,"n ü^1 4 +L Loy ü.L. a-,:! t,
*n
0,e- Jup^& rn + ar u
Palt ofBob O'Rear's "laundr!', Iist of opewting slstem changes and corrcctiofi.sfor
eartJ/ April 1981. Atoun.l
this time, interim beta copies uere shipped to IBM
f()r testing.
In spite of such difficulties, howevel the new operating system ran on the prototype for
the iirst time in February 1981 In the six months that followed, the system was
continually
refined and expanded, and by the time of its debut in August 1981' MS-Dos' like the IBM
Personal Comiuter on which it appeared' had become a functional product for home
and office use.
Version 1
The first release of MS-DOS, version 1.0, was not the operating system Microsoft envi
sioned as a final model for 16-bit computer systems. According to Bill cates, ,,Basically,
what we wantecl to do was one that was more like MS-Dos 2. with the hierarchicar fire
system and everything. . . the key thing lin developing version 1.0] was my saying, ,Look,
we can come ouf wirh a subset first and just go upward from that.,,'
To take advantage of the existing base ollanguages and such popular applications as
wordstar and dBASE Ir, MS-Dos was designed to allow software clevelopers to mechan-
ically translare source code for the 8080 to run on the 80g6. Ancl because oithis link,
MS-DOS looked and actecl like Cpr,M-8o, ar rhat time srill rhe standarcl among operating
systems for microcoülputers. Like its 8 bit relative, MS DoS useci eight character filenames
and threc-character extensions, and it had the same conventions for iclentifying clisk drives
in command prompts. For the most part, MS-DOS also usecl the same command language,
offered the same file services, and had the same general structure as cp/M. The resem-
blance was even more strikin6l at the programming level, with an almost one to_one cor
responclencc beiween Cp/M and MS-DOS in the system cails available to application
programs.
New Features
MS DOS was not, howevcl a CP/M lwin, nor.had Microsc.rft designed it to be inextricably
bonded to the IRM PC. Iloping to create a product that woulcl be successful over the long
term, Microsoft had taken steps to make MS,DOS flexible enough to accommodate
changcs and new-directions in thc hardq,'a.e tcchnology- disks, memory boards, even
microprocessors on which it depended. The first steps toward this inclependence from
-
20 T he MS-DOS Encyclopedia
1981
ä=€+{tot
IBM Anno unce s Neu) M i ctocomput er E st e m
t s oJliciaL onc a,Pase
PFBSONAL COMPUTERS
PERSONAT
COMPUTER
FROM IBM
r,.itd.ntry iiro th. P.Eon.l
cohrulinl n.rk.l.in.lor
corror.t .r r.ll .t hom.
.4u(T*!'.Eah.n!q6o3lc4r
-'dFonü&'+ßvftld
A sampting ofthe heatllines and nellrspaper articles that abaun.led uhen IBM an\ounced its Personal
specific hardware configurations appeared in MS-DOS vemion 1.0 in the form of device-
independent input and output, variable record lengths, relocatable program files, and a
replaceable command processor
MS-DOS made input and output device independent by treating peripheral devices as if
they were files. To do this, it assigned a reserved filename to each ofthe three devices it
recognized: CON for the console (keyboard and display), PRN for the printer, and ALX for
the auxiliary serial ports. rVhenever one ofthese reserved names appeared in the file con
trol block ofa file named in a command, all operations were directed to the device, rather
than to a disk file. (A file control block, or FCB, is a 37-byte housekeeping record located
in an äpplication's portion ofthe memory space. lt includes, among other things, the file
name, the extension, and information about the size and starting location ofthe file
on disk.)
Such device independence benefited both application developers and computer users.
On the development side, it meant that applications could use one set of read and write
calls, rather than a number of different calls for different devices, and it meant that an ap-
plication did not have to be modified if new devices were added to the system. From the
AnothernewfeatuleinMs-Doswastherelocatabieprogramlile'UnlikeCP/M,MS-DOS
haclthe,lbilitytoloadtwodifferenttypesofprogramfiles'identifiedbytheextensions
.CoM and .EiE. l'rogram files ending with .coM mimicked the binary liles in CP/M They
wcre more compact than EXE files ancl loaded somewhat faster, but the combined pro-
gram code, stack, and clata couid be no larger than 54 fB 't' nxl program, on the other
irand, could be much larger, because the cocle, stack, and data segments could be loaded
as
modules in separate parts of nemory determined by MS DOS Once the segments were in
set
memory, MS DOS then used part ofthe file header, or relocation rable, to automatically
the correct addresses for each of the different program segments'
In addition to supportin€i EXE iiles, MS-DOS made the external command processor'
just like any
COMMAND.COM, more adaptable by making it a separate reiocatable file
by custom command processoq as long
other program. It coulcl therefore be replacecl a
as the new file was also named COMMAND COM
Performance
Everyone familiarwith the IBM PC knows that MS-DOS eventualiy became the dominant
not
operating system on 8086-based microcomputers There were several teasons for this'
least of which was acceptance of MS-DOS as the operating system for IBM's phenomenally
successiul line of personal comp.tters. But even though MS-DOS was the
only operating
system available whcn the first IBM PCs wele shipped, positioning alone would not neces-
which appeared six months later'
sarily have guaranteed its ability to outstdp CP/M-86, .
US-öOS also oifered significani advantages to the user in a number of areas' including the
allocation and management of storage space on disk
however'
Like CP/M, MS-DOS shared out clisk space in allocation units Unlike CP/M'
the of these allocation units in a central file allocation table
MS DOS mappecl use
used a directory
-the
entry for
that was always in memory Both operating systems
recorcling inlbrmation about each file, but whereas a CP/M directory entry
included an
parts of the file
allocatio*n map-a list of sixteen 1 KB allocation units where successive
unit in the
were stored- an MS-DOS directory entry pointed only to the first allocation
FATandeachcntryinthetablethenpointecltothenextunitassociatedwiththefile'Thus,
a file
CP/Mmight require several dircctory entries (and more than one disk access) to load
larger than 16 KB, bur MS-Dos retainecl a comprete in-memory rist ofa file components
and all available disk space without having to access the crisk at all. As a result. l,t.s-oos,s
ability to find and load even very long files was extremely rapid compared wirh Cp/M,s.
Two other important features-the ability to read and writc multiple records with one
operating-system call and the transient use of memory by rhe MS_DOS command
processor provided further efficiency for both users and developers.
-
The independence ofthe rogicar record from the physical secror laid the foundarion for rhe
ability to read and write murtiple sectors. vhen reading multiple records in cp/M, an appri-
cation had to issue a read function ca[ for each sector, one ar a time. Vith MS_DOS, the
ap-
plication couid issue one read function call, giving the operating system the beginning
record and the number ofrecords to read, and MS DOS would then loacl all of rhe corrl-
sponding sectors automatical ly.
Another innovative featrrre of MS-Dos version 1.0 was the division of the command pro-
cessor, COMMAND.COM, into a resident portion and a transient portion. (There
is also a
third part, an initialization portion, which carries out the commands in an AUTOEXEC
barch file at startup. This part of coMMAND.coM is discarded from
memorv when irs
work is finished.) The reason for creating resident and transicnt porrions ol the co-mencl
processor had to do with maximizing the efficiency of MS-DOS fü the user:
On the one
hand, the programmers wanted COMMAND.COM to include commonly requested
func
tions, such as DIR and COpy, for speed and ease ofuse; on the other hanci, adding
these
commands meant increasing the size ofthe command processor, with a resuitingdecrcase
in the memory available to application programs. The solution to this trade off oT speed
versus utilitywas to inciude the extra functions in a transient portion of
COMMANb.COM
that could be overwdtten by any application requiring more memorv. To maintain the in_
tegrity ot rh(- [unction\ lor rhe u't-r. thc residenr prrt ;l COMM A\D.cOM * a. gi,
en the
job ofchecking the transient pofiion for damage when an apprication
termin"t.d. If n...,
sary, this resident portion would then load a new copy of its transient partner into
memory.
Ease of Use
In addition to its moves toward hardware indepenclence and efficiency, MS_DOS includecl
several services and utilities designed to make life easier for users and application devei-
opers. Among these services were improved error handling, automatic lo€lging of disks,
date and time stamping offiles, and batch processing.
MS-DOS and the IBM PC were targeted at a nontechnical group ofusers, ancl from the
beginning IBM had stressed the imporrrnLe ofdart inrcgrity Because data is most likely
to be lost when a user responds incorrectly to an error message, an effort was made to in_
clude concise yet unambiguous messages in MS DOS. To further recluce rhe risks of misin
terpretation, Microsoft used these messages consistently across all MS_DOS functions and
utilities and encouraged developers to use the same messages, where appropriate, in their
applications.
TheMS-DOS Encylopedia
1981
Tuo pagesfrom Microsoft's MS-DOS üersion 1 O manual On the lefr, the slgem's requiremefits - 8 KB of
memory; on lhe right, the 118-page manual's complete table of contents
In a further attempt to safeguard data, MS-DOS also trapped hard errors such as critical
-
that had previously been left to the hardware-dependent logic Now
hardware errors
-
the hardware logic could simply report the nature of the error and the operating system
would handle the problem in a consistent and systematic way MS-DOS could also trap the
Control-C break sequence so that an application could either protect against accidental
termination by the user or provide a graceful exit when appropdate
To reduce errors and simplify use of the system, MS-DOS also automatically updated mem-
ory information about the disk when it was changed. In CPIM, users had to log new disks
asihey changed them-a cumbersome procedure on single-disk systems or when data
was stored on multiple disks. In MS-DOS, new disks were automatically logged as long as
no file was currently oPen.
Another new feature one visible with the DIR command-was date and time stamping
-
of disk files. Even in its eafliest forms, MS-DOS tracked the system date and displayed it at
every startup, and now, when it turned out that only the first 16 bytes of a directory entry
Batch processing was originally added to MS-DOS to help IBM. IBM wanred
ro run
scripts sequences of commands or other operations one after the
- ofthe system. To do this, the
functions
other to test various
testers needed an automated method ofcalling
routines sequentially. The result was the batch processor, which later
also provicled uiers
with the convenience of saving and running MS-DOS commands as batch
files.
Finally, MS-DOS increased the options available to a program when it terminared.
For ex
ample, in less sophisticated operating systems, applications and other programs
remained
in memory only as long as they were active; when terminated, they were
rem<>ved from
memory MS-Dos, however added a terminate-and-stay-resident function that
enabled a
program to be locked into memory and, in effect, become part
ofthe operating_system
environment until the computer system itself was shut clown or restarted.
The Marketplace
When IBM announced the personal Computer, it said that the new machine
would run
three operating systems: MS-DOS, Cp/M-g6, and SofTech Microsysrem,s p_Sysrem.
Of the
three, only MS-DOS was available when the ItsM pC shipped. Nevertheleis,
when MS_DOS
was released, nine out often program s on the InfoWoriA bestseller
list for 19g1 ran under
CP/M-80, and CP/M 86, which became available about six months later,
was rhe operating
svstem ofchoice to most writers and reviewers in the trade press.
or any other
Microsoft, meanwhile, held to the beliefthat the success of IBM's machine
the emergence of an industry standard for a
16-bit microcomputer depended ultimately on
could not afford to develop software for even
16-bit operating system. Software developers
coulcl (or would) not pay the the
two or three difterent operating systems' and users Prices
would almost certainly
developers would have to charge if they did Furthermore,-users
rebel against the inconvenience of sharing data stored underdifferent operating-system
to be
formati There had to be one operating system, and Microsoft wanted MS-DOS
the one.
hardware
The company had aheady taken the first step towarcl a standard by choosing -
portability' and
indepenäeni designs wherever possible Maihine inclependence meant
port;bility meant ihat Microsoft could sell one version of MS-DOS to different hardware
alone'
manufacturers who, in turn, couid aclapt it to their own equipment Pofiability
the standard'
however, was no guarantee of industry wide acceptance' To make MS-DOS
for MS-DOS And in
Microsoft needed to convince software developers to write programs
1981, these developers were a little confused about IBM's new
operating system
Mfi€M@6@FF
original equip/nent manufacturer (oEM) marketing hrochure describing the slrengths of MS DOS
A Microsofi
Version 2
After the release of pc-specific version 1.0 of MS-DOS, Microsoft worked on an update
that contained some bug fixes. Version 1.1 was provided to IBM to run
on the upgraded pC
released in 1982 and enabled MS DOS to work with double_sided,
320 KB flopiy ai*".
This version, referred to as 1.25 by all bur IBM, was rhe first version
of MS_Död inlppeO ly
other OEMs, including COMpAe and Zenith.
There were three particular areas that interested Microsofi: a new, hierarchical
file system,
insullable device drivcrs, and some type of multitasking. Each of these leatures
contrib_
utcd to version 2.0, and together they represented a major change in
MS DOS while still
n1aintaining compatibility with version 1.0.
Version 1.0 had a single directory for all the files on a floppy clisk. That system
workecl well
enough on a disk of limited capaciry, bur on a 10-megabyie fixed clisk a single
directory
could easily become unmanagcably large ancl cumbersome.
CP/M had approached the problem of high-capacity storage media by using partirioning
a
scheme that divided rhe lixed disk into 10 user areas equivalcnt to 10 separarelloppy
disi
drives. On the other hand, LINIX, which had traditionally ciealt with larger systems,
used
a branching, hierarchical file structure in which rhe u"er eould creare
directories ancl
subdirectories to organize liles and nake them readily accessible. This was the file_
mana€aement system implemented in XEND(, and it was the MS_DOS
team,s choice for
handling files on the XT's fixed disk.
The MS DOS uersion 1.O manual next to the rersion 2.0 nanüal
Partitioning, IBM's initial choice, hacl the acivantages o1 familiarity, size, and ease of implc
mentation. Many smali system users- particularly software developers-wcre already
familiar with partitioning, if not overly loncl of it, from their cxperience with CP/I4' Devel
opment time was also a maior concern, and the code necded to devel 'p J fartitioning
scheme would be minimal comparecl n'ith the cocle required to manage a hierarchical
filc
jmc to implcment'
system. Such a scheme would also take less t
However, partitioning had two inherent disadvantafles First, its functionality would
decrease as storage capacity increased, and even in 1982, Microsoft $'as anticipaling sub-
stantial growth in the stQrage capacity of disk based media. Second, Partitjoning de-
pendeci on the physical clevice. If the size oi the disk changed, either the number or the
iize ofthe partiiions musr als. be changed in the code tbr both the operating systcm and
the applicaiion programs. For Microsoft, with its commitment to hardware independence'
partitioninll would have tepresentecl a step in the \\"rong direction
A hierarchical file strr,rcture, Qn the other hand. could be independent i)f the Physicel
device. A clisk could be partitionccl Jogically' rather than physically And because these
partitions (directories) were controlled by the uscr, they wcre opcn ended and enabled
the individual to determine the best way of organizing a disk
Ultimately, it was a hierarchical file system that found its way into MS l)OS 2 0 and even-
tually convincecl every()ne that it was, indccd, the better and more flexible solution lo the
problem of supporting a lixed disk The 1ile systen was logically consistent with the
IENX fil. yet physically consistent with the file access incclrporated in versions
"tt*rure,
1.x, and was based on a root, or main, directory under which the user ccmld create
a sys
tem of subdirectories and sub subdircctorics to hold files. Each filc in the system was iden-
tifiecl by the directory Palh leaclinll to it, and the number of subdirectories was limjted only
by the length olthe pathname, which coulcl not excecd 64 characters'
In this file structure, all the subdirectories and the filename in a path wcre sepanted
from one another by backslash characters. which represcnted the only anomaly in the
xENIX/MS-DOS systcm of irierarchical files. XENIX used a fbrward slash as a sepalator.
systems'
but versi()ns 1.x of MS-DOS, borro*'ing fiom thc tradition of DEC oPerating
at IBM's
already usecl the forrvard siash for switches in the commancl iine, so Microsofl'
request, deciclecl to use the backslash as the seParator instead Although the backslash
contained all the code that permitted the opcrating system to run the hardware lf inde
pendent hardware manufacturers wanted to develop equipment for use with a computer
manufacturer's operating system, they would have to either completely rewrite the device
drivem or write a complicated utility to read thc existing drivers, alter them, add the code
to suppo.t the new device, and producc a working set of drivers. Ifthe user installed more
than one device, these patches would often conflict with one anothcr' Fufihermore, they
would have to be revised each time the computcr mlnufacturer updared its version
of MS-DOS.
By the time work began on version 2.0, the MS-DOS team krew that the ability to instali
any device driver at run time was vital. They implemented installable device drivers by
making the drivers more modular. Like the FAI, IO.SYS (IBMBIO.COM in PC DoS)
became, in effect, a linked list this time, of device drivers could be expanded
-that
through commands in the CONFIG.SYS file on the system boot clisk. Manufacturers could
now write a device ddver that the user could install at run time by including it in the
CONFIG.SYS file. MS DOS could then add the device driver to the linked list.
By extension, this ability to install device drivers also added the ability to supersede a pre
viously installed driver-fbr example, the ANSLSYS console ddver that suppo.ts the ANSI
standard escape codes for cursor positioning and screen contr()I.
Print Spooling
At IBM's request, version 2.0 of MS-DOS also possessed the unclocumented ability to per-
form rudimentary backgror-rnd processing an interim solution to a growing awareness of
the potentials ef multitasking.
Background print spooling was sufficient to meet the needs of most people in most situa-
tions, so the pdnt spooler, PRINT.COM, was designed to run whenever MS DOS had
nothing else to do. \Vhen the parent application became active, PRINT COM would be in-
terrupted until the next lull. This type ofbackground processing, though both limited and
extremely complex, was exploitecl by a number oiapplications, such as SideKick
For example, with the fixeci disk it was necessary t() modify the code lor automatic logging
ofclisks. This modification meant that MS-DOS had to access the disk more often, and file
access becamc much slower as a result. In trying tofind a solution to this problem, Chris
Peters reasoned that. if MS-DOS had iust checked the clisk, there was some minimum time
Tüomembers aJ the
IBM line ofpersonat
camputctsfor uhlch
Dersi.r sland2of
MS-DOS uere cletel
oped. on the leJi, the
oriBinat IBM PC (rer-
sio 1.O of MS-DOS\
on the ri8ht, the IBM
PC|XT(Lersian 2.O).
lSAgt
a userwould necd to physically change disks. Ifthat mininum tine had not elapsecl, the
curfent disk information in RAM whether for a fixed disk or a flQppy-was probably
still geod.
Peters lound that thc fastest anyone could physically ctrange clisks, even if the disks were
damaged in the process, was about tw. seconds. Reasoning from tl.ris observation, he ha<1
MS-DOS check to sce hoq' nruch time had gone by sincc the last disk access. If less than
two seconds l.rad elapsed, he had MS DOS assume that a new disk hacl not been inserted
and that the clisk informarion in RAM was srill valid. \trith tbis littlc rrick, rhe speed of file
handling in MS-DOS version 2.0 increased considerably.
Version 2.0 was released in March l98l. the product of a surprisingly smail team of six cle_
velopers, including Peters, Mani Ulloa, and Nancy panners in addition to Allen, Zbikowski,
and Reynolds. Despite its conplex new fcarures, version 2.0 l,as only 24 KB of code.
Though it maintained its conpatibiiity with vcrsions 1.x, ir was in rcaliry a vasrly differenr
operating system. \J(/ithin six months of its release, version 2.0 gained I,idcspread public
acceptance. In acldition, popular application programs such as Lotus 1 2-3 took advanta€le
of the f'eatures ofthis new version ofMS DOS and thus helped sccure its luture as the
industry standard for [1086 processors.
Versions 2.1 and 2.25
The worlcl into which version 2.0 of MS-DOS emcrged w?s consiclerably different from the
one in which version 1.0 made its debut. !(hen IBM released irs original pC, the business
market for microcomputers was as yet uncielined- if not in scope, at least in terms ofwho
and what would clominate the field. A year and a half later, when the pC/XT came on the
scene, the market s,'as much better kr]own. It had. in fact, been heavily infh,renced by IBM
itself. There were still n-rany MS DOS rrachines, such as the Tandy 2000 and the Hewlett
Packad HP150, that were hardware incolnpatible with the IBM, but manufacturers of new
computers knew that IBM was a force to consider and many chose to compete with the
IBM PC by emulating it. Software clevelopers, too, had gaincd an understanding ofbusi
ness con]putinEl and were conlident thcy could position their soltware accurately in the
enormous MS-DOS market.
In such an environment, concerns about the existing base of CP/M software faded as
developers focused their attention on the fast-growing business market and MS-DOS
quickly secured its position as an industry standard. Now, with thc obstacles to MS DOS
diminished, Microsoft found itself with a new concern: maintaining the standarcl it had
created. Henceforth, MS-DOS had to be many things to many people. IBM had require
ments; other OEMS had requirements. And sometimes these requirements conflicted
Hardware Developers
When version 2.0 was released, IBM was already planning to introduce its PCjr. The PCir
would have the ability to run programs fuom ROM cartridges and, in addition to using half-
height 5%-inch drives, would employ a slightly dilferent clisk-controller architecture. Be-
cause ofthese differcnces from the standard Pc line, IBM'S immediate concern was lor a
version 2.1 olMS-DOS modified lor the new machine.
For the ionger term, IIIM was also planning a faster, more powerful PC with a 20-megabyte
fixcd disk. This prospect meant Microsoft nceded to look again at its file-management sys-
tem, because the larger storaEle capacity of the 20-megabyte disk stretched the sizc limita-
tions for the file allocation table as it worked in version 2 0
However, IBM's primary interest for the next major release of MS DOS was networking
Microsoft would have preferred to pursue multilasking as the next stage in the develop-
ment of MS-DOS, but IBM was aheady developing its IBM PC Network Adapter, a plug-in
card with an 80188 chip to handle communications so as soQn as version 2 0 was released,
the MS DOS team, again headed by Zbikowski and Reynolds, began work on a networking
version (3.0) of thc operating system.
Meanwhile...
The international market for MS-DOS was not significant in the first lew )€ars after thc
release of the IBM PC and version 1.0 of MS DOS IBM did not, at first, shiP its Personal
Computer to Europe, so Microsoft was on its os'n there in promoting MS DOS In 1982, thc
company gained a significant advantage over CP/M 85 in Europe by concluding an agree-
ment with Victor, a software company that was very successful in Europe and had already
licensecl cP/M-86. vorking closely with victor, Microsolt provided speciai development
support for its graphics adaptors and eventually convinced thc company to offcr its pro-
ducis only on MS DOS. InJapan, the most popular computers were 280 machines, and
given the country,s huEle installed base of 8$it machines, 16 bit computers wele not taking
hold. Mitsubishi, however, offered a 16-bit computer. CP/M-86 was Mitsubishi's
^lthough
original choice for an operating system, Microsoft helped get Multiplan and FORTRAN
running on the CPIM-86 system, and eventually won the manufacturer's support for
MS-DOS,
Inesistible
DOS 3.0
hln).t 4J vr.n tklv,{4t
ro ßt aa ri,üa;4 ,,t-"..,1
The fucent
Of DOS
MS-DOS 2.00: A
Hands-OnTütorial
In the software arena, by the time cle\€lopment was unclerway on the 2.x
releases of
MS-DOS, Microsoft's other customers were becoming more vocal about
their own needs.
Sevcral wanted a networking capability, adding weight to IBM,S request, but
a more urgent
need for many- a need nol shared by IBM at the time support for intcrnational
-wasof us Dos that
products. specifically, these manufacturers needed a versio''
could be soki
in other corintries a version of MS-DOS that could display messages in other
languages
and adapt to country-specific conventions, such as date and time fcxmats.
?1rd)rf MS-DOS 3 10
^',-r'r'
copyrieht r931,1935 Microsort Corp / NEc corpofiio^
iSani4j nri*.BqfE<f
;+*tl. , r 7 l. H:t'1lo NEcorc sYS <!
cc[ilaNo ,'!, 3. ]0
^'
f -1a at4^raiit)=-Ät{rL'li IAIAI RYL
^,
7iv?r)lt^:.{BtN
'F^D.^ c^r .a,-/ c{ a\<l l\ cclJ 0l B
'- lor(0o"
Yq
0? I :rt 'cv
i.nr :oi tr'ro :(, üt] ts -o/
n ßa7 l4btt Dtt
r6oaaso I L' l4rql"lhe" f,
)drt rlrr$"+}i
^,?t
R tn'rjl iq+M s Do s
38 '1
he rVS DOS Encyctope,tia
1983-1981
Version 3
The types of issues that began to emerge as Microsoft worked toward version 3 0, MS-DOS
for networks, exaggerated the problems of compatibility that had been encountered
before.
Version 3.0
All tolcl, the work on version 3.0 of MS-DOS proved to be long and clifficult. For ayear and
a half, Microsofi grappled with problcms of software incompatibility' remote fiie manage-
ment, and logical device independence at the network level Even so, whcn IBM was ready
to announce its new Pcrsonal Computer AT, the nelwork software for MS-DOS was not
quite ready, so in August 198'1, Microsoft released version 3.0 to TIIM without network
softwarc.
Versi()n 3.0 supported the AT's larger fixed disk, its new CMOS clock, and its high-capacity
1.2 megabyte lloppy disks. It also providcd the same internatiQnal support included eadier
in versions 2.01 and 2.11.'fhese featurcs q,'ere made availablc to Microsoft's other oEM
customcß as version 3.05.
f";ö
Yv
Roq
9L
Aaron Rqnaus's diagram of rcrsbn 3.O's nehoork sltpport, sketched out to enable
him k) add the-fail option
to Interrupt 24 and./ind al/ ptaces uhere existing parts
of MS-DOS uere affectetl. Eren after netu;rking haLl
become a realiry, Retnotds kept this diagram pinned to his alfice
ua// siiply because ,.rt uas sa much u.)rk
Röt^n
u'r^,- n r. 14-
F:r.r.
r .45 ri:alI
Jl-_/
i4 k1bö€ )
] o,o.r,.
c,rosE
I *un* t,.
j- I
( / / I'Jrt-tMrE ptt4E )
-.
ü€9..*."
1+ * Ad
-r
was composed of
to interact with the transport layer of the network The transport layer
the device drivers that could reiiably transfer data from one part of the network to another
newly designed low-level file VO code' the operating sys-
Just before a call was sent to the
tem determined whether the call was local & remote A local call
would be allowed to fall
which'
through to the local file I/O co<te; a remote call would be passed to the redirector
would make the resources on a remote machine
work;g with the of,erating system,
appear as if theY were local.
Version 3.L
card were in place
Both the redirector and the sharer interfaces for IBM's Network Adapter
itself wasn't ready Version
in version 3.0 when it was delivered to IBM, but the redirector
anti Reynolds and released th'ee months latel completed this
3.1, completed by Zbikowski
..i*ork atppoti made it available in the form of Microsoft Networks for use on non
"nd
IBM network cards.
" Services
Microsoft Networks was built on the concept of "services" and "consumers
application and ran on a
were provided by a file server, which was part ofthe Networks
programs on various network machines'
cornputer dedicated to the task Consumeß were
file server; it was then the
Requests for information were passed at a high levet to the
information on the disk.
responsibitity ofthe file serverio determine where to find the
need knowledge of the remote
The requesting programs-the consumers did not any
machine, not even what type offile system it had'
having to know the
This ability to pass a highJevel requesr to a remote server without
allowed another level of generalization ofthe system
detaits of the server's file structur;
file systems could be accessed on the same network lt
In MS-DOS 3.1, different types of
was possible, for ex"-pl.,io u XEND( machine across the network from an
"tctl"
data from XEND( files'
MS-DOS machine and to read
I
Yet the variability of the
Microsoft Networks was designed to be hardware independent
was maior problem in developing
classes of programs that would be using its structures
a
In evaluating this variability'
a networking-"system that would be transparent to the user'
Microsoft identified three types of programs:
a used only the documented
First were the MS-DOS-compatible programs These
requesting services from the operating system and
software-interrupt rnethod äf
would run on any MS DOS machine without problems'
a Second were the MS-DOS based programs These
would run on lBM-compatible
computers but not necessarily on all MS DOS machines'
. of MS-DOS orthat
Third were the programs th;used undocumentecl features
directly These programs tended to have the best perfor-
adclressed the hardware
mance but were also the most difficult to support
Network concerns
The file-access module was changed in vc.sion 3.0 to simplifv fiie management on the
network' but this did not solve arl the probrems. For instance. \rS-DoS still needed to han-
dle FCB requests from programs thar used rhem. but manr- programs *,ould open an FCB
and never close it. one ofthe functions ofrhe server q'as to keep track ofall opren files
on the network, and it ran into difficurties s'hen an FcB was opened 50 or 100iimes ancl
never closed. To solve this problem, Microsoft introduced an FCB cache in version 3.1 that
allowed only four FCBs to be open at any one time. Ifa fifth FCB was opened, the least re,
cently used one was closed automatically and released. In addition, an FCBS command
was added in the CONFIG.SYS file to allow the user or network manager to change the
maximum number ofFCBs that could be open at any one time and to protect some ofthe
FCBs from automatic closure.
In general, the logical device independence that had been a goal of MS_DOS acquired new
meaning-and generated new problems-with networking. One problem concerned
printers on the network. Commonly, networks are used to allow several people to share a
pdnter. The netü,ork could easily accommodate a program that woulcl open the printer,
write to it, and close it again. Some programs, howevel woulcl try to use the dire;t IBM
BIOS interface to access the printer. To handle this situation, Microsoft,s designers had to
develop a way for MS DOS to intercept these BIOS requests and filter out the ones the
server could not handle. Once this was accomplished, version 3.1was able to hanclle most
types of printer output on the network in a transparent manner.
Version J.2
InJanuary 1986, Microsofr released another revision of MS-DOS, version 1.2, which
supported 372-inch floppy disks. Version 3.2 also moved the formarting funcrion for a
device out ofthe FORMAT utility routine and into the device driver, eliminating the need
for a special hardwaredependent program in addition to the device driver. It included a
sample installable block-device driver and, finally, benefited the users and manufacturers
of IBM-compatible computers by including maior rewrires of the MS-DOS utilities to
increase compatibiliry with those of IBM.
The Future
Since its appearance in 1981, MS-DOS has taken and held an enviable position in the
microcomputer environment. Not only has it "taught" millions of personal computers
"ho$/ to think," it has taught equal millions of people how to use computers Many highly
sophisticated computer users can trace their first encounter with these machines to the
oiginal IBM PC and version 1.0 of MS-DOS. The MS-DOS command interface is the one
with which they are comfortable and it is the MS-DOS file structure that, in one way or
anothet they wander through with familiarity
Microsoft has stated its commitment to ensuring that. for the foreseeable future, MS-DOS
will continue to evolve and grov, changing as it has done in the past to satisfy the needs of
its millions of users. In the long term, MS DoS, the product of a surprisingly small group of
gifted people, will undoubtedly remain the industry standard for as long as 8086-based
(and to some extent, 80286-based) microcomputers exist in the business world The story
of MS-DOS will, of course, remain even longer' For this operating system has earned its
place in microcomputing history.
JoAnrLe Woodcoch