CP/M

De MadriSX wiki
Revisión del 23:46 20 nov 2006 de Museo8bits (discusión | contribs.)
(difs.) ← Revisión anterior | Revisión actual (difs.) | Revisión siguiente → (difs.)
Ir a la navegaciónIr a la búsqueda

CP/M (Control Program/Monitor) es un sistema operativo desarrollado por Gary Kildall para el microprocesador 8080/85 de Intel y el Zilog Z80. Se trata del sistema operativo más popular entre las computadoras personales en los años 1970. Aunque fue modificado para correr en un IBM PC, el hecho que IBM eligiera MS-DOS, al fracasar las negociaciones con la desarrolladora del software, hizo que el uso de CP/M disminuyera hasta hacerlo desaparecer.

El acrónimo CP/M significa Control Program for Monitor, es decir, Programa de control para el monitor. En la época, la barra inclinada (/) tenía esta acepción 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

CP/M comenzó como un proyecto personal de Gary Kildall alrededor de 1974. En 1976, 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 distribuyó 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 adaptación, naturalmente, abandonando la compatibilidad con los anteriores microprocesadores de 8 bits. Por este motivo, CP/M para 16 bits se denomina familia CP/M-80. Consta de CP/M-86 para microprocesadores Intel 8086 y CP/M-68k para microprocesadores Motorola 68000.

Ya en los años 1980 los micro-ordenadores cayeron en popularidad a favor de los ordenadores personales. CP/M estuvo a punto de convertirse en el sistema operativo para estas máquinas. Sin embargo, una minucia legal hizo que IBM se decantara finalmente por el sistema operativo MS-DOS. Éste se basaba parcialmente en el propio CP/M. 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 eventualmente llevaría a Digital Research a la creación de DR-DOS, un clon de MS-DOS.

Características

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

Portabilidad

CP/M permitía que diferentes programas interactuasen 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 juego de instrucciones extendido del Z80). El único requisito era la utilización correcta de las secuencias de escape para pantalla e impresora.

Diseño

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

  • CCP (Command Control Processor).
  • BDOS (Basic Disk Operating System).

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. Así mismo, 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 (Basic Input/Output System) 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

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:

Atribución

Este artículo proviene originalmente de Wikipedia y por ello no sigue la licencia general del site, sino la

GNU head GFDL: Se autoriza la copia, la distribución y la modificación de este documento bajo los términos de la licencia de documentación libre GNU, versión 1.2 o cualquier otra que posteriormente publique la Fundación del Software Libre (Free Software Fundation); sin secciones invariables (Unvariant Sections), textos de portada (Front-Cover Texts), ni textos de contraportada (Back-Cover Texts).

Se incluye una copia en inglés de esta licencia en el artículo "GNU Free Documentation License".