MS-DOS es sin duda uno de los sistemas operativos más icónicos del pasado, con una respetable base de programas diseñados para correr con su soporte, entre ellos aclamados videojuegos clásicos; la historia de su desarrollo, iniciada en octubre de 1980, nos muestra también cómo una empresa como Microsoft, en ese entonces todavía pequeña, logró imponerse frente a otras más poderosas y mejor posicionadas.
En ese año de 1980 la corporación IBM estaba buscando un sistema operativo para su todavía no liberada IBM PC modelo 5150; contrario a su costumbre IBM había decidido desarrollar la PC usando componentes de terceros y eso incluía también su software.
La causa de lo anterior era práctica, en IBM estaban acostumbrados a ciclos largos de desarrollo, lo cual estaba bien para sus mainframes y minicomputadoras, pero cuando se decidió entrar en el mercado de las microcomputadoras, en la corporación se percataron de que era un entorno mucho más dinámico. Por eso en IBM habían decidido desde un comienzo basar su desarrollo en los componentes de terceros disponibles en el mercado, si bien mientras todo el hardware estaba disponible en ese instante, no sucedía lo mismo con todo el software necesario.
Por consiguiente, Microsoft fue visitada por una delegación de IBM interesada en recabar información sobre la posibilidad de obtener un BASIC basado en ROM para su criatura. El BASIC de Microsoft se usaba en muchos sistemas distintos por entonces, e IBM pensaba en introducirlo también en su propia PC. En ese momento la idea de IBM todavía era producir una microcomputadora basada en un microprocesador de 8 bits como era la norma de la época.
Microsoft se mostró dispuesta a desarrollar una versión de BASIC para la computadora de IBM lo cual era su negocio, no obstante, propuso a IBM desarrollar la PC usando un microprocesador de 16 bits como el más reciente Intel 8086, dado veía como el futuro a la plataforma de 16 bits.
En cuanto a su sistema operativo, la primera opción de IBM naturalmente era CP/M-86, la aún no disponible versión de 16 bits de Digital Research CP/M, tal como en la misma Microsoft le recomendaron. CP/M había sido desarrollado para hardware de 8 bits con los microprocesadores 8080 de Intel o el Z-80 de Zilog, y se había convertido en un estándar de la industria con una importante base de software para esa época, con programas como WordStar, Visicalc o más tarde dBase II. Por eso era de suponer que las aplicaciones desarrolladas para CP/M podrían ser más fácilmente portadas a CP/M-86 con lo cual se dispondría en la IBM PC de todo ese software bastante usado casi desde los primeros momentos de su salida al mercado.
Microsoft como es conocido no se dedicaba a desarrollar sistemas operativos, ni tenía en venta otra cosa parecida además de su BASIC standalone. La empresa se dedicaba a crear compiladores y otras herramientas y aplicaciones para venderlas a otros proveedores y empresas. Pero no obstante esto había desarrollado un sistema operativo para microprocesador 8080 de 8 bits conocido como M-DOS del cual nunca se supo porque con sus 30 KB resultó ser demasiado grande.
Digital Research tuvo por consiguiente la oportunidad de su vida con una IBM interesada en su sistema operativo, y evidentemente no supo aprovechar la situación, como suele pasar con algunas empresas cuando han logrado una cierta posición y se sienten seguras.
IBM y Digital Research no pudieron ponerse de acuerdo, y el sistema operativo de 16 bits CP/M-86 se demoró demasiado en estar disponible.
En tanto, IBM no era tampoco la única empresa buscando un sistema operativo, otra empresa nombrada Seattle Computer Products también necesitaba uno desde antes para su propia línea de computadoras de 16 bits con bus S-100 (introducido por la Altair 8800) y un microprocesador 8086.
La demora de Digital Research decidió a Tim Paterson, uno de los ingenieros de Seattle Computer Products por esa fecha de 24 años de edad, a subirse las mangas de su camisa y además del hardware también comenzar a desarrollar desde cero un sistema operativo de 16 bits compatible con CP/M tanto por su forma de operación como a nivel de llamadas al sistema.
El sistema desarrollado por Tim Paterson se denominó inicialmente QDos (Quick and Dirty Operating System), o también 86-DOS como se lo bautizó después, y no estaba pensado para correr en una IBM PC dado esta no existía en ese instante en el mercado.
Seattle Computer Products comercializó 86-DOS como un sistema operativo propietario para su línea de computadoras con bus S-100, no obstante, ese hecho de ser propietario no motivó a los fabricantes de hardware competidores a usarlo en sus propias computadoras y no tuvo gran impacto.
Microsoft no tardó en darse cuenta de la oportunidad de participar, dado necesitaba conocer los detalles del sistema operativo a usar por IBM para desarrollar los compiladores para éste y la demora de CP/M-86 los afectaba, y como una compañía creciente y decidida a imponerse, olfateó las ventajas de agregar a su cartera de productos un sistema operativo propio para microcomputadoras de 16 bits.
Así fue como Microsoft hizo contacto con Seattle Computer Products para conseguir la licencia del sistema desarrollado por Tim Paterson, denominado como hemos visto 86-DOS, y después de hacerle algunas adecuaciones deprisa se lo presentó a IBM para evaluación como Microsoft Disk Operating System 1.0.
IBM llegó a un acuerdo con Microsoft para usar MS-DOS con el nombre de IBM PC-DOS 1.0 como el principal sistema operativo para la IBM PC, si bien no descartaba a otros desarrollos como Digital Research CP/M-86 y P-system de Softech; y Microsoft compró los derechos de 86-DOS a Seattle Computer Products en julio de 1981 y se llevó también a Tim Paterson a su empresa.
IBM también sometió MS-DOS 1.0 a un extenso conjunto de pruebas para asegurar su calidad antes de sacarlo con la IBM PC modelo 5150, y se dice se encontró por lo menos con 300 bugs a arreglar, con lo cual decidió reescribir una buena parte de éste y por eso PC-DOS es licenciado por ambas compañías.
Por fin en octubre de 1981 IBM PC-DOS 1.0 estuvo disponible junto a la IBM PC modelo 5150 y dicha microcomputadora pronto se convirtió en un éxito sobrepasando las ventas esperadas en IBM, o por lo menos en el mercado de los negocios dado en el doméstico fue un fracaso de ventas, si bien ese fracaso no tomó por sorpresa a IBM donde los directivos principales no tenían demasiada confianza hasta ese momento en un éxito de una computadora en los hogares.
En lo adelante las distintas versiones de MS-DOS se fueron mejorando y ganaron popularidad y ese sistema llegó a convertirse en uno de los sistemas operativos más usados de la historia.
¿Qué hizo posible a Microsoft tener éxito con su sistema operativo dado con la IBM PC también se ofrecía CP/M-86 y P-system?
En un primer momento Microsoft no era una empresa grande e importante como se ha dicho, no podía influir demasiado con sus deseos más allá de cierto punto negociando con sus compiladores, sin embargo, como IBM PC-DOS 1.0 fue ofrecido por la propia IBM, una empresa con prestigio y la encargada del hardware, eso fue de gran ayuda por lo menos para dar a conocer MS-DOS.
El hecho anterior no lo es todo y MS-DOS 1.0 también estaba disponible a un precio más reducido en comparación con los precios de sus competidores CP/M-86 y P-system; y encima de eso era compatible con CP/M y poseía algunas características técnicas más avanzadas que CP/M-86 por esa fecha.
En particular podemos mencionar la velocidad de acceso a discos, porque su sistema de archivos denominado FAT resultó ser mucho más rápido en operación cuando se trataba de archivos un poco grandes, y la capacidad de MS-DOS 2.0 de adaptarse fácilmente a todo hardware por medio de controladores de dispositivos instalables.
En todo caso, en los primeros años después de su lanzamiento, MS-DOS no fue una gran fuente de ingresos para Microsoft, como sucedió más adelante cuando se convirtió en el sistema preferido de los desarrolladores de software para las IBM PC y compatibles con una base de más de 10 millones de usuarios. La empresa debió luchar bastante duro con la competencia dado en los primeros meses muchos desarrolladores esperaron por la salida de CP/M-86 porque pensaron que sería más fácil portar a éste sus programas hechos para CP/M. Pero la práctica finalmente no confirmó las esperanzas de los desarrolladores que pronto descubrieron que contrario a sus pronósticos no era más fácil portar los programas de CP/M a CP/M-86 que portarlos de CP/M a MS-DOS.
Por otro lado, Microsoft era el proveedor de las herramientas de desarrollo, y eso le daba ventaja a su sistema de una forma o de otra.
