De Wikipedia, la enciclopedia libre
  (Redirigido desde el procesador de comandos de la consola )
Saltar a navegación Saltar a búsqueda

CP / M , [3] originalmente de pie para Programa de Control / Monitor [4] y más tarde programa de control para microordenadores , [5] [6] [7] es un mercado de masas sistema operativo creado en 1974 para 8080 de Intel / 85 basada microcomputadoras por Gary Kildall de Digital Research, Inc. Inicialmente confinadas a una sola tarea en procesadores de 8 bits y no más de 64 kilobytes de memoria, las versiones posteriores de CP / M agregaron variaciones multiusuario y se migraron a procesadores de 16 bits .

La combinación de computadoras de bus CP / M y S-100 fue modelada libremente en el MITS Altair , uno de los primeros estándares en la industria de las microcomputadoras. Esta plataforma informática fue ampliamente utilizada en los negocios hasta finales de la década de 1970 y hasta mediados de la de 1980. [8] CP / M aumentó el tamaño del mercado tanto para hardware como para software al reducir en gran medida la cantidad de programación necesaria para instalar una aplicación en la computadora de un nuevo fabricante. [9] [10] Un importante impulsor de la innovación de software fue el advenimiento de microcomputadoras (comparativamente) de bajo costo que ejecutan CP / M, ya que programadores independientes y piratas informáticos las compraron y compartieron sus creaciones en grupos de usuarios . [11]CP / M fue reemplazado por DOS poco después de la introducción en 1981 de IBM PC .

Modelo de hardware [ editar ]

Computadora Sanco 8001, bajo CP / M 2.2 (1982).
Cartucho CP / M para el Commodore 64 .

Un sistema CP / M mínimo de 8 bits contendría los siguientes componentes:

  • Una terminal de computadora que usa el juego de caracteres ASCII
  • Un procesador Intel 8080 (y más tarde, el 8085) o Zilog Z80 microprocesador
    • Los procesadores NEC V20 y V30 admiten un modo de emulación 8080 que puede ejecutar CP / M de 8 bits en una computadora PC DOS / MS-DOS así equipada, aunque cualquier PC también puede ejecutar el CP / M-86 de 16 bits. [12] [13]
  • Al menos 16 kilobytes de RAM , comenzando en la dirección 0
  • Un medio para arrancar el primer sector del disquete
  • Al menos un disquete unidad

El único sistema de hardware que CP / M, vendido por Digital Research, admitiría fue el Intel 8080 Development System. Los fabricantes de sistemas compatibles con CP / M personalizaron partes del sistema operativo para su propia combinación de memoria instalada, unidades de disco y dispositivos de consola. CP / M también se ejecutaría en sistemas basados ​​en el procesador Zilog Z80 ya que el Z80 era compatible con el código 8080. Si bien el núcleo distribuido de Digital Research de CP / M (BDOS, CCP, comandos transitorios centrales) no usó ninguna de las instrucciones específicas de Z80, muchos sistemas basados ​​en Z80 usaron código Z80 en el BIOS específico del sistema, y ​​muchas aplicaciones fueron dedicadas a máquinas CP / M basadas en Z80.

En la mayoría de las máquinas, el bootstrap era un gestor de arranque mínimo en ROM combinado con algunos medios de cambio de banco mínimo o un medio para inyectar código en el bus (ya que el 8080 necesita ver el código de arranque en la Dirección 0 para el inicio, mientras que CP / M necesita RAM allí); para otros, este bootstrap tenía que introducirse en la memoria utilizando los controles del panel frontal cada vez que se iniciaba el sistema.

CP / M utilizó el conjunto ASCII de 7 bits. Los otros 128 caracteres posibles gracias al byte de 8 bits no estaban estandarizados. Por ejemplo, un Kaypro los usó para caracteres griegos, y las máquinas Osborne usaron el octavo conjunto de bits para indicar un carácter subrayado. WordStar utilizó el octavo bit como marcador de fin de palabra. Los sistemas CP / M internacionales utilizaron más comúnmente la norma ISO 646 para juegos de caracteres localizados, reemplazando ciertos caracteres ASCII con caracteres localizados en lugar de agregarlos más allá del límite de 7 bits.

Componentes del sistema operativo [ editar ]

En las versiones de 8 bits, mientras se ejecutaba, el sistema operativo CP / M cargado en la memoria tenía tres componentes: [3]

  • Sistema básico de entrada / salida (BIOS),
  • Sistema operativo de disco básico (BDOS),
  • Procesador de comandos de consola (CCP).

El BIOS y el BDOS residían en la memoria, mientras que el CCP residía en la memoria a menos que una aplicación lo sobrescribiera, en cuyo caso se recargaba automáticamente una vez que la aplicación terminaba de ejecutarse. También se proporcionaron varios comandos transitorios para utilidades estándar. Los comandos transitorios residían en archivos con la extensión .COM en el disco.

El BIOS controlaba directamente los componentes de hardware distintos de la CPU y la memoria principal. Contenía funciones como la entrada y salida de caracteres y la lectura y escritura de sectores del disco. El BDOS implementó el sistema de archivos CP / M y algunas abstracciones de entrada / salida (como la redirección) en la parte superior del BIOS. El CCP tomó los comandos del usuario y los ejecutó directamente (comandos internos como DIR para mostrar un directorio o ERA para eliminar un archivo) o cargó e inició un archivo ejecutable con el nombre dado (comandos transitorios como PIP.COM para copiar archivos o STAT.COM para mostrar varios archivos y información del sistema). Las aplicaciones de terceros para CP / M también eran esencialmente comandos transitorios.

Los comandos BDOS, CCP y transitorios estándar eran (idealmente) los mismos en todas las instalaciones de una revisión particular de CP / M, pero la parte del BIOS siempre se adaptó al hardware en particular. Agregar memoria a una computadora, por ejemplo, significó que el sistema CP / M tuvo que ser reinstalado con un BIOS actualizado capaz de abordar la memoria adicional. Se proporcionó una utilidad para parchear el BIOS, BDOS y CCP suministrados para permitir que se ejecuten desde una memoria superior. Una vez instalado, el sistema operativo (BIOS, BDOS y CCP) se almacenaba en áreas reservadas al comienzo de cualquier disco que se usaría para iniciar el sistema. Al iniciarse, el cargador de arranque (normalmente contenido en un chip de firmware ROM) cargaría el sistema operativo desde el disco en la unidad A:.

Según los estándares modernos, CP / M era primitivo, debido a las limitaciones extremas en el tamaño del programa. Con la versión 1.0 no existía ninguna disposición para detectar un disco cambiado. Si un usuario cambia de disco sin volver a leer manualmente el directorio del disco, el sistema escribiría en el nuevo disco utilizando la información del directorio del disco anterior, arruinando los datos almacenados en el disco. Desde la versión 1.1 o 1.2 en adelante, cambiar un disco y luego intentar escribir en él antes de que se lea su directorio provocaría la señalización de un error fatal. Esto evitó sobrescribir el disco, pero requirió un reinicio y la pérdida de los datos que se iban a almacenar en el disco.

La mayor parte de la complejidad en CP / M se aisló en el BDOS y, en menor medida, en el CCP y los comandos transitorios. Esto significaba que al transferir el número limitado de rutinas simples en el BIOS a una plataforma de hardware en particular, todo el sistema operativo funcionaría. Esto redujo significativamente el tiempo de desarrollo necesario para admitir nuevas máquinas y fue una de las principales razones del uso generalizado de CP / M. Hoy en día, este tipo de abstracción es común a la mayoría de los sistemas operativos (una capa de abstracción de hardware ), pero en el momento del nacimiento de CP / M, los sistemas operativos generalmente estaban destinados a ejecutarse en una sola plataforma de máquina y los diseños multicapa se consideraban innecesarios.

Procesador de comandos de consola [ editar ]

Captura de pantalla que muestra una lista de directorios CP / M 3.0 usando el DIRcomando en una computadora doméstica Commodore 128 .

El procesador de comandos de la consola, o CCP, aceptó la entrada del teclado y transmitió los resultados al terminal. El propio CP / M funcionaría con un terminal de impresión o con un terminal de video. Todos los comandos de CP / M debían escribirse en la línea de comandos . La consola mostraría con mayor frecuencia el A>mensaje para indicar la unidad de disco predeterminada actual. Cuando se usa con un terminal de video, esto generalmente iría seguido por un cursor parpadeante proporcionado por el terminal. El PCCh esperaría la entrada del usuario.

Se puede utilizar un comando interno de CCP, con el formato de letra de unidad seguida de dos puntos, para seleccionar la unidad predeterminada. Por ejemplo, escribir B:y presionar enter en el símbolo del sistema cambiaría la unidad predeterminada a B, y el símbolo del sistema pasaría B>a indicar este cambio.

La interfaz de línea de comandos de CP / M se diseñó siguiendo el modelo de los sistemas operativos de Digital Equipment , como RT-11 para el PDP-11 y OS / 8 para el PDP-8 .

Los comandos tomaban la forma de una palabra clave seguida de una lista de parámetros separados por espacios o caracteres especiales. Al igual que en un shell integrado de Unix , si se reconocía un comando interno, el mismo CCP lo ejecutaba. De lo contrario, intentaría encontrar un archivo ejecutable en la unidad de disco actualmente registrada y (en versiones posteriores) en el área de usuario, cargarlo y pasarle cualquier parámetro adicional desde la línea de comando. Estos se denominaron programas "transitorios". Al finalizar, CP / M volvería a cargar la parte del CCP que había sido sobrescrita por los programas de aplicación, lo que permitía a los programas transitorios un mayor espacio de memoria.

