RC 4000 Sistema de Multiprogramación

El RC 4000 Sistema de Multiprogramación era un sistema operativo desarrollado para el RC 4000 miniordenador en 1969. Es históricamente notable por ser la primera tentativa de dividir un sistema operativo en un grupo de programas que se relacionan se y comunican vía un mensaje que pasa el grano. Aunque RC 4000 él mismo tuviera no mucho éxito era sin embargo muy influyente, provocando el concepto del micrograno que dominó la investigación del sistema operativo durante los años 1970 y los años 80. El sistema también se conoce como el Monitor y, de manera algo confusa, simplemente RC 4000 según la referencia. Para la claridad, este artículo usará el término el Monitor.

El monitor fue creado en gran parte por un programador, Por Brinch Hansen, que trabajó en Regnecentralen donde el RC 4000 se estaba diseñando. Leif Svalgaard participó en la realización y las pruebas del Monitor. Brinch Hansen encontró que ningún sistema operativo existente convenía a la nueva máquina y era cansado de la necesidad de adaptar sistemas existentes. Sintió que una mejor solución era construir un grano subyacente, que se refirió como al núcleo, que podría ser usado para aumentar un sistema operativo de programas de interacción. Unix, por ejemplo, usa pequeños programas de interacción para muchas tareas, transfiriendo datos a través de un sistema conocido como tubos. Sin embargo una cantidad grande del código fundamental se sepulta en el propio grano, notablemente cosas como control del programa y sistemas de archivos. El monitor quitaría este código también, haciendo casi el sistema entero un juego de programas que se relacionan, reduciendo el grano (núcleo) a unas comunicaciones y sistema de apoyo sólo.

El monitor usó un sistema parecido a un tubo de la memoria compartida como la base de sus comunicaciones de interproceso. Los datos para enviarse de un proceso al otro se copiaron en un parachoques de memoria vacío, y cuando el programa de recepción estaba listo, échese atrás otra vez. El parachoques se devolvió entonces al fondo. Los programas tenían API muy simple para pasar datos, usando un juego asincrónico de cuatro métodos. Las aplicaciones clientes envían datos con y podrían bloquear opcionalmente la utilización. Los servidores usaron un juego que refleja de llamadas, y. Note que los mensajes tenían un "camino de vuelta implícito" para cada mensaje enviado, haciendo la semántica más bien una llamada a procedimiento remoto que el Mach completamente sistema de I/O-based.

El monitor dividió el espacio de aplicación en dos; los procesos internos eran programas tradicionales, comenzados por la solicitud, mientras los programas externos eran con eficacia controladores de dispositivos. Los procesos externos realmente fueron manejados fuera del espacio del usuario por el núcleo, aunque se pudieran comenzar y pararse justo como cualquier otro programa. Los programas internos se comenzaron en el contexto del "padre" que los lanzó, por tanto cada usuario podría aumentar con eficacia su propio sistema operativo comenzando y parando programas en su propio contexto.

La programación se dejó completamente a los programas, de ser requeridos en absoluto (en los años 1960, la multiasignación era un rasgo discutible). Un usuario podría accancar una sesión en un ambiente de la multitarea preferente, mientras el otro podría comenzar en un modo del usuario solo a dirigir el procesamiento por lotes con la velocidad más alta. La programación de tiempo real se podría apoyar enviando mensajes a un proceso del temporizador que sólo volvería en el momento oportuno.

El monitor resultó tener el rendimiento realmente terrible. La mayor parte de esto era debido al coste de IPC, un problema que ha molestado desde entonces la mayor parte de microgranos. Bajo el Monitor los datos se copiaron dos veces para cada mensaje, y la memoria que se maneja en el RC 4000 no era particularmente rápida. Otra área de la preocupación seria lanzaba y mataba programas para manejar solicitudes, que pasaron todo el tiempo.

Estas dos áreas han visto la gran mayoría del desarrollo desde la liberación del Monitor, llevando diseños más nuevos a usar el hardware para apoyar la mensajería, y apoyando hilos dentro de aplicaciones para reducir tiempos del lanzamiento. Por ejemplo, el Mach requirió que una unidad de la dirección de memoria mejorara la mensajería usando el protocolo copy-write y trazando un mapa (en vez de copiar) datos del proceso al proceso. El mach también usó el ensartamiento extensivamente, permitiendo los programas externos o servidores en términos más modernos, para accancar fácilmente a nuevos tratantes para solicitudes de entrada. De todos modos, el Mach IPC era demasiado lento para hacer el micrograno acercarse prácticamente útil. Esto sólo cambió cuando el micrograno de Liedtke L4 demostró una mejora del orden de magnitud de gastos generales IPC.

Véase también



Buscar