Sprite es un sistema operativo distribuido experimental de tipo Unix desarrollado en la Universidad de California, Berkeley por el grupo de investigación de John Ousterhout entre 1984 y 1992. Entre sus características más destacadas se encuentran la compatibilidad con una única imagen del sistema en clústeres de ordenadores [1] y la introducción del sistema de archivos estructurado en registros . El lenguaje de programación Tcl también se originó en este proyecto.
Trabajos tempranos
Los primeros trabajos sobre Sprite se basaban en la idea de hacer que el sistema operativo fuera más "consciente de la red" y, por lo tanto, invisible para el usuario. El área principal de trabajo fue la creación de un nuevo sistema de archivos de red que hacía un uso intensivo del almacenamiento en caché local del lado del cliente para mejorar el rendimiento. Después de abrir el archivo y algunas lecturas iniciales, la red solo se utiliza a pedido y la mayoría de las acciones del usuario se realizan contra el caché. Utilidades similares permiten mapear dispositivos remotos en el espacio de la computadora local, lo que permite la impresión en red y tareas similares.
Muchos de los archivos clave de Unix se basan en la red, incluidos elementos como el archivo de contraseñas. Todas las máquinas de una red también comparten el directorio raíz. Otras utilidades comunes de Unix, como fingerse reescribieron para que también sean compatibles con la red, y enumeran a todas las personas conectadas a través de la red. Esto hace que una red Sprite parezca como si fuera un único gran sistema de tiempo compartido o una imagen de un solo sistema .
Otra característica clave de Sprite es la migración de procesos , que permite mover programas entre máquinas en cualquier momento. El sistema mantiene una lista de máquinas y su estado, y mueve automáticamente los procesos a las máquinas inactivas para mejorar el rendimiento local. Los procesos también pueden "expulsarse" de las máquinas para mejorar su rendimiento, lo que hace que el iniciador original los mueva a otra máquina de la red o vuelva a tomar el control de ellos localmente. Las tareas largas (como compilar el sistema Sprite) pueden aparecer muy rápidamente.
Desarrollo adicional
El trabajo sobre el Sprite "temprano" descrito anteriormente finalizó alrededor de 1987, pero se mejoró [ aclaración necesaria ] durante el año siguiente. A partir de 1990, Sprite se utilizó como base para el desarrollo del primer sistema de archivos estructurado en registros (LFS), cuyo desarrollo continuó hasta aproximadamente 1992. LFS aumenta drásticamente el rendimiento de escritura de archivos a expensas del rendimiento de lectura. Con Sprite, este equilibrio es particularmente útil porque la mayoría del acceso de lectura se almacena en caché de todos modos, es decir, los sistemas Sprite generalmente realizan menos lecturas que un sistema Unix normal. Los sistemas similares a LFS también permiten una recuperación de fallas mucho más fácil, lo que se convirtió en un enfoque principal del proyecto durante este período. La experimentación adicional con sistemas de archivos en franjas , tanto en franjas en diferentes máquinas como en grupos de unidades, continuó hasta aproximadamente 1994.
Discontinuación
Sprite no era un sistema de microkernel y sufre los mismos problemas que otros sistemas Unix en términos de complejidad de desarrollo, volviéndose cada vez más difícil de desarrollar a medida que se añadían más funciones. [2] En los años 90, estaba sufriendo y el pequeño equipo que apoyaba el proyecto simplemente no era capaz de seguir el ritmo de los rápidos cambios que se producían en Unix durante esa época. El proyecto se fue cerrando lentamente en 1994.
Véase también
Referencias
- ^ "Duende".
- ^ Ousterhout, John (1992). "Retrospectiva de Sprite". Universidad de California en Berkeley. Archivado desde el original el 25 de febrero de 2015. Consultado el 5 de octubre de 2015.
... el núcleo de Sprite se volvió cada vez más difícil de mantener a medida que envejecía
.
Enlaces externos
- Página de inicio de Sprite
- Arranque de una imagen de disco duro Sprite en una DECstation 5000/200 emulada
- Código fuente de Sprite en Github