Sunteți pe pagina 1din 9

HISTORIA DEL VMS

En 1975, Digital se dio cuenta de que sus competidores estaban desarrollando procesadores de 32 bits y que esta tecnologa le quitara clientes a la arquitectura 16 bits de PDP. Gordon Bell, una figura legendaria en la historia de la computacin y entonces vicepresidente de ingeniera de Digital, coordin el desarrollo del procesador de 32 bits, al cual Digital eventualmente nombr VAX.

Gordon Bell Para ese entonces, Cutler, que ya una estrella dentro de Digital, form parte del equipo de desarrollo inicial de VAX. Digital encarg a Cutler, adems de a Dick Hustvedt y a Peter Lipman, el diseo del sistema operativo del VAX, el VMS. Los objetivos principales del diseo del hardware de VAX incluan una compatibilidad con los procesadores predecesores PDP-11 y la suficiente flexibilidad para que VAX fuera la base tanto de ordenadores de escritorio, como de estaciones de trabajo de bajo rendimiento, as como de servidores empresariales. Digital tambin hizo que VMS fuese compatible con el predecesor RSX-11M y dise VMS para ejecutar en mquinas de diferentes tamaos. De este perodo de desarrollo, Digital menciona en su historia empresarial, que estaba apostando su futuro en VAX y VMS. Como una curiosa repeticin de la declaracin de Digital, Bill Gates anunci recientemente que Microsoft "apostaba su futuro" en NT 5.0.

En 1977, Digital present VAX-11/780 y VMS 1.0 y comenz a ofrecer el producto al mercado en 1978. Como lder del proyecto y uno de los arquitectos principales de VMS, Cutler continu trabajando en las sucesivas versiones de VMS hasta que se empez a aburrir. En 1981, Cutler insinu que quera dejar Digital. Para retener a su desarrollador estrella, Digital form un grupo de cerca de 200 ingenieros de hardware y software bajo la direccin de Cutler. Cutler instal a su equipo a Seattle y comenz un centro de desarrollo. El objetivo de este grupo de lite era disear una nueva arquitectura CPU y un nuevo sistema operativo que llevase a Digital a

los aos 90s. Digital denomin este proyecto de hardware Prism, y a su sistema operativo, Mica.

Pero en 1988, Digital cancel el proyecto de Cutler y despidieron a muchos de sus miembros. Cutler decidi dejar Digital, pero antes de que lo hiciera, Microsoft se di cuenta de que tenan una oportunidad ideal para contratar a Cutler. En la poca en que Cutler dej Digital, la versin ms reciente de VMS era la 5.0 (la versin actual es la 7.1).

VMS
VMS puede referirse a:

Las siglas de Virtual Memory System, un sistema de memoria virtual, una tarea del sistema operativo en la que se usa un espacio de intercambio (swap) para que los procesos crean que hay ms memoria RAM que la disponible. OpenVMS, o simplemente VMS sistema operativo de Hewlett-Packard, originalmente creado por Digital Equipment Corporation (DEC) para sus mini-computadoras VAX.