Los comandos en sí mismos a veces pueden ser oscuros. Por ejemplo, el comando para duplicar archivos se denominó PIP(Peripheral-Interchange-Program), el nombre de la antigua utilidad DEC utilizada para ese propósito. El formato de los parámetros dados a un programa no estaba estandarizado, por lo que no había un carácter de opción único que diferenciara las opciones de los nombres de archivo. Diferentes programas podían usar y usaban diferentes caracteres.

Comandos [ editar ]

El procesador de comandos de la consola CP / M admite la siguiente lista de comandos integrados : [14]

  • DIR
  • ERA
  • REN
  • AHORRAR
  • TIPO
  • USUARIO

Los comandos transitorios en CP / M incluyen: [14]

  • ASM
  • DDT
  • VERTEDERO
  • ED
  • CARGA
  • MOVCPM  [ pl ]
  • PEPITA
  • ESTADÍSTICA
  • ENVIAR
  • SYSGEN

CP / M Plus (CP / M Versión 3) incluye los siguientes comandos integrados: [15]

  • DIR: muestra la lista de archivos de un directorio, excepto los marcados con el atributo SYS
  • DIRSYS / DIRS : lista de archivos marcados con el atributo SYS en el directorio
  • BORRAR / ERA - eliminar un archivo
  • RENAME / REN - cambiar el nombre de un archivo
  • TYPE / TYP : muestra el contenido de un archivo de caracteres ASCII
  • USUARIO / USO - cambiar el número de usuario

CP / M 3 permite al usuario abreviar los comandos integrados. [dieciséis]

Los comandos transitorios en CP / M 3 incluyen: [16]

  • COPYSYS
  • FECHA
  • DISPOSITIVO
  • VERTEDERO
  • ED
  • OBTENER
  • AYUDA
  • HEXCOM
  • INITDIR
  • ENLACE
  • MAC
  • PEPITA
  • PONER
  • RMAC
  • COLOCAR
  • SETDEF
  • SHOW
  • SID
  • ENVIAR
  • XREF

Sistema operativo de disco básico [ editar ]

El sistema operativo de disco básico, [17] [18] o BDOS, [17] [18] proporcionaba acceso a operaciones como abrir un archivo, enviarlo a la consola o imprimir. Los programas de aplicación cargarían los registros del procesador con un código de función para la operación y direcciones para los parámetros o búferes de memoria, y llamarían a una dirección fija en la memoria. Dado que la dirección era la misma independientemente de la cantidad de memoria en el sistema, los programas de aplicación se ejecutarían de la misma manera para cualquier tipo o configuración de hardware.

Sistema básico de entrada y salida [ editar ]

Anuncio de CP / M en el número del 11 de diciembre de 1978, de la revista InfoWorld

El sistema básico de entrada y salida, [17] [18] o BIOS, [17] [18] proporcionaba las funciones de nivel más bajo requeridas por el sistema operativo.

Estos incluían leer o escribir caracteres individuales en la consola del sistema y leer o escribir un sector de datos del disco. El BDOS manejaba parte del almacenamiento en búfer de datos del disquete, pero antes de CP / M 3.0 asumía un tamaño de sector de disco fijo en 128 bytes, como se usa en disquetes de 8 pulgadas de densidad única . Dado que la mayoría de los formatos de disco de 5,25 pulgadas usaban sectores más grandes, el bloqueo y desbloqueo y la gestión de un área de búfer de disco se manejaba mediante un código específico del modelo en el BIOS.

La personalización era necesaria porque las opciones de hardware no estaban limitadas por la compatibilidad con ningún estándar popular. Por ejemplo, algunos fabricantes utilizaron una terminal de computadora separada, mientras que otros diseñaron un sistema de visualización de video integrado incorporado. Los puertos seriales para impresoras y módems pueden usar diferentes tipos de UARTlos chips y las direcciones de los puertos no se corrigieron. Algunas máquinas usaban E / S mapeadas en memoria en lugar del espacio de direcciones de E / S 8080. Todas estas variaciones en el hardware se ocultaron a otros módulos del sistema mediante el uso del BIOS, que utilizaba puntos de entrada estándar para los servicios necesarios para ejecutar CP / M, como E / S de caracteres o acceder a un bloque de disco. Dado que el soporte para la comunicación en serie a un módem era muy rudimentario en el BIOS o puede haber estado ausente por completo, era una práctica común que los programas CP / M que usaban módems tuvieran una superposición instalada por el usuario que contenía todo el código necesario para acceder a la computadora de una máquina en particular. Puerto serial.

Sistema de archivos [ editar ]

Los nombres de archivo se especificaron como una cadena de hasta ocho caracteres, seguida de un punto, seguida de una extensión de nombre de archivo de hasta tres caracteres ( formato de nombre de archivo "8.3" ). La extensión generalmente identifica el tipo de archivo. Por ejemplo, .COMindicó un archivo de programa ejecutable e .TXTindicó un archivo que contiene texto ASCII .

Cada unidad de disco se identificó mediante una letra de unidad , por ejemplo, unidad Ay unidad B. Para hacer referencia a un archivo en una unidad específica, la letra de la unidad se antepone al nombre del archivo, separada por dos puntos, por ejemplo A:FILE.TXT. Sin ninguna letra de unidad prefijada, el acceso fue a archivos en la unidad predeterminada actual. [19]

El formato de nombre de archivo "8.3" y la combinación de letra de unidad + dos puntos sobrevivieron en MS-DOS. La convención de letra de unidad + dos puntos ha sobrevivido en Microsoft Windows y todavía se usa en la actualidad. Además, las extensiones de archivo (por ejemplo, .txt, .com(un compilado de archivos), o .exe(un ejecutable de archivos)) todavía se utilizan para identificar los tipos de archivos en muchos sistemas operativos.

El tamaño del archivo se especificó como el número de registros de 128 bytes (que corresponden directamente a los sectores del disco en unidades de 8 pulgadas) ocupados por un archivo en el disco. No había una forma generalmente admitida de especificar tamaños de archivo con bytes exactos. El sistema operativo mantuvo el tamaño actual de un archivo en el bloque de control de archivos (FCB) del archivo . Dado que muchos programas de aplicación (como los editores de texto ) prefieren tratar los archivos como secuencias de caracteres en lugar de secuencias de registros, por convención los archivos de texto terminan con un carácter de control-Z ( ASCII SUB , hexadecimal 1A). Determinar el final de un archivo de textopor lo tanto, implicó examinar el último registro del archivo para localizar el control-Z de terminación. Esto también significaba que insertar un carácter de control-Z en el medio de un archivo generalmente tenía el efecto de truncar el contenido de texto del archivo.

Con la llegada de unidades de disco fijas y extraíbles más grandes, se emplearon fórmulas de desbloqueo de disco que dieron como resultado más bloques de disco por bloque de asignación de archivos lógicos. Si bien esto permitió tamaños de archivo más grandes, también significó que el archivo más pequeño que podría asignarse aumentó de tamaño de 1  KB (en unidades de densidad única) a 2 KB (en unidades de doble densidad) y así sucesivamente, hasta 32 KB para un archivo que contiene solo un byte. Esto provocó un uso ineficiente del espacio en disco si el disco contenía una gran cantidad de archivos pequeños.

Las marcas de tiempo de modificación de archivos no se admitían en versiones hasta CP / M 2.2, pero eran una función opcional en MP / M y CP / M 3.0.

CP / M 2.2 no tenía subdirectorios en la estructura de archivos, pero proporcionaba 16 áreas de usuario numeradas para organizar archivos en un disco. Para cambiar de usuario, simplemente se tenía que escribir "Usuario X" en el símbolo del sistema, siendo X el número del usuario deseado; la seguridad era inexistente y no se creía necesaria. El concepto de área de usuario era hacer que la versión para un solo usuario de CP / M fuera algo compatible con los sistemas MP / M multiusuario. Un parche común para el CP / M y los sistemas operativos derivados era hacer que un área de usuario fuera accesible para el usuario independientemente del área de usuario configurada actualmente. Un comando de USUARIO permitía cambiar el área de usuario a cualquier área de 0 a 15. El usuario 0 era el predeterminado. Si uno cambia a otro usuario, como el USUARIO 1, el material guardado en el disco para este usuario solo estaría disponible para el USUARIO 1; El USUARIO 2 no podrá verlo ni acceder a él. Sin emabargo,los archivos almacenados en el área USUARIO 0 eran accesibles para todos los demás usuarios; su ubicación se especificó con un prefacioruta , ya que los archivos del USUARIO 0 solo eran visibles para alguien que hubiera iniciado sesión como USUARIO 0. Se podría decir que la función del área de usuario tenía poca utilidad en los disquetes pequeños, pero era útil para organizar archivos en máquinas con discos duros . La intención de la función era facilitar el uso de la misma computadora para diferentes tareas. Por ejemplo, una secretaria podría realizar la entrada de datos , luego, después de cambiar de área de USUARIO, otro empleado podría usar la máquina para realizar la facturación sin que sus archivos se mezclen.

Área de programa transitoria [ editar ]

