• Videojuegos Retro
soloretro
Breve historia del Sistema Operativo CP/M

Breve historia del Sistema Operativo CP/M

  • 25 de noviembre de 2021

El CP/M (Control Program for Microcomputer), está considerado como el primer Sistema Operativo moderno para microordenadores de 8 bits.

La historia del CP/M está fuertemente ligada a la de su creador Gary Kildall, consultor de software de Intel y profesor de Ciencias de la Computación en la Naval Postgraduate School de Monterey.

En 1973 Kildall, atraído por el nuevo i8080 (lanzado oficialmente al mercado en 1974), decidió aprender a programar en el lenguaje Intel PL/M (Lenguaje de programación para microprocesadores), que era uno de los más utilizados de la época. El problema es que Kildall no tenía acceso a un ordenador compatible con el procesador i8080 de Intel y, para suplir esta falta, decidió desarrollar un simulador (escrito en Fortran) para el DEC PDP-10. De esto modo esperaba tener un ordenador 8080 real para probar y lanzar su producto. El simulador también requería desarrollar un sistema de control para controlar su funcionamiento: así nació la base del futuro CP/M (Programa de Control / Monitor).

El trabajo de Kildall llamó la atención Intel y le proporcionño un verdadero sistema de desarrollo basado en 8080 (Intellec-8) para que pudiera continuar con su investigación. Kildall continuó desarrollando nuevas rutinas que daban acceso al disquete Shugart de 8, rutinas de gestión de memoria, poco a poco y sin darse cuenta estaba dando forma a un Sistema Operativo. Con el proyecto ya muy avanzado, Kildall decidió darle forma a todo aquello y entonces nació CP/M como sistema operativo real.

La interconexión con la disquetera y una serie componentes de terceros, se realizó gracias a John Torode. Una vez acabado, el sistema operativo funciona muy bien, tanto que Kildall propuso el CP/M a Intel como sistema operativo principal para sus productos. Sin embargo, Intel mostró poco interés, en virtud del hecho de que entre el 73 y el 74 los microordenadores aún no eran un verdadero negocio. Además, Intel ya había gastado enormes recursos en su sistema operativo ISIS.

De hecho, en 1975, varios fabricantes MITS (Altair), IMSAI, Polymorphic y Processor Technology comenzaron a comercializar microordenadores para aficionados. Inicialmente, estos sistemas integraban una versión personalizada de MS BASIC como única interfaz operativa.

La expansión de los microordenadores fue tal que fabricantes como NorthStar, Vector Graphic y Cromemco comenzaron a lanzar periféricos para sistemas compatibles con el bus S-100 (Altair e IMSAI en particular).

Todas estas opciones empujaban a los fabricantes a buscar un sistema operativo independiente, tanto desde el punto de vista funcional como de la actualización necesaria para soportar las continuas innovaciones introducidas en el mercado. La solución la tenía Kindall, su sistema operativo CP/M. Kindall (impulsado por su esposa Dorothy McEwen) creo la empresa Intergalactic Digital Research Inc. para vender CP/M a 70 dólares por licencia.

En el caso del IMSAI-8080, el CP/M fue un factor muy importante para aumentar las ventas. Inicialmente el microordenador se vendía sin el sistema operativo ya que el precio era muy caro. Así, en 1977, Seymour I. Rubinstein (director comercial de la empresa) compró los derechos no exclusivos de CP/M (1.3) por 25.000 dólares, posteriormente ampliados y revisados bajo el nombre de IMDOS. IMSAI se convierte así en la primera empresa en licenciar el sistema operativo de Kildall.

Consciente de la necesidad de tener un sistema operativo "adaptable" a varios tipos de hardware, Kildall presenta una nueva arquitectura integrando el chip BIOS (Sistema Básico de Entrada-Salida), típicamente una ROM que contiene las rutinas básicas para acceder al hardware y periféricos.

Pero el éxito del CP/M pasa también por dos elementos más: la posibilidad de crear software sin preocuparse por la gestión directa del hardware, y la distribución de los mismos en medios estándar (floppy) utilizables, idealmente, en cualquier ordenador con el CP/M instalado. Esto lleva al nacimiento de CBasic (evolución del primer EBasic), de Microsoft Basic para CP/M y de una serie de compiladores para lenguajes Assemby.