9. Caso De Estudio: VMS El sistema operativo VMS (Virtual Memory System) es uno de los ms robustos en el mercado, aunque es propietario de la compaia Digital Equipment Corporation. Actualmente con su versin OpenVMS 5.x existe para los procesadores de las mquinas VAX (CISC) y con el Alpha-chip (RISC). Ofrece un amplio conjunto de comandos a travs de su intrprete Digital Command Language (DCL), utilidades de red (DECnet), formacin de 'clusters' de computadoras para compartir recursos, correo electrnico y otras facilidades. Es un sistema operativo multiusuario/multitarea monoltico. El manejo de archivos en VMS El sistema de archivos de VMS es jerrquico aunque la descripcin de sus senderos tiene una sintaxis propia. En la figura 9.1 se muestra un ejemplo. Los archivos en VMS se referencan con la sintaxis 'nombre.tipo;versin', donde 'nombre' es una cadena de caracteres alfanumricos, 'tipo' es la extensin del archivo y se usa generalmente para describir a qu aplicacin pertenece ('pas'=pascal, 'for' fortran, etc.) y 'versin' es un nmero entero que el sistema se encarga de asignar de acuerdo al nmero de veces que el archivo ha sido modificado. Por ejemplo, si se ha editado tres veces el archivo 'lee.pas', seguro que existirn las versiones 'lee.pas;1', 'lee.pas;2' y 'lee.pas;3'. De esta forma el usuario obtiene automticamente una 'historia' de sus archivos. La proteccin de los archivos se realiza mediante listas de control de acceso (Access

Control Lists). Se pueden establecer protecciones hacia el dueo del archivo, hacia los usuarios privilegiados (system), hacia los usuarios que pertenecen al mismo grupo de trabajo que el dueo y hacia el resto del mundo. Para cada uno de los anteriores usuarios se manejan cuatro permisos: lectura, escritura, ejecucin y borrado. Por ejemplo, el siguiente comando: $ set protection=(S:rwed,O:rwed,G:d:W:e) lee.pas establece que el archivo 'lee.pas' dar todos los permisos al sistema (S:rwed) y al dueo (O:rwed), mientras que a los miembros del grupo de trabajo le da permiso de borrar (G:d) y al resto del mundo permiso de ejecucin (W:e). [VMS89]. Una lista de los comandos sobre archivos ms tiles en VMS se mostr en la tabla 8.2, que son bastante mnemnicos en contraste con los comandos crpticos de UNIX. En VMS, a travs de su 'Record Management System' (RMS) se obtienen las facilidades para la manipulacin de archivos tanto locales como en red. En el RMS, se provenn facilidades tales como: mltiples modos de acceso a archivos para lograr accesarlos en forma concurrente y permitiendo su consistencia e integridad, establecimiento de candados automticos al momento de apertura para evitar actualizaciones errneas y optimizacin interna en las operaciones de entrada/salida al accesar los archivos. En el caso de que los archivos no son locales, sino remotos, se utiliza internamente el protocolo llamado 'Data Access Protocol' (DAP). Manejo de procesos en VMS Soporta muchos ambientes de usuario tales como : Tiempo crtico, desarrollo de programas interactivos, batch, ya sea de manera concurrente, independiente o combinado. El calendarizador VAX/VMS realiza calendarizacin de procesos normales y de tiempo real, basados en la prioridad de los procesos ejecutables en el Balance Set.Un proceso normal es referido a como un proceso de tiempo compartido o proceso background mientras que los procesos en tiempo real se refieren a los de tiempo crtico. En VMS los procesos se manejan por prioridades y de manera apropiativa. Los procesos se clasifican de la prioridad 1 a la 31, siendo las primeras quince prioridades para procesos normales y trabajos en lote, y de la 16 a la 31 para procesos privilegiados y del sistema. Las prioridades no permanecen fijas todo el tiempo sino que se varan de acuerdo a algunos eventos del sistema. Las prioridades de los procesos normales pueden sufrir variaciones de hasta 6 puntos, por ejemplo, cuando un proceso est esperando un dispositivo y ste fue liberado. Un proceso no suelta la unidad central de procesamiento hasta que exista un proceso con mayor prioridad. El proceso residente de mayor prioridad a ser ejecutado siempre se selecciona para su ejecucin.Los procesos en tiempo crtico son establecidos por el usuario y no pueden ser alterados por el sistema. La prioridad de los procesos normales puede ser alterada por el sistema para optimizar overlap de computacin y otras actividades I/O.

Un aspecto importante del planificador de procesos en VMS es la existencia de proceso 'monitor' o 'supervisor', el cual se ejecuta peridicamente para actualizar algunas variables de desempeo y para re-calendarizar los procesos en ejecucin. Existen versiones de VMS que corren en varios procesadores, y se ofrece libreras para crear programas con mltiples 'threads'. En especfico se proveen las interfaces 'cma', 'pthread' y 'pthread-exception-returning'. Todas estas libreras se conocen como DECthreads e incluyen libreras tales como semforos y colas atmicas para la comunicacin y sincronizacin entre threads. El uso de threads sirve para enviar porciones de un programa a ejecutar en diferentes procesadores aprovechando as el multiproceso. Servicios del Sistema para el Control de Procesos

