THE

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

El sistema de multiprogramación THE fue un sistema operativo designado por un equipo liderado por Edsger W. Dijkstra, descrito en monografías entre 1965 y 1966 y publicado en 1968. Dijkstra nunca le dio el nombre "THE", sino que esto fue solamente una abreviatura de "Technische Hogeschool Eindhoven", el nombre original de la universidad tecnológica Eindhoven, situada en Holanda. El sistema operativo THE fue principalmente un sistema BATCH que soportaba multi-tarea, aunque no fue diseñadoo como tal.

THE introdujo las primeras formas de segmentación de memoria por software, liberando a los programadores de tener que direccionar sobre la memoria física. Esto se logró utilizando una versión modificada del compilador ALGOL (el único lenguaje de programación soportado por el sistema de Dijkstra) para generar llamadas automáticas a las rutinas de sistema, asegurando que la información requerida estuviese en memoria, intercambiándose de ser necesario.

El sistema tenía 6 estratos::

5 Operador de THE

4 Programas del usuario

3 Administración de Entrada/Salida

2 Comunicación entre el operador y el proceso

1 Administración de la memoria y el tambor magnético

0 Distribución del procesador y multiprogramación


El estrato 0 trabajaba con la distribución del procesador, cambiando entre procesos cuando ocurrían interrupciones o los relojes expiraban. Sobre el estrato 0, el sistema constaba de procesos secuenciales, cada uno de los cuales podía programarse sin tener que preocuparse por el hecho de que múltiples procesos estuvieran corriendo en un solo procesador. En otras palabras, el estrato 0 ofrecía la multiprogramación básica de la CPU.

El estrato 1 realizaba el manejo de memoria. Este distribuía espacio para procesos contenidos en la memoria central y en un tambor de 512K palabras que se usaba para contener partes de procesos (páginas) para las cuales no había espacio en la memoria central. Sobre el estrato 1, los procesos no tenía que preocuparse de si estaban en la memoria o en el tambor; el software del estrato 1 se hacía cargo de asegurar que las páginas se trajeran a la memoria siempre que se necesitaran.

El estrato 2 manejaba la comunicación entre cada proceso y la consola de operador.

El estrato 3 se hacía cargo de manejar los dispositivos de E/S y de separar la información en flujo que entraba y salí de ellos. Sobre el estrato 3 cada proceso podía trabajar con dispositivos de E/S abstractos con propiedades agradables, en vez de dispositivos reales con muchas peculiaridades

El estrato 4 era donde se encontraban los programas de los usuarios. No tenían que preocuparse por el manejo de los procesos, memoria, consola o E/S. El proceso operador del sistema se localizaba en el estrato 5.