La memoria de lectura / escritura entre la dirección 0100 hexadecimal y la dirección más baja del BDOS era el Área de programa transitoria (TPA) disponible para los programas de aplicación CP / M. Aunque todos los procesadores Z80 y 8080 pueden manejar 64 kilobytes de memoria, la cantidad disponible para los programas de aplicación puede variar, dependiendo del diseño de la computadora en particular. Algunas computadoras usaban gran parte del espacio de direcciones para cosas como BIOS ROM o memoria de visualización de video. Como resultado, algunos sistemas tenían más memoria TPA disponible que otros. El cambio de banco era una técnica común que permitía a los sistemas tener un TPA grande mientras se cambiaba el espacio de memoria ROM o de video según fuera necesario. CP / M 3.0 permitía que partes del BDOS también estuvieran en la memoria conmutada por banco.

Aplicación de depuración [ editar ]

CP / M vino con una herramienta de depuración dinámica, apodada DDT (en honor al insecticida, es decir, un asesino de errores ), que permitía examinar y manipular módulos de programa y memoria, y permitir que un programa se ejecutara paso a paso. [20] [21] [22]

Programas residentes [ editar ]

CP / M originalmente no admitía el equivalente de programas de terminación y permanencia residente (TSR) como en DOS. Los programadores podrían escribir software que pudiera interceptar ciertas llamadas al sistema operativo y extender o alterar su funcionalidad. Usando esta capacidad, los programadores desarrollaron y vendieron programas auxiliares de accesorios de escritorio , como SmartKey , una utilidad de teclado para asignar cualquier cadena de bytes a cualquier tecla. [23] CP / M 3, sin embargo, agregó soporte para Extensiones de Sistema Residente (RSX) cargables dinámicamente . [15] Soluciones similares como RSM (para módulos de sistemas residentes ) también fueron adaptadas a sistemas CP / M 2.2 por terceros. [24] [25][26]

Instalación [ editar ]

Aunque CP / M proporcionó alguna abstracción de hardware para estandarizar la interfaz de E / S de disco o E / S de consola, normalmente los programas de aplicación aún requerían instalación para hacer uso de todas las características de equipos tales como impresoras y terminales. A menudo, estos fueron controlados por secuencias de escape.que tuvo que ser modificado para diferentes dispositivos. Por ejemplo, la secuencia de escape para seleccionar la cara en negrita en una impresora habría diferido entre los fabricantes y, a veces, entre los modelos dentro del rango de un fabricante. Este procedimiento no fue definido por el sistema operativo; un usuario normalmente ejecutaría un programa de instalación que permitiría la selección de una variedad de dispositivos, o permitiría la edición característica por característica de las secuencias de escape requeridas para acceder a una función. Esto tuvo que repetirse para cada programa de aplicación, ya que no se proporcionó un servicio de sistema operativo central para estos dispositivos.

Los códigos de inicialización para cada modelo de impresora debían escribirse en la aplicación. Para utilizar un programa como Wordstar con más de una impresora (por ejemplo, una impresora matricial rápida o una impresora de rueda de margarita más lenta pero con calidad de presentación ), se tenía que preparar una versión separada de Wordstar y había que cargar la versión de Wordstar. que correspondía a la impresora seleccionada (y saliendo y recargando para cambiar de impresora).

Historia [ editar ]

Anuncio de CP / M en la edición del 29 de noviembre de 1982 de la revista InfoWorld

El comienzo y el apogeo de CP / M [ editar ]

Gary Kildall desarrolló originalmente CP / M durante 1974, [5] [6] como un sistema operativo para ejecutarse en un sistema de desarrollo Intel Intellec-8 , equipado con una unidad de disquete de 8 pulgadas de Shugart Associates interconectada a través de un controlador de disquete personalizado . [18] Fue escrito en el propio PL / M ( Lenguaje de programación para microcomputadoras ) de Kildall . [17] Varios aspectos de CP / M fueron influenciados por el sistema operativo TOPS-10 de la computadora central DECsystem-10 , que Kildall había utilizado como entorno de desarrollo. [27] [28] [29]

El nombre [ editar ]

CP / M originalmente significaba "Programa de control / Monitor", [3] un nombre que implica un monitor residente, un precursor primitivo del sistema operativo. Sin embargo, durante la conversión de CP / M en un producto comercial, los documentos de registro de marcas registrados en noviembre de 1977 dieron al producto el nombre de "Programa de control para microcomputadoras". [6] El nombre CP / M sigue un esquema de nomenclatura predominante en la época, como en el lenguaje PL / M de Kildall, y PL / P ( lenguaje de programación para Prime ) de Prime Computer , ambos sugiriendo PL / I de IBM ; y el sistema operativo CP / CMS de IBM , que Kildall había utilizado cuando trabajaba en la Naval Postgraduate School (NPS).

Este cambio de nombre de CP / M fue parte de un esfuerzo mayor de Kildall y su esposa / socia comercial, Dorothy McEwen [4] para convertir el proyecto personal de Kildall de CP / M y el compilador PL / M contratado por Intel en una empresa comercial. Los Kildall pretendían establecer la marca Digital Research y sus líneas de productos como sinónimo de "microcomputadora" en la mente del consumidor, similar a lo que IBM y Microsoft juntos lograron más tarde con éxito al convertir "computadora personal" en sinónimo de sus ofertas de productos.

Posteriormente, Intergalactic Digital Research, Inc. pasó a llamarse mediante una presentación de cambio de nombre de la corporación a Digital Research, Inc. [4]

Portabilidad [ editar ]

En septiembre de 1981, Digital Research había vendido más de 250 000 licencias CP / M; InfoWorld declaró que el mercado real probablemente era más grande debido a las sublicencias. Muchas compañías diferentes produjeron computadoras basadas en CP / M para muchos mercados diferentes; la revista declaró que "CP / M está en camino de establecerse como el sistema operativo para computadoras pequeñas". [30] Las empresas optaron por apoyar CP / M debido a su gran biblioteca de software. El Xerox 820 ejecutó el sistema operativo porque "donde hay literalmente miles de programas escritos para él, sería imprudente no aprovecharlo", dijo Xerox. [31] (Xerox incluyó un manual CP / M de Howard W. Sams como compensación por la documentación de Digital Research, queInfoWorld en 1982 lo describió como atroz. [32] ) En 1984, la Universidad de Columbia utilizó el mismo código fuente para crear binarios de Kermit para más de una docena de sistemas CP / M diferentes, además de una versión genérica. [33] El sistema operativo se describió como un " bus de software ", que permite que múltiples programas interactúen con diferentes hardware de forma estandarizada. [34] Los programas escritos para CP / M eran típicamente portátiles entre diferentes máquinas, por lo general solo requerían la especificación de las secuencias de escape para el control de la pantalla.e impresora. Esta portabilidad hizo que CP / M fuera popular, y se escribió mucho más software para CP / M que para sistemas operativos que se ejecutaban en una sola marca de hardware. Una restricción a la portabilidad era que ciertos programas usaban el conjunto de instrucciones extendido del procesador Z80 y no funcionarían en un procesador 8080 o 8085. Otra fueron las rutinas de gráficos, especialmente en juegos y programas de gráficos, que generalmente eran específicos de la máquina, ya que usaban acceso directo al hardware para aumentar la velocidad, sin pasar por el sistema operativo y la BIOS (esto también era un problema común en las primeras máquinas DOS). [ cita requerida ]

Tarjeta Apple CP / M con manual

Bill Gates afirmó que la familia Apple II con una SoftCard Z-80 era la plataforma de hardware CP / M más popular. [35] Muchas marcas diferentes de máquinas corriendo el sistema operativo, algunos ejemplos notables son el Altair 8800 , el IMSAI 8080 , los Osborne 1 y Kaypro luggables y MSX ordenadores. El sistema compatible con CP / M más vendido de todos los tiempos fue probablemente el Amstrad PCW . En el Reino Unido, CP / M también estaba disponible en computadoras educativas de Research Machines (con el código fuente de CP / M publicado como recurso educativo), y para BBC Microcuando está equipado con un coprocesador Z80. Además, estaba disponible para la serie Amstrad CPC , Commodore 128 , TRS-80 y modelos posteriores de ZX Spectrum . CP / M 3 también se utilizó en el NIAT, una computadora de mano personalizada diseñada para el uso interno de AC Nielsen con 1  MB de memoria SSD .

Aplicaciones [ editar ]

Distribución de disquetes y empaque de 5 1/4 pulgadas para la última versión (Versión 4) del programa de procesamiento de texto WordStar lanzado para CP / M de 8 bits.