Crear un proceso:

El servicio de creado de sistema permite a un proceso crear otro. El proceso creado puede ser un subproceso o un proceso completamente independiente. (se necesitan privilegios para hacer esto).

Suspender un proceso:

Esto es que le permite a un proceso suspenderse a s mismo o a otro (tambin necesita tener privilegios).

Reanudar un proceso:

Permite a un proceso reanudar a otro si es que este tiene privilegios para hacerlo.

Borrar un proceso:

Permite que se borre el proceso mismo o a otro si es que es un subproceso, o si no tiene que tener privilegios de borrado.

Dar Prioridad:

Permite que el proceso mismo se ponga prioridad o a otros, para el calendarizador.

Dar el modo de espera:

Permite que el proceso escoja de dos modos: el modo por default es cuando un proceso requiere un recurso y est ocupado y espera a que est desocupado, y el otro modo es cuando est ocupado el recurso, el proceso no espera y notifica al usuario que el recurso no se encuentra disponible en ese momento en lugar de esperar.

Hibernar:

Es cuando un proceso se hace inactivo pero est presente en el sistema. Para que el proceso continue necesita de un evento para despertar.

Wake:

Esto activa a los procesos que estan hibernando.

Exit:

Es cuando se aborta un proceso.

Dar nombre al proceso:

Este puede dar un nombre al proceso mismo o cambiarlo (el PCB contiene el nombre). Manejo de memoria en VMS El sistema operativo VMS utiliza un esquema de manejo de memoria virtual combinado de segmentacin paginada que se describe exactamente como se vi en el captulo de administracin de memoria de este trabajo. Lo novedoso en VMS es que usa un doble esquema de paginacin cuando las pginas se van a intercambiar de memoria RAM hacia disco duro. En primer lugar, cuando una pgina necesita cargarse a RAM sta se carga junto con varias pginas que estn adyacentes, justificando esto por medio de la teora del conjunto de trabajo que especifica que es muy probable que las referencias a memoria en el futuro inmediato caern precisamente en esas pginas. De este modo, se tiene un doble algoritmo: al hecho de cargarse las pginas cuando se necesitan se le llama 'paginacin por demanda' y al hecho de traerse las otras pginas del conjunto de trabajo por anticipado se le llama 'paginacin anticipada'. El manejo de entrada/salida en VMS En VMS, se usan nombres 'lgicos' para describir a los dispositivos existentes en el sistema. Un concepto importante tanto en archivos como en dispositivos es el 'User Identification Code' (UIC) que permite establecer protecciones adicionales a los ACL. En los dispositivos se manejan cinco tipos de permisos: leer, escribir, ejecutar, borrar y controlar. No todos los permisos se aplican a todos los dispositivos. El permiso de 'control' no se maneja explcitamente sino que se otorga por omisioacute;n al dueo y al sistema. Los permisos de los discos, unidades de cinta y otros dispositivos son establecidos por el administrador del sistema. Los dispositivos reciben nombres 'lgicos', por ejemplo, para una unidad de cinta el nombre puede ser 'MTA0'. System Interface" (SCSI) que son ampliamente usados en diversas plataformas. El intercambio de datos entre la unidad central de proceso y los perifricos se lleva a cabo a travs de los 'buses' normalizados UNIBUS y MASSBUS.

VMS

