CP/M

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda


CP/M (Control Program for Microcomputers) fue un sistema operativo de un solo usuario/Una sola tarea desarrollado por Gary Kildall para el microprocesador Intel 8080 (los Intel 8085 y Zilog Z80 podían ejecutar directamente el código del 8080, aunque lo normal era que se entregara el código recompilado para el microprocesador de la máquina). Se trataba del sistema operativo más popular entre las computadoras personales en los años 70. Aunque fue modificado para ejecutarse en un IBM PC, el hecho que IBM eligiera MS-DOS, al fracasar las negociaciones con Digital Research, hizo que el uso de CP/M disminuyera hasta hacerlo desaparecer. CP/M originalmente significaba Control Program/Monitor. Más tarde fue renombrado a Control Program for Microcomputers. En la época, la barra inclinada (/) tenía el significado de "diseñado para". No obstante, Gary Kildall redefinió el significado del acrónimo poco después. CP/M se convirtió en un estándar de industria para los primeros micro-ordenadores.

Historia[editar]

CP/M comenzó como un proyecto de Gary Kildall alrededor de 1975. En 1977, su autor decidió llevar su sistema operativo al terreno comercial. Así, Kildall fundó la compañía Intergalactic Digital Research, Inc que hoy se conoce como Digital Research Corporation. En este momento Kildall redefinió el significado del acrónimo por Control Program for Microcomputers, es decir, Programa de control para micro-ordenadores. Esta decisión fue meramente comercial ya que todo lo que sonara a "micro" estaba de moda en la época. El sistema operativo se distribuía originalmente en disquetes de ocho pulgadas para la familia de microprocesadores Intel 8080, que también era compatible con el microprocesador Zilog Z80 (muy popular en aquellos tiempos). Desde entonces, CP/M fue adaptándose con bastante éxito a la evolución del hardware. Dicha evolución no era lo vertiginosa que es hoy día. Pronto se convirtió en el sistema operativo de elección en cientos de micro-ordenadores. Los primeros programas de uso personal, el procesador de texto WordStar y la base de datos dBase, fueron originalmente escritos para CP/M. Con la llegada de los primeros microprocesadores de 16 bits, CP/M tuvo que sufrir una completa adaptación, abandonando la compatibilidad con los anteriores microprocesadores de 8 bits. Por este motivo, CP/M para 16 bits se denomina familia CP/M-86, y CP/M para 8 bits como familia CP/M-80. Consta de CP/M-86 para microprocesadores Intel 8086, CP/M-68k para microprocesadores Motorola 68000, así como versiones para Zilog Z8000. Se desarrollaron versiones multitarea y multiusuario, tales como MP/M, también para 8 y 16 bits.

Controversia frente a MS-DOS[editar]

Ya en los años 1980 los micro-ordenadores cayeron en popularidad a favor de los ordenadores personales de 16 bits. CP/M estuvo a punto de convertirse en el sistema operativo para estas máquinas. De hecho, IBM ofertaba tanto CP/M como el sistema operativo MS-DOS para su IBM PC. Éste se basaba parcialmente en el propio CP/M. Sin embargo, la política de precios y de distribución perjudicó a CP/M en favor de MS-DOS. En muy poco tiempo MS-DOS se impuso entre los usuarios en detrimento de CP/M. La última versión de CP/M-86 logró importantes mejoras en términos de rendimiento y facilidad de uso. Dada su similitud con MS-DOS cambió su nombre por DOS Plus. Lo que finalmente llevaría a Digital Research a la creación de DR-DOS, un clon de MS-DOS. El escritor y periodista Sir Harold Evans publicó un libro titulado "They Made America: From the Steam Engine to the Search Engine: Two Centuries of Innovators" donde afirma que Kildall fue el verdadero cerebro detrás de ambos sistemas operativos, ya que, en su opinión, Tim Paterson copió las ideas de CP/M en QDOS, sistema operativo que se convertiría en MS-DOS tras su venta a Bill Gates. Tim Paterson demandó al periodista y a su editorial por tales afirmaciones. En 2007, el tribunal falló a favor de Harold Evans reconociendo la "paternidad" de Gary Kildall.[1]

Características[editar]

El éxito de CP/M se debió a dos características fundamentales: portabilidad y diseño.

Portabilidad[editar]

CP/M permitía que diferentes programas interactuaran con el hardware de una manera estandarizada. Esta característica, evidente hoy día en un sistema operativo, no lo era tanto en aquel momento. Los programas escritos en CP/M eran portables a cualquier micro-ordenador aún con microprocesadores distintos (exceptuando programas que utilizaban el conjunto de instrucciones extendido del Z80). El único requisito era la utilización correcta de las secuencias de escape para pantalla e impresora.

Diseño[editar]

CP/M presentaba un innovador diseño modular compuesto por tres subsistemas:

  • CCP (command control processor, estándar)
  • BDOS (basic disk operating system, estándar)
  • BIOS (basic input/output system, dependiente de la máquina)

CCP es un intérprete de comandos que permitía introducir mandatos y sus parámetros separados por espacios. Unos pocos de estos mandatos eran internos al propio CCP. Pero si el mandato no era reconocido, se buscaba un programa con el mismo nombre en el directorio actual del disco.

CCP permitía traducir los mandatos de usuario en un conjunto de instrucciones de alto nivel destinadas a BDOS. Asimismo, los programas podían comunicarse con BDOS para realizar tareas abstractas tales como "abrir fichero". En aquellos años este tipo de abstracción era toda una novedad. Posteriormente, BDOS traducía dichas instrucciones en llamadas a la BIOS de la computadora.

La mayoría de la complejidad de CP/M se encontraba oculta en BDOS. De esta manera, bastaban unas pocas adaptaciones en la BIOS para que una computadora pudiera utilizar CP/M. El esfuerzo necesario para soportar nuevas máquinas era muy pequeño, lo que contribuyó al éxito de este sistema operativo.

Micro-ordenadores[editar]

Existen cientos de micro-ordenadores que han utilizado CP/M. A continuación se mencionan los más importantes desde el punto de vista histórico:

Referencias[editar]