WordStar , uno de los primeros procesadores de texto ampliamente utilizados , y dBase , un programa de base de datos temprano y popular para microcomputadoras, se escribieron originalmente para CP / M. Dos primeros outliners , Kamas (conocimiento y sistema de amplificación mente) y su corte hacia abajo sucesor fuera piensa (sin servicios de programación y con nuevas herramientas para la compatibilidad 8080 / V20) también fueron escritos para CP / M, aunque más tarde reescrito para MS-DOS. Turbo Pascal , el antepasado de Borland Delphi , y Multiplan , el antepasado de Microsoft Excel , también debutaron en CP / M antes de que las versiones de MS-DOS estuvieran disponibles. Visicalc, el primer programa de hoja de cálculo, se puso a disposición para CP / M. Otra empresa, Sorcim , creó su hoja de cálculo SuperCalc para CP / M, que se convertiría en el líder del mercado y el estándar de facto en CP / M. Supercalc se convertiría en un competidor en el mercado de hojas de cálculo en el mundo MS-DOS. AutoCAD , una aplicación CAD de Autodesk debutó en CP / M. Una gran cantidad de compiladores e intérpretes para los populares lenguajes de programación de la época (como BASIC , Borland 's Turbo Pascal , FORTRAN y hasta PL / I [36] ) estaban disponibles, entre ellos varios de los primeros Microsoft productos.

El software CP / M a menudo venía con instaladores que lo adaptaban a una amplia variedad de computadoras. [37] El código fuente de los programas BASIC era de fácil acceso y la mayoría de las formas de protección contra copias no eran efectivas en el sistema operativo. [38] Un propietario de Kaypro II, por ejemplo, obtendría software en formato Xerox 820, luego lo copiaría y lo ejecutaría desde discos de formato Kaypro. [39]

La falta de gráficos estandarizados admite videojuegos limitados , pero se portaron varios juegos de personajes y basados ​​en texto , como Telengard , [40] Gorillas , [41] Hamurabi , Lunar Lander , junto con la ficción interactiva temprana, incluida la serie Zork y Colossal Cave. Aventura . Una aventura de texto especialista, Infocom fue uno de los pocos editores para liberar constantemente sus juegos en formato de CP / M. Lifeboat Associates comenzó a recopilar y distribuir software "gratuito" escrito por el usuario. Uno de los primeros fueXMODEM , que permitió transferencias de archivos confiables a través de módem y línea telefónica. Otro programa nativo de CP / M fue el procesador de esquema KAMAS . [ cita requerida ]

Formatos de disco [ editar ]

IBM System / 34 y IBM 3740 's sola densidad, formato de una sola cara es CP / M del estándar de 8 pulgadas formato de disco floppy . No existe un formato de disco CP / M estándar de 5,25 pulgadas, y Kaypro, Morrow Designs , Osborne y otros utilizan los suyos propios. [42] [32] [43] InfoWorld estimó en septiembre de 1981 que "alrededor de dos docenas de formatos eran lo suficientemente populares como para que los creadores de software tuvieran que considerarlos para llegar al mercado más amplio posible". [30] JRT Pascal , por ejemplo, proporcionó versiones en disco de 5,25 pulgadas para North Star , Osborne, Apple, sector duro y sector blando de Heath , ySuperbrain y una versión de 8 pulgadas. [44] Ellis Computing también ofreció su software para ambos formatos Heath y otros 16 formatos de 5,25 pulgadas, incluidas dos modificaciones diferentes de TRS-80 CP / M. [45]

Ciertos formatos de disco fueron más populares que otros. La mayor parte del software estaba disponible en el formato Xerox 820 y otras computadoras como Kaypro II eran compatibles con él. [39] [46]Sin embargo, ningún fabricante prevaleció en la era de las 5,25 pulgadas del uso de CP / M, y los formatos de disco a menudo no eran portátiles entre los fabricantes de hardware. Un fabricante de software tenía que preparar una versión separada del programa para cada marca de hardware en el que se iba a ejecutar. Con algunos fabricantes (Kaypro es un ejemplo), ni siquiera hubo estandarización en los diferentes modelos de la empresa. Debido a esta situación, los programas de traducción de formato de disco, que permitían a una máquina leer muchos formatos diferentes, se hicieron populares y redujeron la confusión, al igual que programas como Kermit, que permitían la transferencia de datos y programas de una máquina a otra utilizando los puertos serie que la mayoría de las veces usaba. Las máquinas CP / M tenían.

Se utilizaron varios formatos en función de las características de los sistemas particulares y, hasta cierto punto, de las elecciones de los diseñadores. CP / M admite opciones para controlar el tamaño de las áreas reservadas y de directorio en el disco, y el mapeo entre los sectores del disco lógico (como lo ven los programas CP / M) y los sectores físicos asignados en el disco. Había muchas formas de personalizar estos parámetros para cada sistema [47] pero una vez que se habían configurado, no existía una forma estandarizada para que un sistema cargara parámetros desde un disco formateado en otro sistema.

El grado de portabilidad entre diferentes máquinas CP / M dependía del tipo de unidad de disco y controlador utilizado, ya que existían muchos tipos diferentes de disquetes en la era CP / M tanto en formato de 8 pulgadas como de 5,25 pulgadas. Los discos pueden ser de sectores duros o blandos, de densidad simple o doble, de una o dos caras, de 35 pistas, 40 pistas, 77 pistas u 80 pistas, y el diseño del sector, el tamaño y la intercalación también pueden variar ampliamente. Aunque los programas de traducción podían permitir al usuario leer tipos de discos de diferentes máquinas, también dependía del tipo de unidad y del controlador. En 1982, los discos de 5,25 pulgadas de 40 pistas, de un solo lado y sector blando se habían convertido en el formato más popular para distribuir software CP / M, ya que eran utilizados por las máquinas de consumo más comunes de esa época, como Apple II, TRS. -80, Osborne 1, Kaypro II e IBM PC.Un programa de traducción permitía al usuario leer cualquier disco de su máquina que tuviera un formato similar; por ejemplo, el Kaypro II podía leerDiscos TRS-80 , Osborne , IBM PC y Epson . Otros tipos de discos, como 80 pistas o sectorizados, eran completamente imposibles de leer. La primera mitad de los discos de doble cara (como los de la Epson QX-10) se pudo leer porque CP / M accedió a las pistas del disco secuencialmente, siendo la pista 0 la primera (más externa) de la cara 1 y la pista 79 (en un disco de 40 pistas). la última pista (más interna) del lado 2. Los usuarios de Apple II no podían usar nada más que el formato GCR de Apple y, por lo tanto, tenían que obtener el software CP / M en discos de formato Apple o transferirlo a través de un enlace en serie.

El mercado fragmentado de CP / M, que requería que los distribuidores almacenaran múltiples formatos de discos o invirtieran en equipos de duplicación multiformato, en comparación con los formatos de disco de PC de IBM más estandarizados , fue un factor que contribuyó a la rápida obsolescencia de CP / M después de 1981.

Una de las últimas máquinas notables capaces de CP / M que apareció fue la Commodore 128 en 1985, que tenía un Z80 para soporte CP / M además de su modo nativo usando una CPU derivada de 6502. El uso de CP / M requería una unidad de disco 1571 o 1581 que pudiera leer discos de formato MFM de 40 pistas de sector suave .

La primera computadora en utilizar una disquetera de 3,5 pulgadas, la Sony SMC-70 , [48] ejecutó CP / M 2.2. El portátil Commodore 128 , Bondwell-2 , Micromint / Ciarcia SB-180, [49] MSX y TRS-80 Model 4 (con Montezuma CP / M 2.2) también admitían el uso de CP / M con disquetes de 3,5 pulgadas. El Amstrad PCW ejecutó CP / M usando unidades de disquete de 3 pulgadas al principio, y luego cambió a las unidades de 3,5 pulgadas.

Gráficos [ editar ]

La salida de texto MBASIC se muestra en un monitor monocromático típico de esa época.

Aunque los sistemas S-100 con capacidad para gráficos existían desde la comercialización del bus S-100 , CP / M no proporcionó ningún soporte gráfico estandarizado hasta 1982 con GSX (Graphics System Extension). Debido a la pequeña memoria disponible, los gráficos nunca fueron una característica común asociada con los sistemas operativos CP / M de 8 bits. La mayoría de los sistemas solo podían mostrar gráficos y diagramas artísticos ASCII rudimentarios en modo texto o mediante el uso de un juego de caracteres personalizado . Algunas computadoras de la línea Kaypro y el TRS-80 Modelo 4tenía hardware de video que soportaba caracteres de gráficos de bloques, y estos eran accesibles para programadores ensambladores y programadores BASIC usando el comando CHR $. El Modelo 4 podía mostrar gráficos de 640 x 240 píxeles con una placa de alta resolución opcional.

Multiusuario [ editar ]

En 1979, se lanzó un derivado de CP / M compatible con múltiples usuarios. MP / M permitió que varios usuarios se conectaran a una sola computadora, utilizando múltiples terminales para proporcionar a cada usuario una pantalla y un teclado. Las versiones posteriores se ejecutaron en procesadores de 16 bits.

CP / M Plus [ editar ]

Guía del sistema CP / M Plus (CP / M 3)

La última versión de 8 bits de CP / M fue la versión 3, a menudo llamada CP / M Plus, lanzada en 1983. Incorporaba la gestión de memoria de conmutación de banco de MP / M en un sistema operativo de una sola tarea para un solo usuario compatible con CP / Aplicaciones M 2.2. Por tanto, CP / M 3 podría utilizar más de 64 KB de memoria en un procesador 8080 o Z80. El sistema podría configurarse para admitir el estampado de la fecha de los archivos. El software de distribución del sistema operativo también incluía un ensamblador y un enlazador de reubicación. [2] CP / M 3 estaba disponible para la última generación de ordenadores de 8 bits, especialmente el Amstrad PCW , el Amstrad CPC , el ZX Spectrum +3 , el Commodore 128 , las máquinas MSX y elRadio Shack TRS-80 Modelo 4 . [50]

El mundo de 16 bits [ editar ]

Distribución de disquete DEC PRO-CP / M-80 para el coprocesador Z80-A en una serie DEC Professional 3xx.

También había versiones de CP / M para algunas CPU de 16 bits .

La primera versión de la familia de 16 bits fue CP / M-86 para Intel 8086 en noviembre de 1981. [51] En este punto, el CP / M original de 8 bits se hizo conocido por el retrónimo CP / M-80 para evitar Confusión. [51]

Se esperaba que CP / M-86 fuera el sistema operativo estándar de las nuevas PC de IBM , pero DRI e IBM no pudieron negociar los términos de desarrollo y licencia. IBM se dirigió a Microsoft en su lugar, y Microsoft entregó PC DOS basado en 86-DOS . Aunque CP / M-86 se convirtió en una opción para IBM PC después de que DRI amenazara con emprender acciones legales, nunca superó al sistema de Microsoft. La mayoría de los clientes se sintieron repelidos por el precio significativamente mayor que IBM cobraba por CP / M-86 sobre PC DOS ( US $ 240 y US $ 40, respectivamente). [52]

Cuando Digital Equipment Corporation (DEC) lanzó el Rainbow 100 para competir con IBM, vino con CP / M-80 usando un chip Z80, CP / M-86 o MS-DOS usando un microprocesador 8088, o CP / M-86 / 80 usando ambos. Las CPU Z80 y 8088 se ejecutaron simultáneamente. [53] [54] Un beneficio del Rainbow era que podía continuar ejecutando software CP / M de 8 bits, preservando la posible inversión considerable del usuario mientras se trasladaba al mundo de 16 bits de MS-DOS. [53] Una adaptación de procesador dual similar para el CompuPro System 816  [ sr ] se denominó CP / M 8-16 . La adaptación CP / M-86 para el Zenith Z-100 basado en 8085/8088 también admitió la ejecución de programas para sus dos CPU.

Poco después de CP / M-86, otra versión de 16 bits de CP / M fue CP / M-68K para el Motorola 68000 . La versión original de CP / M-68K en 1982 se escribió en Pascal / MT + 68k , pero se trasladó a C más adelante. CP / M-68K, que ya se ejecuta en los sistemas Motorola EXORmacs , inicialmente se iba a utilizar en la computadora Atari ST , pero Atari decidió ir con un sistema operativo de disco más nuevo llamado GEMDOS . CP / M-68K también se utilizó en las computadoras SORD M68 y M68MX. [55]

En 1982 también hubo un puerto de CP / M-68K al Zilog Z8000 de 16 bits para el Olivetti M20 , escrito en C , llamado CP / M-8000 . [56] [57]

Estas versiones de 16 bits de CP / M requerían que los programas de aplicación se recompilaran para las nuevas CPU o, si estaban escritos en lenguaje ensamblador , que se tradujeran utilizando herramientas como XLT86 de Digital Research , un programa escrito por Gary Kildall en 1981, que tradujo el código fuente .ASM para el procesador Intel 8080 al código fuente .A86 para Intel 8086. Usando el análisis de flujo de datos global en el uso del registro 8080, el traductor también optimizaría la salida para el tamaño del código y se ocuparía de las convenciones de llamadas, de modo que CP Los programas / M-80 y MP / M-80 se pueden migrar a las plataformas CP / M-86 y MP / M-86 automáticamente. El propio XLT86 fue escrito en PL / I-80y estaba disponible para plataformas CP / M-80 así como para DEC VMS (para VAX 11/750 o 11/780 ). [58]

MS-DOS se hace cargo [ editar ]

Muchos esperaban que CP / M fuera el sistema operativo estándar para computadoras de 16 bits. [59] En 1980 IBM se acercó a Digital Research, a sugerencia de Bill Gates , [60] para licenciar una próxima versión de CP / M para su nuevo producto, IBM Personal Computer . Al no obtener un acuerdo de confidencialidad firmado , las conversaciones fracasaron e IBM, en cambio, contrató a Microsoft para proporcionar un sistema operativo. [61] El producto resultante, MS-DOS , pronto comenzó a vender más que CP / M.

Muchos de los conceptos y mecanismos básicos de las primeras versiones de MS-DOS se parecían a los de CP / M. Partes internas como las estructuras de datos de administración de archivos eran idénticos, y ambos referidos a las unidades de disco con una letra ( A:, B:, etc.). La principal innovación de MS-DOS fue su sistema de archivos FAT . Esta similitud hizo que fuera más fácil portar software CP / M popular como WordStar y dBase . Sin embargo, el concepto de CP / M de áreas de usuario separadas para archivos en el mismo disco nunca se transfirió a MS-DOS. Dado que MS-DOS tenía acceso a más memoria (ya que se vendieron pocas PC IBM con menos de 64 KB de memoria, mientras que CP / M podía ejecutarse en 16 KB si era necesario), se integraron más comandos en el shell de la línea de comandos, lo que hace que MS-DOS sea algo más rápido y más fácil de usar en computadoras basadas en disquetes.

Aunque uno de los primeros periféricos para IBM PC fue una tarjeta de expansión tipo SoftCard que le permitía ejecutar software CP / M de 8 bits, [62] CP / M perdió rápidamente cuota de mercado a medida que el mercado de la microcomputación se trasladó a la plataforma compatible con IBM. , y nunca recuperó su antigua popularidad. La revista Byte , en ese momento una de las revistas líderes de la industria para microcomputadoras, esencialmente dejó de cubrir los productos CP / M a los pocos años de la introducción de IBM PC. Por ejemplo, en 1983 todavía había algunos anuncios de placas S-100 y artículos sobre software CP / M, pero en 1987 ya no se encontraban en la revista. Un artículo de 1984 en InfoWorlddeclaró que los esfuerzos para introducir CP / M en el mercado interno habían sido en gran parte infructuosos y que la mayoría del software CP / M era demasiado caro para los usuarios domésticos, [63] y en 1986 declaró que Kaypro había detenido la producción de su CP / M de 8 bits modelos basados ​​en concentrarse en las ventas de sistemas compatibles con MS-DOS, mucho después de que la mayoría de los otros proveedores dejaran de producir nuevos equipos y software para CP / M. [64]

Las versiones posteriores de CP / M-86 lograron avances significativos en rendimiento y facilidad de uso y se hicieron compatibles con MS-DOS. Para reflejar esta compatibilidad, se cambió el nombre y CP / M-86 se convirtió en DOS Plus , que a su vez se convirtió en DR-DOS .

ZCPR [ editar ]

ZCPR [65] (el reemplazo del procesador de comandos Z80) se introdujo el 2 de febrero de 1982 como un reemplazo directo del procesador de comandos de la consola de investigación digital (CCP) estándar y fue escrito inicialmente por un grupo de aficionados a la informática que se llamaban a sí mismos "El PCCh Grupo". Eran Frank Wancho, Keith Petersen (el archivero detrás de Simtel en ese momento), Ron Fowler, Charlie Strom, Bob Mathias y Richard Conn. Richard era, de hecho, la fuerza impulsora de este grupo (todos los cuales mantenían el contacto por correo electrónico ).

ZCPR1 fue lanzado en un disco publicado por SIG / M (Special Interest Group / Microcomputers), una parte del Amateur Computer Club de Nueva Jersey .

ZCPR2 fue lanzado el 14 de febrero de 1983. Fue lanzado como un conjunto de diez discos de SIG / M. ZCPR2 se actualizó a 2.3 y también se lanzó en código 8080, lo que permite el uso de ZCPR2 en sistemas 8080 y 8085.

ZCPR3 [66] fue lanzado el 14 de julio de 1984, como un conjunto de nueve discos de SIG / M. El código para ZCPR3 también podría compilarse (con funciones reducidas) para el 8080 y se ejecutaría en sistemas que no tuvieran el microprocesador Z80 requerido .

En enero de 1987, Richard Conn dejó de desarrollar ZCPR y Echelon le pidió a Jay Sage (que ya tenía un ZCPR 3.1 mejorado de forma privada) que continuara trabajando en él. Por lo tanto, se desarrolló y lanzó ZCPR 3.3. ZCPR 3.3 ya no admitía la serie 8080 de microprocesadores y agregó la mayoría de las funciones de cualquier actualización en la línea ZCPR.

Las características de ZCPR a partir de la versión 3 incluyen:

  • conchas
  • alias
  • Redirección de E / S
  • control de flujo
  • directorios con nombre
  • rutas de búsqueda
  • menús personalizados
  • contraseñas
  • ayuda en linea

ZCPR3.3 también incluyó un complemento completo de utilidades con capacidades considerablemente ampliadas. Aunque apoyado con entusiasmo por la base de usuarios de CP / M de la época, ZCPR por sí solo fue insuficiente para retrasar la desaparición de CP / M.

Derivados CP / M del bloque este [ editar ]

SCP derivado de CP / M ejecutándose en un robotron PC 1715 de Alemania Oriental
CP / J versión 2.21 ejecutándose en un Elwro 804 Junior

Varios derivados de CP / M-80 existían en el antiguo bloque del Este con varios nombres, incluidos SCP ( Programa de control de usuario único  [ de ] ), SCP / M, CP / A, [67] CP / KC, CP / L, CP / KSOB, CP / Z, MICRODOS, BCU880, ZOAZ, OS / M, TOS / M, ZSDOS, M / OS, COS-PSA, DOS-PSA, CSOC, CSOS, CZ-CPM y otros. [68] [69] También hubo derivados de CP / M-86 llamados SCP1700 , CP / K y K8918-OS . [69] Fueron producidos por el VEB Robotron de Alemania Oriental y otros. [69] [68] [67]

Legado [ editar ]

Varios comportamientos exhibidos por Microsoft Windows son el resultado de la compatibilidad con versiones anteriores de MS-DOS, que a su vez intentó alguna compatibilidad con versiones anteriores de CP / M. Las convenciones de letra de unidad y nombre de archivo 8.3 en MS-DOS (y las primeras versiones de Windows) se adoptaron originalmente de CP / M. [70] Los caracteres de coincidencia comodín utilizados por Windows (? Y *) se basan en los de CP / M, [71] al igual que los nombres de archivo reservados utilizados para redirigir la salida a una impresora ("PRN:") y la consola("ESTAFA:"). Los nombres de unidad A y B se utilizaron para designar las dos unidades de disquete que los sistemas CP / M solían utilizar; cuando aparecieron los discos duros, fueron designados como C, que sobrevivió en MS-DOS como C:\>símbolo del sistema. [72] El carácter de control ^ Z que marca el final de algunos archivos de texto también se puede atribuir a CP / M. [73] Varios comandos en DOS se modelaron a partir de comandos CP / M, algunos de ellos incluso llevaban el mismo nombre como DIR, REN / RENAME o TYPE (y ERA / ERASE en DR-DOS).

Lanzamientos de código fuente [ editar ]

En 1997 y 1998, Caldera lanzó algunos binarios CP / M 2.2 y código fuente bajo una licencia de código abierto , lo que también permitió la redistribución y modificación de archivos de investigación digital recopilados relacionados con las familias CP / M y MP / M a través de Tim Olmstead "The Unofficial CP / M sitio Web "desde 1997. [74] [75] [76] Después de la muerte de Olmstead el 12 de septiembre de 2001, [77] la licencia de distribución fue renovada y ampliada por Lineo , que mientras tanto se había convertido en el propietario de esos activos de Digital Research , el 19 de octubre de 2001. [78] [79] [1] [80]En octubre de 2014, para conmemorar el 40 aniversario de la primera presentación de CP / M, el Museo de Historia de la Computación lanzó las primeras versiones del código fuente de CP / M. [81]

Hobby y computación "retro" [ editar ]

A partir de 2018 , hay una serie de personas y grupos activos de vintage, pasatiempos y retrocomputadoras , y algunas pequeñas empresas comerciales, que aún desarrollan y admiten plataformas informáticas que utilizan CP / M (principalmente 2.2) como sistema operativo host.

Ver también [ editar ]

  • Juego de caracteres Amstrad CP / M Plus
  • CPMulator
  • CP / NET y CP / NOS
  • Cromemco DOS , un sistema operativo derivado de forma independiente de CP / M
  • Computadora Eagle
  • IMDOS
  • Lista de máquinas que ejecutan CP / M
  • MP / M
  • MP / NET y MP / NOS
  • DOS multiusuario
  • Pascal / MT +
  • SpeedStart CP / M
  • 86-DOS

Referencias [ editar ]

  1. ↑ a b Gasperson, Tina (26 de noviembre de 2001). "La colección CP / M vuelve a estar en línea con una licencia de código abierto - Camine por el carril de la memoria" . El registro . Archivado desde el original el 1 de septiembre de 2017.
  2. ↑ a b Mann, Stephen (15 de agosto de 1983). "CP / M Plus, una tercera versión actualizada de CP / M". InfoWorld . 5 (33): 49 y siguientes. ISSN 0199-6649 . 
  3. ↑ a b c Sandberg-Diment, Erik (3 de mayo de 1983). "Computadoras personales: el sistema operativo en el medio" . The New York Times .
  4. ↑ a b c Markoff, John (13 de julio de 1994). "Gary Kildall, 52, jugador crucial en el desarrollo informático, muere" . The New York Times .
  5. ↑ a b Shustek, Len (2 de agosto de 2016). "En sus propias palabras: Gary Kildall" . Gente notable . Museo de Historia de la Computación . Archivado desde el original el 17 de diciembre de 2016.
  6. ↑ a b c Kildall, Gary Arlen (2 de agosto de 2016) [1993]. Kildall, Scott ; Kildall, Kristin (eds.). Conexiones informáticas: personas, lugares y eventos en la evolución de la industria de las computadoras personales (Manuscrito, parte 1). Familia Kildall. Archivado desde el original el 17 de noviembre de 2016 . Consultado el 17 de noviembre de 2016 .
  7. ^ Newton, Harry (2000). Diccionario de telecomunicaciones de Newton . Nueva York, Nueva York, Estados Unidos: CMP Books . págs.  228 . ISBN 1-57820-053-9.
  8. ^ "OLDCOMPUTERS.COM Compupro 16/8" . Archivado desde el original el 3 de enero de 2016 . Consultado el 13 de julio de 2011 .
  9. Cole, Maggie (25 de mayo de 1981). "Gary Kildall y la historia de éxito de la investigación digital" . InfoWorld . Palo Alto, California, Estados Unidos. 3 (10): 52–53. ISSN 0199-6649 . 
  10. Freiberger, Paul (5 de julio de 1982). "Historia de la microcomputación, parte 3: génesis del software" . InfoWorld . Palo Alto, California, Estados Unidos. 4 (26): 41. ISSN 0199-6649 . 
  11. ^ "El libro oficial del Commodore 128" . […] Dado que CP / M fue uno de los primeros sistemas operativos, un gran número de aficionados, hackers y programadores esotéricos compraron computadoras CP / M y comenzaron a escribir programas por sí mismos. […] Se ofreció en el mercado libre en forma de disquetes distribuidos en "grupos de usuarios" de computadoras. […]
  12. ^ "Emuladores CP / M para DOS" . www.retroarchive.org/cpm . Luis Basto. Archivado desde el original el 9 de julio de 2016 . Consultado el 6 de julio de 2016 .
  13. ^ Davis, Randy (diciembre de 1985 - enero de 1986). Escrito en Greenville, Texas, EE. UU. "Los nuevos microprocesadores NEC: ¿8080, 8086 u 8088?" (PDF) . Micro Cornucopia (27). Bend, Oregon, EE.UU .: Micro Cornucopia Inc. págs. 4–7. ISSN 0747-587X . Archivado (PDF) desde el original el 11 de febrero de 2020 . Consultado el 11 de febrero de 2020 .  
  14. ^ a b "Manual del sistema operativo CP / M" (PDF) .
  15. ^ a b Guía de programadores del sistema operativo CP / M Plus (CP / M versión 3) (PDF) (2 ed.). Investigación digital . Abril de 1983 [enero de 1983]. Archivado (PDF) desde el original el 25 de noviembre de 2016 . Consultado el 25 de noviembre de 2016 .
  16. ^ a b Guía del usuario del sistema operativo CP / M Plus (CP / M versión 3)
  17. ^ a b c d e Kildall, Gary Arlen (junio de 1975), CP / M 1.1 o 1.2 BIOS y BDOS para Lawrence Livermore Laboratories , un extracto del encabezado del archivo BDOS.PLM en el código fuente PL / M de CP / M 1.1 o CP / M 1.2 para Lawrence Livermore Laboratories (LLL):
    […]/ * CP / MBASICI / OSYSTEM (BIOS) DERECHOS DE AUTOR (C) GARY A. KILDALL JUNIO 1975 * /[…]/ * BASICDISKOPERATINGSYS TEM (BDOS) DERECHOS DE AUTOR (C) GARY A. KILDALL JUNIO 1975 * /[…]
  18. ↑ a b c d e Kildall, Gary Arlen (enero de 1980). "La historia de CP / M, la evolución de una industria: el punto de vista de una persona" . Diario del Dr. Dobb . Vol. 5 no. 1 # 41. págs. 6–7. Archivado desde el original el 24 de noviembre de 2016 . Consultado el 3 de junio de 2013 . […] La primera licencia comercial de CP / M tuvo lugar en 1975 con contratos entre Digital Systems y Omron of America para su uso en su terminal inteligente, y con Lawrence Livermore Laboratories donde CP / M se utilizó para monitorear programas en la red Octopus.. Se prestó poca atención a CP / M durante aproximadamente un año. En mi tiempo libre, trabajé para mejorar las instalaciones en general […] En ese momento, CP / M se había adaptado para cuatro controladores diferentes. […] [En 1976, Glenn Ewing se acercó a mí con un problema: Imsai , Incorporated, para quien Glenn consultó, había enviado una gran cantidad de subsistemas de disco con la promesa de que seguiría un sistema operativo. Estaba un poco reacio a adaptar CP / M a otro controlador y, por lo tanto, evolucionó la noción de un sistema de E / S básico (BIOS) separado. En principio, las partes de CP / M dependientes del hardware se concentraron en el BIOS, lo que permitió a Glenn, o cualquier otra persona, adaptar CP / M al equipo Imsai. Posteriormente, Imsai obtuvo la licencia para distribuir CP / M versión 1.3que eventualmente se convirtió en un sistema operativo llamado IMDOS . […]
  19. ^ "Comandos integrados de CP / M" . discordia.org.uk . Archivado desde el original el 12 de abril de 2008 . Consultado el 28 de enero de 2009 .
  20. ^ "Sección 4 - Herramienta de depuración dinámica CP / M" . CP / M 2.2 . Archivado desde el original el 17 de junio de 2015 . Consultado el 29 de agosto de 2014 .
  21. ^ Herramienta de depuración dinámica CP / M (DDT) - Guía del usuario (PDF) . Investigación digital . 1978 [1976]. Archivado (PDF) desde el original el 28 de octubre de 2014 . Consultado el 29 de agosto de 2014 .
  22. Shael (26 de junio de 2010) [9 de diciembre de 2009]. "Utilidad DDT" . Archivado desde el original el 8 de diciembre de 2015 . Consultado el 29 de agosto de 2014 .
  23. ^ "Catálogo de software de Whole Earth" . Archivado desde el original el 4 de julio de 2015.
  24. ^ Lieber, Eckhard; von Massenbach, Thomas (1987). "CP / M 2 lernt dazu. Modulare Systemerweiterungen auch für das 'alte' CP / M". c't - magazin für computertechnik (parte 1) (en alemán). Heise Verlag . 1987 (1): 124-135.
  25. ^ Lieber, Eckhard; von Massenbach, Thomas (1987). "CP / M 2 lernt dazu. Modulare Systemerweiterungen auch für das 'alte' CP / M". c't - magazin für computertechnik (parte 2) (en alemán). Heise Verlag . 1987 (2): 78–85.
  26. Huck, Alex (9 de octubre de 2016). "RSM für CP / M 2.2" . Homecompuer DDR (en alemán). Archivado desde el original el 25 de noviembre de 2016 . Consultado el 25 de noviembre de 2016 .
  27. Johnson, Herbert R. (4 de enero de 2009). "Historia de CP / M y Digital Research Inc. (DRI)" . www.retrotechnology.com . Archivado desde el original el 20 de agosto de 2008 . Consultado el 28 de enero de 2009 .
  28. ^ Warren, Jim (abril de 1976). "Primera palabra en un sistema operativo de disquete". Diario del Dr. Dobb . Menlo Park, California, Estados Unidos. 1 (4): 5. Subtítulo: Lenguaje de comando e instalaciones similares a DECSYSTEM-10.
  29. ^ Investigación digital (1978). CP / M . Pacific Grove, California, Estados Unidos: Investigación digital . OCLC 221485970 . 
  30. ↑ a b Hogan, Thom (14 de septiembre de 1981). "Estado de la microcomputación / algunos caballos corriendo cuello y cuello" . págs. 10-12 . Consultado el 8 de abril de 2019 .
  31. Wise, Deborah (10 de mayo de 1982). "Los fabricantes de mainframe cortejan a proveedores externos de micro software" . InfoWorld . págs. 21-22. Archivado desde el original el 18 de marzo de 2015 . Consultado el 25 de enero de 2015 .
  32. ↑ a b Meyer, Edwin W. (14 de junio de 1982). "La Xerox 820, un sistema operado por CP / M de Xerox" . InfoWorld . págs. 101-104 . Consultado el 30 de marzo de 2019 .
  33. da Cruz, Frank (27 de abril de 1984). "Nueva versión de KERMIT para CP / M-80" . Info-Kermit Digest (lista de correo). Proyecto Kermit, Universidad de Columbia. Archivado desde el original el 17 de abril de 2021 . Consultado el 23 de febrero de 2016 . [1]
  34. Swaine, Michael (1 de abril de 1997). "Gary Kildall y el espíritu empresarial colegiado" . Diario del Dr. Dobb . Archivado desde el original el 24 de enero de 2007 . Consultado el 20 de noviembre de 2006 .
  35. ^ Bunnell, David (febrero de 1982). "¿El hombre detrás de la máquina? / Entrevista exclusiva para PC con el gurú del software Bill Gates" . Revista de PC . pag. 16. Archivado desde el original el 9 de mayo de 2013 . Consultado el 17 de febrero de 2012 .
  36. ^ "Guía del programador de lenguaje PL / I" (PDF) . Investigación digital .
  37. Mace, Scott (9 de enero de 1984). "Los fabricantes de clones de IBM PC evitan la compatibilidad total" . InfoWorld . págs. 79–81. Archivado desde el original el 16 de marzo de 2015 . Consultado el 4 de febrero de 2015 .
  38. ^ Pournelle, Jerry (junio de 1983). "Zenith Z-100, Epson QX-10, licencias de software y el problema de piratería de software" . BYTE . 8 (6). pag. 411. Archivado desde el original el 9 de junio de 2014 . Consultado el 20 de octubre de 2013 .
  39. ↑ a b Derfler, Frank J. (18 de octubre de 1982). "Kaypro II: un micro portátil de bajo precio de 26 libras" . InfoWorld . pag. 59. Archivado desde el original el 1 de enero de 2014 . Consultado el 22 de octubre de 2013 .
  40. Loguidice, Bill (28 de julio de 2012). "Más sobre los juegos de computadora de Avalon Hill en las plataformas Heath / Zenith" . Sillón Arcade . Archivado desde el original el 23 de julio de 2015 . Consultado el 22 de julio de 2015 .
  41. Sblendorio, Francesco (1 de diciembre de 2015). "Gorilas para CP / M" . Archivado desde el original el 5 de febrero de 2016 . Consultado el 22 de julio de 2015 .
  42. ^ Pournelle, Jerry (abril de 1982). "El Osborne 1, los nuevos amigos de Zeke y la ortografía revisitada" . BYTE . pag. 212. Archivado desde el original el 26 de octubre de 2013 . Consultado el 19 de octubre de 2013 .
  43. ^ Waite, Mitchell ; Lafore, Robert W .; Volpe, Jerry (1985). "El modo CP / M" . El libro oficial de la computadora personal Commodore 128 . Howard W. Sams & Co. pág. 98. ISBN 0-672-22456-9.
  44. ^ "Ahora: ¡Un Pascal CP / M completo por solo $ 29.95!" . BYTE (publicidad). Diciembre de 1982. p. 11. Archivado desde el original el 21 de julio de 2016 . Consultado el 1 de octubre de 2016 .
  45. ^ "Computación Ellis" . BYTE (publicidad). Diciembre de 1983. p. 69.
  46. ^ Fager, Roger; Bohr, John (septiembre de 1983). "El Kaypro II" . BYTE . pag. 212. Archivado desde el original el 2 de marzo de 2014 . Consultado el 20 de octubre de 2013 .
  47. ^ Johnson-Laird, Andy (1983). "3". El manual de CP / M del programador . Berkeley, California, Estados Unidos: Osborne / McGraw-Hill. ISBN 0-88134-103-7.
  48. ^ "Old-computers.com: el museo" . Archivado desde el original el 3 de julio de 2013 . Consultado el 6 de octubre de 2017 .
  49. ^ Ciarcia, Steve (septiembre de 1985). "Construya el SB-180" (PDF) . Revista BYTE . CMP Media . pag. 100 . Consultado el 18 de junio de 2019 .
  50. ^ "Catálogo de computadoras Radio Shack RSC-12 página 28" . www.radioshackcomputercatalogs.com . Tandy / Radio Shack. Archivado desde el original el 13 de octubre de 2016 . Consultado el 6 de julio de 2016 .
  51. ^ a b "La investigación digital tiene CP / M-86 para IBM Displaywriter" (PDF) . Noticias de investigación digital : para usuarios de investigación digital en todas partes . Pacific Grove, California, EE.UU .: Digital Research, Inc. 1 (1): 2, 5, 7. Noviembre de 1981. Cuarto trimestre. Archivado (PDF) desde el original el 17 de abril de 2021 . Consultado el 18 de enero de 2020 .
  52. Maher, Jimmy (31 de julio de 2017). "La historia completa de la IBM PC, segunda parte: El imperio DOS ataca" . Ars Technica . pag. 3 . Consultado el 8 de septiembre de 2019 .
  53. ↑ a b Kildall, Gary Arlen (16 de septiembre de 1982). "Ejecución de software de 8 bits en equipos con dos procesadores" (PDF) . Diseño electrónico : 157. Archivado (PDF) desde el original el 19 de agosto de 2017 . Consultado el 19 de agosto de 2017 .
  54. ^ Snyder, John J. (junio de 1983). "¿Un DEC en cada escritorio?" . BYTE . págs. 104-106. Archivado desde el original el 2 de enero de 2015 . Consultado el 5 de febrero de 2015 .
  55. ^ "M 68 / M 68 MX" . Archivado desde el original el 6 de marzo de 2016 . Consultado el 17 de septiembre de 2012 .
  56. ^ Thomas, Rebecca A .; Yates, Jean L. (11 de mayo de 1981). "Libros, placas y software para los nuevos procesadores de 16 bits" . InfoWorld : el periódico de la comunidad de microcomputación . 3 (9). Popular Computing, Inc. pág. 42–43. ISSN 0199-6649 . Consultado el 24 de enero de 2020 . […] Digital Research también ha anunciado planes para una versión Z8000 de CP / M. El software de aplicación se trasladará al Z8000 cuando haya más software de desarrollo disponible. Se necesita un traductor disponible comercialmente de Z80 a Z8000. […] 
  57. ^ Olmstead, Tim; Chaudry, Gabriele "Gaby". "Código fuente de investigación digital" . Archivado desde el original el 5 de febrero de 2016.
  58. ^ Investigación digital (1981): XLT86 - Traductor de lenguaje ensamblador 8080 a 8086 - Guía del usuario Archivado el 18 de noviembre de 2016 en Wayback Machine Digital Research Inc, Pacific Grove
  59. ^ Pournelle, Jerry (marzo de 1984). "Nuevas Máquinas, Redes y Software Diverso" . BYTE : 46. Archivado desde el original el 2 de febrero de 2015 . Consultado el 22 de octubre de 2013 .
  60. ^ Isaacson, Walter (2014). Los innovadores: cómo un grupo de inventores, piratas informáticos, genios y geeks crearon la revolución digital . Simon y Schuster . pag. 358. ISBN 978-1-47670869-0.
  61. ^ Bellis, María. "Inventores de la serie de computadoras modernas: la historia de los sistemas operativos MS-DOS, Microsoft, Tim Paterson y Gary Kildall" . Consultado el 9 de septiembre de 2010 .
  62. ^ Magid, Lawrence J. (febrero de 1982). "Baby Blue" . PC . pag. 49. Archivado desde el original el 18 de marzo de 2015 . Consultado el 4 de enero de 2015 .
  63. Mace, Scott (11 de junio de 1984). "CP / M elude el mercado interno". InfoWorld : 46.
  64. Groth, Nancy (10 de febrero de 1986). "Kaypro se retira en CP / M". InfoWorld : 6.
  65. ^ "ZCPR - oldcomputers.ddns.org" .
  66. ^ "El maravilloso mundo de ZCPR3" . 1987-11-30. Archivado desde el original el 23 de diciembre de 2019 . Consultado el 18 de noviembre de 2019 .
  67. ↑ a b Pohlers, Volker (30 de abril de 2019). "CP / A" . Homecomputer DDR (en alemán). Archivado desde el original el 21 de febrero de 2020 . Consultado el 21 de febrero de 2020 . […] CP / A ist ein CP / M-2.2-kompatibles Betriebssystem der Akademie der Wissenschaften der DDR, der Hauptentwickler war Hans Willy Dames. […] Vorteile des CP / A gegenüber CP / M 2.2. sind erweiterte Funktionalitäten. […] Herausragend sind […] Urladen des Systems aus einer Datei @ OS.COM. Das System musste nicht in speziellen Systemspuren gespeichert werden. […] Automatische Erkennung von Diskettenformaten […] eingebauter Systemmonitor […] Das CP / A wurde für Bürocomputer A5120, A5130 und den PC1715 ausgeliefert. […] Das CCP von CP / A ist ziemlich sicher ursprünglich aus einem reassemblierten CP / M-2.2-CCP entstanden; wurde aber konsequent auf Z80-Befehle umgearbeitet und vielfach verändert und erweitert. […] El CP / A-BDOS wurde im Prinzip komplett und fast 1: 1 aus dem DR-BDOS abgekupfert […] Aus den Quelltexten des BIC A5105 geht hervor, dass W. Dames das originale BDOS reensambliert […] hat. […]
  68. ^ a b Kurth, Rüdiger; Groß, Martin; Hambre, Henry (3 de enero de 2019). "Betriebssysteme" . www.robotrontechnik.de (en alemán). Archivado desde el original el 27 de abril de 2019 . Consultado el 27 de abril de 2019 .
  69. ^ a b c Kurth, Rüdiger; Groß, Martin; Hambre, Henry (3 de enero de 2019). "Betriebssystem SCP" . www.robotrontechnik.de (en alemán). Archivado desde el original el 27 de abril de 2019 . Consultado el 27 de abril de 2019 .
  70. ^ Chen, Raymond . "¿Por qué MS-DOS usa nombres de archivo 8.3 en lugar de, digamos, 11.2 o 16.16?" . Lo viejo y nuevo . Archivado desde el original el 22 de septiembre de 2011 . Consultado el 17 de diciembre de 2010 .
  71. ^ Chen, Raymond . "¿Cómo funcionan los comodines en MS-DOS?" . Lo viejo y nuevo . Archivado desde el original el 8 de mayo de 2011 . Consultado el 17 de diciembre de 2010 .
  72. ^ Chen, Raymond . "¿Cuál es el problema con esos nombres de archivo reservados como NUL y CON?" . Lo viejo y nuevo . Archivado desde el original el 2 de agosto de 2010 . Consultado el 17 de diciembre de 2010 .
  73. ^ Chen, Raymond . "¿Por qué los archivos de texto terminan en Ctrl + Z?" . Lo viejo y nuevo . Archivado desde el original el 6 de febrero de 2011 . Consultado el 17 de diciembre de 2010 .
  74. Olmstead, Tim (10 de agosto de 1997). "El sitio web de CP / M necesita un host" . Grupo de noticiascomp.os.cpm . Archivado desde el original el 1 de septiembre de 2017 . Consultado el 9 de septiembre de 2018 .
  75. Olmstead, Tim (29 de agosto de 1997). "ANUNCIO: El sitio de Caldera CP / M ya está activo" . Grupo de noticiascomp.os.cpm . Archivado desde el original el 1 de septiembre de 2017 . Consultado el 9 de septiembre de 2018 . [2]
  76. ^ "Acuerdo de licencia" . Caldera, Inc. 28 de agosto de 1997. Archivado desde el original el 8 de septiembre de 2018 . Consultado el 25 de julio de 2015 . [3] [4]
  77. ^ "Tim Olmstead" . 2001-09-12. Archivado desde el original el 9 de septiembre de 2018.
  78. Sparks, Bryan Wayne (19 de octubre de 2001). Chaudry, Gabriele "Gaby" (ed.). "Acuerdo de licencia para el material CP / M presentado en este sitio" . Lineo, Inc. Archivado desde el original el 8 de septiembre de 2018 . Consultado el 25 de julio de 2015 . […] Deje que este correo electrónico represente un derecho a usar, distribuir, modificar, mejorar y hacer disponible de manera no exclusiva la tecnología CP / M como parte del "Sitio Web CP / M no oficial" con sus mantenedores, desarrolladores y comunidad. Además, declaro que, como presidente y director ejecutivo de Lineo, Inc. , tengo derecho a ofrecer dicha licencia. […] Bryan Sparks […]
  79. ^ Chaudry, Gabriele "Gaby" (ed.). "El sitio web no oficial de CP / M" . Archivado desde el original el 3 de febrero de 2016.
  80. Swaine, Michael (1 de junio de 2004). "CP / M y DRM" . Diario del Dr. Dobb . CMP Media LLC . 29 (6): 71–73. # 361. Archivado desde el original el 9 de septiembre de 2018 . Consultado el 9 de septiembre de 2018 . [5]
  81. ^ Leyes, David (1 de octubre de 2014). "Código fuente CP / M de investigación digital temprana" . Museo de Historia de la Computación . Archivado desde el original el 27 de julio de 2015 . Consultado el 25 de julio de 2015 .

Lectura adicional [ editar ]

  • Zaks, Rodnay (1980). El CP / M manual con MP / M . ISBN de SYBEX Inc.  0-89588-048-2.
  • Conn, Richard (1985). ZCPR3 - El manual . ISBN 0-918432-59-6.
  • "Z-System Corner: décimo aniversario de ZCPR" . El diario de la computadora (54). Archivado desde el original el 29 de octubre de 2010.
  • "El origen del nombre de CP / M" . Archivado desde el original el 11 de junio de 2008.
  • Katie, Mustafa A. (14 de agosto de 2013). "Intel iPDS-100 usando CP / M-Video" .
  • "Hito IEEE en Ingeniería Eléctrica y Computación - CP / M - Sistema Operativo de Microcomputadoras, 1974" (PDF) . Museo de Historia de la Computación . 2014-04-25. Archivado (PDF) desde el original el 3 de abril de 2019 . Consultado el 3 de abril de 2019 .
  • "Triunfo de los empollones" . (NB. Esta serie PBS incluye los detalles de la elección de IBM de Microsoft DOS sobre el CP / M de Digital Research para IBM PC)
  • "Preguntas frecuentes sobre CP / M" . comp.os.cpm . [6]
  • "Kathryln Betty Strutynski" . El Monterey Herald . Obituarios. 2019-06-19. Archivado desde el original el 7 de febrero de 2020 . Consultado el 25 de febrero de 2020 . […] En NPS, a Kathryn se le asignó la responsabilidad del sistema operativo de VM […] Gary Kildall[…] Desarrolló una profunda amistad con Kathryn. Los dos […] realizaron cambios no autorizados en el código del sistema IBM VM-360 y 370. […] Ella […] se convirtió en la cuarta empleada de la empresa de Gary […] Cuando Gary se mostró reacio a vender CP / M a IBM, fue Kathryn a quien Bill Gates de Microsoft Corp. llamó a última hora de su casa y le pidió interceda ante Gary. Sin embargo, la venta no iba a ser, y el resto, como dicen, es historia. Kathryn […] continuó escribiendo código para nuevas versiones de CP / M. Trabajó en CP / M 2.0 y CP / M +. Hizo muchas contribuciones a CP / M 2.2 (el mayor generador de dinero para DRI), incluido un spooler en segundo plano para la impresión (multitarea simple) y guías del sistema. De hecho, en un libro, Kathryn es llamada "la madre de CP / M 2.2", por los cientos y cientos de horas que pasó con Dave Brown, John Pierce,Bob Silberstein y otros, perfeccionando el diseño original de Kildall. Kathryn también fue la directora de proyectos de CP / M-86 y Concurrent CP / M-86. […] "They Made America", […] versión de bolsillo. Kathryn pasó muchas horas trabajando con Sir Harold Evans actualizando el capítulo de su libro relacionado con el nacimiento de CP / M y las contribuciones de su amado Gary Kildall al campo de la computación. […]

Enlaces externos [ editar ]

  • El sitio web no oficial de CP / M (fundado por Tim Olmstead) - Incluye código fuente
  • Página de inicio de Gaby Chaudry para CP / M e historial informático : incluye materiales de ZCPR
  • Página principal de CP / M - Sitio de información técnica de John C. Elliott
  • Internos CP / M - Internos CP / M
  • Página CP / M de investigación digital de MaxFrame
  • CP / M en Curlie
  • ftp://ftp.uni-bayreuth.de/pub/pc/caldera/cpm2.2/
  • Cómo transferir disquetes CP / M