El sistema operativo VMS (Virtual Memory System) es uno de los ms robustos en el mercado, aunque es propietario de la compaia Digital Equipment Corporation. Actualmente con su versin OpenVMS 5.x existe para los procesadores de las mquinas VAX (CISC) y con el Alpha-chip (RISC). Ofrece un amplio conjunto de comandos a travs de su intrprete Digital Command Language (DCL), utilidades de red (DECnet), formacin de 'clusters' de computadoras para compartir recursos, correo electrnico y otras facilidades. Es un sistema operativo multiusuario/multitarea monoltico. El manejo de archivos en VMSEl sistema de archivos de VMS es jerrquico aunque la descripcin de sus senderos tiene una sintaxis propia. Los archivos en VMS se referencan con la sintaxis 'nombre.tipo;versin', donde 'nombre' es una cadena de caracteres alfanumricos, 'tipo' es la extensin del archivo y se usa generalmente para describir a qu aplicacin pertenece ('pas'=pascal, 'for' fortran, etc.) y 'versin' es un nmero entero que el sistema se encarga de asignar de acuerdo al nmero de veces que el archivo ha sido modificado. Por ejemplo, si se ha editado tres veces el archivo 'lee.pas', seguro que existirn las versiones 'lee.pas;1', 'lee.pas;2' y 'lee.pas;3'. De esta forma el usuario obtiene automticamente una 'historia' de sus archivos. La proteccin de los archivos se realiza mediante listas de control de acceso (Access Control Lists). Se pueden establecer protecciones hacia el dueo del archivo, hacia los usuarios privilegiados (system), hacia los usuarios que pertenecen al mismo grupo de trabajo que el dueo y hacia el resto del mundo. Para cada uno de los anteriores usuarios se manejan cuatro permisos: lectura, escritura, ejecucin y borrado. Por ejemplo, el siguiente comando: $ set protection=(S:rwed,O:rwed,G:d:W:e) lee.pas establece que el archivo 'lee.pas' dar todos los permisos al sistema (S:rwed) y al dueo (O:rwed), mientras que a los miembros del grupo de trabajo le da permiso de borrar (G:d) y al resto del mundo permiso de ejecucin (W:e). [VMS89]. Una lista de los comandos sobre archivos ms tiles en VMS son bastante mnemnicos encontraste con los comandos crpticos de UNIX. En VMS, a travs de su 'Record Management System' (RMS) se obtienen las facilidades para la manipulacin de archivos tanto locales como en red. En el RMS, se provenn facilidades tales como: mltiples modos de acceso a archivos para lograr accesarlos en forma concurrente y permitiendo su consistencia e integridad, establecimiento de candados automticos al momento de apertura para evitar actualizaciones errneas y optimizacin interna en las operaciones de entrada/salida al accesar los archivos. En el caso de que los archivos no son locales, sino remotos, se utiliza internamente el protocolo llamado 'Data Access Protocol' (DAP). Manejo de procesos en VMSSoporta muchos ambientes de usuario tales como : Tiempo crtico, desarrollo de programas interactivos, batch, ya sea de manera concurrente, independiente o combinado. El calendarizador VAX/VMS realiza calendarizacin de procesos normales y de tiempo real, basados en la prioridad de los procesos ejecutables en el Balance Set.Un proceso normal se refiere a un proceso de tiempo compartido o proceso background mientras que los procesos en tiempo real se refieren a los de tiempo crtico. En VMS los procesos se manejan por prioridades y de manera apropiativa. Los procesos se

clasifican de la prioridad 1 a la 31, siendo las primeras quince prioridades para procesos normales y trabajos en lote, y de la 16 a la 31 para procesos privilegiados y del sistema. Las prioridades no permanecen fijas todo el tiempo sino que se varan de acuerdo a algunos eventos del sistema. Las prioridades de los procesos normales pueden sufrir variaciones de hasta 6 puntos, por ejemplo, cuando un proceso est esperando un dispositivo y ste fue liberado. Un proceso no suelta la unidad central de procesamiento hasta que exista un proceso con mayor prioridad. El proceso residente de mayor prioridad a ser ejecutado siempre se selecciona para su ejecucin.Los procesos en tiempo crtico son establecidos por el usuario y no pueden ser alterados por el sistema. Un aspecto importante del planificador de procesos en VMS es la existencia de proceso 'monitor' o 'supervisor', el cual se ejecuta peridicamente para actualizar algunas variables de desempeo y para re-calendarizar los procesos en ejecucin. Existen versiones de VMS que corren en varios procesadores, y se ofrece libreras para crear programas con mltiples 'threads'. En especfico se proveen las interfaces 'cma', 'pthread' y 'pthread-exception-returning'. Todas estas libreras se conocen como DECthreads e incluyen libreras tales como semforos y colas atmicas para la comunicacin y sincronizacin entre threads. El uso de threads sirve para enviar porciones de un programa a ejecutar en diferentes procesadores aprovechando as el multiproceso. Publicado por INGESOFT en 11:02 0 comentarios

