Ultrix [1] (oficialmente ULTRIX en mayúsculas ) es el nombre comercial de los sistemas operativos Unix nativos discontinuados de Digital Equipment Corporation (DEC) para PDP-11 , VAX , MicroVAX [2] y DECstations .
El desarrollo inicial de Unix se produjo en equipos DEC, en particular en los sistemas DEC PDP-7 y PDP-11 (procesador de datos programable). Los ordenadores DEC posteriores, como su VAX, también ofrecían Unix. [3] El primer puerto para VAX, UNIX/32V , se terminó en 1978, poco después del anuncio de VAX en octubre de 1977, para el que, en ese momento, DEC solo suministraba su propio sistema operativo propietario, VMS .
El Grupo de Ingeniería Unix (UEG) de DEC fue fundado por Bill Munson con Jerry Brenner y Fred Canter, ambos del grupo de Ingeniería de Servicio al Cliente de DEC, Bill Shannon (de la Universidad Case Western Reserve ) y Armando Stettner (de Bell Labs ). Otros miembros posteriores del UEG fueron Joel Magid, Bill Doll y Jim Barclay, reclutados de los grupos de marketing y gestión de productos de DEC.
Bajo la dirección de Canter, UEG lanzó V7M , una versión modificada de Unix 7th Edition (qv).
En 1988, The New York Times informó que Ultrix era compatible con POSIX . [1]
Shannon y Stettner trabajaron inicialmente en el soporte de bajo nivel para CPU y controladores de dispositivos en UNIX/32V, pero rápidamente se concentraron en trabajar con 4BSD de la Universidad de California, Berkeley . Bill Joy de Berkeley llegó a New Hampshire para trabajar con Shannon y Stettner para terminar una nueva versión de BSD. [ cita requerida ] La máquina de UEG fue la primera en ejecutar el nuevo Unix, etiquetado como 4.5BSD, al igual que la cinta que Bill Joy se llevó consigo. La idea era que 5BSD sería la siguiente versión; los abogados de la universidad pensaron que sería mejor llamarlo 4.1BSD. Después de completar 4.1BSD, Bill Joy dejó Berkeley para trabajar en Sun Microsystems . Shannon luego se mudó de New Hampshire para unirse a él. Stettner se quedó en DEC y más tarde concibió y comenzó el proyecto Ultrix.
Poco después de que IBM anunciara sus planes para un producto UNIX nativo, Stettner y Bill Doll presentaron planes para que DEC pusiera a disposición de sus clientes un producto Unix VAX nativo; el fundador de DEC, Ken Olsen, estuvo de acuerdo.
El primer producto UNIX nativo de DEC fue V7M (modificado) o V7M11 para el PDP-11 y se basaba en la versión 7 de Unix de Bell Labs. V7M fue desarrollado por el Grupo de Ingeniería Unix (UEG) original de DEC; el trabajo fue realizado principalmente por Fred Canter y Jerry Brenner, con sus compañeros de equipo Stettner, Bill Burns, Mary Anne Cacciola y Bill Munson. V7M contenía muchas correcciones para el núcleo, incluyendo soporte para espacios de datos e instrucciones separados, [4] trabajo significativo para la recuperación de errores de hardware y muchos controladores de dispositivos. Se invirtió mucho trabajo en producir una versión que se pudiera iniciar de manera confiable desde muchas unidades de cinta o disco. V7M era muy respetado en la comunidad Unix. UEG evolucionó hasta convertirse en el grupo que más tarde desarrolló Ultrix.
El primer producto UNIX VAX nativo de DEC fue Ultrix-32, basado en 4.2BSD con algunas características no relacionadas con el núcleo de System V , y fue lanzado en junio de 1984. Ultrix-32 fue principalmente una creación de Armando Stettner. Proporcionaba un Unix VAX nativo basado en Berkeley en una amplia gama de configuraciones de hardware sin la necesidad de acceder a las fuentes del núcleo. Un objetivo adicional era permitir un mejor soporte por parte de los ingenieros de soporte de sistemas y software de campo de DEC a través de un mejor soporte de hardware, mensajes del sistema y documentación. También incorporó varias modificaciones y scripts de la experiencia de Usenet/UUCP. Más tarde, Ultrix-32 incorporó soporte para DECnet [5] y otros protocolos propietarios de DEC como LAT . No soportaba VAXclustering . Dada la licencia Unix de Western Electric /AT&T, DEC (y otros) se vieron restringidos a vender licencias solo binarias. Una parte significativa del trabajo de ingeniería fue hacer que los sistemas fueran relativamente flexibles y configurables a pesar de su naturaleza solo binaria.
DEC proporcionó Ultrix en tres plataformas: minicomputadoras PDP-11 (donde Ultrix era uno de los muchos sistemas operativos disponibles de DEC), computadoras basadas en VAX (donde Ultrix era una de las dos opciones principales de SO) y las estaciones de trabajo DECstation y los servidores DECsystem , que solo utilizaban Ultrix. Nótese que la DECstation y los productos DECsystem posteriores (a diferencia de la línea DECsystem original de DEC ) usaban procesadores MIPS y eran anteriores a los sistemas basados en Alpha , que eran mucho más recientes. [6]
El producto V7m fue posteriormente renombrado como Ultrix-11 [7] para establecer la familia con Ultrix-32 , pero cuando el PDP-11 desapareció de la vista, Ultrix-32 pasó a ser conocido simplemente como Ultrix . Cuando se lanzaron las versiones MIPS de Ultrix, las versiones VAX y MIPS se denominaron VAX/ULTRIX y RISC/ULTRIX respectivamente. Se puso mucho énfasis de ingeniería en la capacidad de soporte y las operaciones confiables, incluido el trabajo continuo en el soporte de CPU y controlador de dispositivo (que, en su mayor parte, también se envió a UC Berkeley), soporte y recuperación de fallas de hardware con mejoras en el texto de los mensajes de error, documentación y trabajo general tanto a nivel de programa de sistemas como de núcleo. Más tarde, Ultrix-32 incorporó algunas características de 4.3BSD e incluyó opcionalmente DECnet y SNA [1] [8] además del estándar TCP/IP y los protocolos SMTP y Mail-11 de DEC .
Cabe destacar que Ultrix implementó las facilidades de comunicación entre procesos (IPC) que se encuentran en System V ( canalizaciones con nombre , mensajes , semáforos y memoria compartida ). Mientras que el Unix convergente de la alianza Sun y AT&T (que generó la Open Software Foundation u OSF), lanzado a fines de 1986, puso características BSD en System V, DEC, como se describe en los planes originales de Ultrix de Stettner, tomó lo mejor de System V y lo agregó a una base BSD.
Originalmente, en las estaciones de trabajo VAX, Ultrix-32 tenía un entorno de escritorio llamado UWS, Ultrix Worksystem Software, que se basaba en X10 y en el Ultrix Window Manager . Más tarde, se añadió la versión 11 del X Window System (X11), que se difundió ampliamente, utilizando un gestor de ventanas y un kit de herramientas de widgets llamado XUI (X User Interface), que también se utilizó en las versiones VMS de la época. Finalmente, Ultrix también proporcionó el kit de herramientas Motif y el Motif Window Manager .
Ultrix se ejecutaba en sistemas multiprocesador de las familias VAX y DECsystem. Ultrix-32 admitía discos y cintas SCSI [9] y también periféricos patentados de interconexión de sistemas de almacenamiento digital y CI que empleaban el Protocolo de control de almacenamiento masivo de DEC , aunque carecía del administrador de bloqueo distribuido OpenVMS, no admitía acceso simultáneo desde múltiples sistemas Ultrix. DEC también lanzó un producto de combinación de hardware y software llamado Prestoserv que aceleraba el servidor de archivos NFS para permitir un mejor rendimiento para las estaciones de trabajo sin disco para comunicarse con un host Ultrix de servidor de archivos. El núcleo admitía multiprocesamiento simétrico aunque no era completamente multiproceso basado en el trabajo previo a Ultrix de Armando Stettner y el trabajo anterior de George H. Goble en la Universidad de Purdue. Como tal, había un uso liberal del bloqueo y algunas tareas solo podían ser realizadas por CPU particulares (por ejemplo, el procesamiento de interrupciones ). Esto no era poco común en otras implementaciones de SMP de ese momento (por ejemplo, SunOS ). Además, Ultrix tardó en soportar muchas de las capacidades de los sistemas Unix nuevos o emergentes que se encontraban en los sistemas Unix de la competencia (por ejemplo, nunca admitió bibliotecas compartidas o ejecutables vinculados dinámicamente ); y hubo una demora en la implementación de bind, llamadas al sistema 4.3BSD y bibliotecas. [ cita requerida ] La ausencia de soporte de archivos mapeados en memoria se consideró una deficiencia particular de Ultrix en comparación con sus competidores a principios de los años 1990. [10] : 50
Como parte de su compromiso con OSF, Armando Stettner fue a los laboratorios de investigación de Cambridge de DEC para trabajar en la adaptación de OSF/1 a la estación de trabajo DECstation 3100 [11] basada en RISC de DEC . Esta se lanzó en 1991 con un núcleo basado en Mach para la arquitectura MIPS. Se llevó a cabo una adaptación de Ultrix a Alpha durante el desarrollo inicial de la arquitectura Alpha, pero nunca se lanzó como producto. [12] Más tarde, DEC reemplazó Ultrix con OSF/1 en Alpha , poniendo fin al desarrollo de Unix en las plataformas MIPS y VAX.
La última versión importante de Ultrix fue la 4.5 en 1995, que admitía todas las DECstations y VAXen que ya eran compatibles. Hubo algunos parches posteriores para el año 2000 .
WordMARC , un procesador de textos con orientación científica, estaba entre los paquetes de aplicaciones disponibles para Ultrix. [13]
Los siguientes proyectiles fueron suministrados con Ultrix: [14]