domingo, 29 de septiembre de 2013

Sistema operativo multics

¿Qué es?

Multics (Multiplexed Information and Computing Service) fue uno de los primeros sistemas operativos de tiempo compartido y tuvo una gran influencia en el desarrollo de los posteriores sistemas operativos.


Planes Iniciales.

Los planes iniciales y el desarrollo de Multics comenzó en 1964. Originalmente era un proyecto cooperativo liderado por Fernando J. Corbató del MIT, con General Electric y los laboratorios Bell. Los laboratorios Bell abandonaron en 1969, y en 1970 el negocio de computación de General Electric, incluyendo Multics, fue adquirido por Honeywell.

Multics fue concebido como un producto comercial por General Electric, y alcanzó este logro para Honeywell, pero no tuvo un gran éxito. Sin embargo, tuvo un gran impacto en el campo de la computación gracias a sus muchas ideas nuevas y valiosas. Aunque en su época recibió muchas críticas, la historia ha demostrado que eran infundadas.

Surgimiento de nuevas ideas.

Multics fue un de los primeros sistemas operativos que implementó un único nivel de almacenamiento para el acceso a los datos, desechando la clara distinción entre los archivos (llamadossegmentos en Multics) y los procesos en memoria.
La memoria de un proceso consistía solamente en segmentos que estaban mapeados en su espacio de direcciones; para leer o escribir en ellos, el proceso simplemente utilizaba instrucciones normales de la CPU, y el sistema operativo tenía cuidado de asegurarse que todas las modificaciones fueran guardadas en disco.
En la terminología POSIX, era como si cada archivo fuese mapeado; sin embargo, en Multics no existía el concepto de memoria de proceso, separado del de la memoria utilizada para mantener mapeados sobre los archivos, como hace Unix. Toda la memoria del sistema formaba parte de algún segmento, que aparecía en el sistema de archivos; incluida la memoria temporal del proceso, la pila del núcleo, etc.
Esto nos conduce a la segunda gran idea de Multics, enlace dinámico, mediante el que un proceso en ejecución puede solicitar que otros segmentos se añadan a su espacio de direcciones, estos segmentos pueden incluir código que puede ser ejecutado.
Con esta característica disponible, las aplicaciones automáticamente utilizaban la última versión de cualquier rutina externa que llamaban, estas rutinas estaban en otros segmentos, que se enlazaban dinámicamente sólo cuando un proceso intentaba ejecutarlas. Como diferentes procesos, pertenecientes a diferentes usuarios, podían utilizar diferentes reglas de búsqueda, diferentes usuarios podían automáticamente acabar utilizando diferentes versiones de las rutinas externas.

Historia del Multics.

Multics se desarrolló inicialmente para el mainframe GE-645, un sistema de 36 bits; después fue soportado por la serie de máquinas Honeywell 6180.
Los laboratorios Bell dejaron el proyecto en 1969; algunas de las personas que habían trabajado en su desarrollo se dedicaron a crear el sistema Unix. Aunque de un modo superficial, UNIX muestra la influencia de Multics en muchas áreas, incluido el nombre de los comandos. La filosofía de diseño fue muy diferente, centrándose en mantener el sistema tan pequeño y simple como fuese posible, y de este modo corrigiendo lo que se veía como una deficiencia de Multics. El nombre "Unix" (originalmente "Unics", por "UNIplexed information and Computing Service" en vez de "MULTIplexed Computer and Information Service") es un hack de "Multics". Se rumorea que la U de UNIX significia "Uniplexado" en oposición al concepto "Multiplexado" de Multics, resaltando la intención de los diseñadores de rechazar la complejidad de Multics en favor de una aproximación práctica más directa.
Honeywell compró la división de computación de General Electric, lanzó una mejor base hardware, y continuó el desarrollo del sistema hasta 1985. Se realizaron unas 80 instalaciones por valor de varios millones de dólares, en universidades, industria, y administración. El sistema universitario de Francia contó con varias instalaciones en los inicios de la década de 1980. Después Honeywell dejó de soportar Multics, los usuarios migraron a otros sistemas (incluyendo sistemas Unix).

La última máquina Multics fue apagada el 31 de octubre de 2000, en el Ministerio de Defensa de Canadá.