Servicios del Sistema para el Control de Procesos


Crear un proceso: El servicio de creado de sistema permite a un proceso crear otro. El proceso creado puede ser un subproceso o un proceso completamente independiente. (se necesitan privilegios para hacer esto).

Suspender un proceso: Esto es que le permite a un proceso suspenderse a s mismo o a otro (tambin necesita tener privilegios).

Reanudar un proceso: Permite a un proceso reanudar a otro si es que este tiene privilegios para hacerlo.

Borrar un proceso:

Permite que se borre el proceso mismo o a otro si es que es un subproceso, o si no tiene que tener privilegios de borrado.

Dar Prioridad: Permite que el proceso mismo se ponga prioridad o a otros, para el calendarizador. Dar el modo de espera:

Permite que el proceso escoja de dos modos: el modo por default es cuando un proceso requiere un recurso y est ocupado y espera a que est desocupado, y el otro modo es cuando est ocupado el recurso, el proceso no espera y notifica al usuario que el recurso no se encuentra disponible en ese momento en lugar de esperar.

Hibernar: Es cuando un proceso se hace inactivo pero est presente en el sistema. Para que el proceso continue necesita de un evento para despertar.

Wake: Esto activa a los procesos que estan hibernando.

Exit: Es cuando se aborta un proceso.

Dar nombre al proceso: Este puede dar un nombre al proceso mismo o cambiarlo (el PCB contiene el nombre). Manejo de memoria en VMSEl sistema operativo VMS utiliza un esquema de manejo de memoria virtual combinado de segmentacin paginada. Lo novedoso en VMS es que usa un doble esquema de paginacin cuando las pginas se van a intercambiar de memoria RAM hacia disco duro. En primer lugar, cuando una pgina necesita cargarse a RAM sta se carga junto con varias pginas que estn adyacentes, justificando esto por medio de la teora del conjunto de trabajo que especifica que es muy probable que las referencias a memoria en el futuro inmediato caern precisamente en esas pginas. De este modo, se tiene un doble algoritmo: al hecho de cargarse las pginas cuando se necesitan se le llama 'paginacin por demanda' y al hecho de traerse las otras pginas del conjunto de trabajo por anticipado se le llama 'paginacin anticipada'. El manejo de entrada/salida en VMSEn VMS, se usan nombres 'lgicos' para describir a los dispositivos existentes en el sistema. Un concepto importante tanto en archivos como en dispositivos es el 'User Identification Code' (UIC) que permite establecer protecciones adicionales a los ACL. En los dispositivos se manejan cinco tipos de permisos: leer, escribir, ejecutar, borrar y

controlar. No todos los permisos se aplican a todos los dispositivos. El permiso de 'control' no se maneja explcitamente sino que se otorga por omisioacute;n al dueo y al sistema. Los permisos de los discos, unidades de cinta y otros dispositivos son establecidos por el administrador del sistema. Los dispositivos reciben nombres 'lgicos', por ejemplo, para una unidad de cinta el nombre puede ser 'MTA0'. System Interface" (SCSI) que son ampliamente usados en diversas plataformas. El intercambio de datos entre la unidad central de proceso y los perifricos se lleva a cabo a travs de los 'buses' normalizados UNIBUS y MASSBUS.

S-ar putea să vă placă și