Los monitores y el software de las primeras computadoras personales.
Operaciones típicas de un monitor:
Por ejemplo, para mostrar el caracter '1' por pantalla:
Los monitores y el software de las primeras computadoras personales.
El manejo de la E/S estaba limitado por la poca variedad de dispositivos de E/S disponibles.
Un problema era la falta de flexibilidad al manejar el teclado, la pantalla y el almacenamiento.
Otro problema era pérdida de performance al delegar en el S.O. la gestión de la E/S.
Entrada por Teclado: Portabilidad vs. Flexibilidad
Salida de Video: Portabilidad vs. Funcionalidad vs. Performance
Uno de los pricipales servicios prestados por CP/M era un sistema de archivos portable.
Cerca del 75% de las llamadas al sistema estaban relacionadas con el sistema de archivos.
El sistema de archivos estaba basado en el disco flexible de 8 pulgadas.
Cada sistema de archivo se didive en:
Contiene el código binario para iniciar la computadora y cargar el Sistema Operativo.
Las versiones cargables del BIOS, BDOS y CPP se escriben en este área. No son parte de ningún archivo y son invisibles para el usuario.
Al iniciar la computadora, un programa en la ROM lee estos archivos y los carga en memoria, este proceso se conoce como "booteo".
Es de tamaño fijo y contiene 64 entradas de 32 bytes cada una.
Cada entrada almacena información sobre un archivo (aunque puede ser necesario utilizar varias entradas para un mismo archivo)
Sólo hay un directorio sin subdirectorios.
No se almacena información sobre fechas ni horas.
No se almacena el tamaño del archivo (hay que calcularlo).
Si el directorio se llena, se llena el disco.
El código binario debe estar en memoria, el proceso de carga lo efectúa normalmente el CCP.
Los programas se cargan a partir de la dirección 100H.
se les asigna espacio de pila en la memoria alta antes del S.O.
El proceso se ejecuta de principio a fin, si requiere E/S el procesador permanece ocioso hasta finalizar la operación (E/S programada).
Se carga un solo programa en memoria. No existe detección o prevención de colisiones entre la pila y el programa.
El S.O. se coloca en la memoria alta y en caso de ser necesario se puede desalojar al CCP para tener más memoria de programa.
No contempla el heap, éste lo maneja el programa de aplicación. Si el programa no cabe en memoria pricipal puede usar overlays.