vms

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Próxima revisión
Revisión previa
Última revisiónAmbos lados, revisión siguiente
vms [2021/07/13 03:34] – creado peronvms [2022/06/11 01:05] peron
Línea 1: Línea 1:
-===== Uso básico de DCL =====+====== VMS ====== 
 +Se trató de un sistema operativo de [[tiempo_de_computo_compartido|tiempo compartido]] desarrollado por [[DEC|Digital Equipment Corporation]] para su serie de minicomputadoras [[VAX]]. 
  
 +Se trata de un entorno multiusuari@ multitarea con memoria virtual, y opcionalmente capaz de operar en [[clúster]]. Es recordado por su estabilidad asombrosa en equipos [[servidor|servidores]].
  
-El DCL presentaba un conjunto de instrucciones en inglés que el usuario ingresaba para comandar al sistema operativo (en este caso OpenVMS), qué hacer. Constaba de más de 200 comandos y funciones.+Su desarrollo como tal se extendió desde 1979 hasta 1992 bajo el nombre de **VAX/VMS**.
  
-Al igual que otros intérpretes posteriores como Bashm, ols comandos en DCL se ingresan en dos formas. La más común es la manera interactiva, en la cual se escriben en la terminal de manera insensible a mayúsculas. Generalmente se usan secuencias de comandos y modificadores.+==== OpenVMS ====
  
-La otra es "en lotes", y esto equivale a la creación de programas y guiones de programación (scripts)Nos conectraremso en la primera manera.+Tras la adquisición de DEC por parte de Compaq y luego por HP, el VMS tradicional derivó en una implementación a código abierto, el **OpenVMS** escrito tanto para las minis [[VAX]] como para arquitectura AlphaEste se continuó utilizando de forma eventual en servidores de dicha tecnología, dilatando su servicio bien hasta mediados de la década del 2010.
  
-AsimismoDCL tiene varias combinaciones de control que interrumpen o anulan la execución de comandos.+Sin embargola última versión 9 de OpenVMS representa un cambio fundamental ya que abandona las arquitecturas DEC para compatibilizar el sistema con otras de despliegue moderno, notablemente la x86_64. Esto hace posible de operarse en equipos de escritorio modernos. Sin embargo, el código permanece privativo.
  
-**Ctrl+z**: Sale de un comando de DCL+===== DCL en OpenVMS 8.4 sobre DEC Alpha remoto =====
  
-**Ctrl+c**: interrumpe la ejecución de un comando (pero lo deja en memoria). 
  
-**Ctrl+b**: Repite el comando anterior.+Como los sistemas VAX históricos y los Alpha pueden emularse bajo SIMH en GNU con Linux, es posible crear entornos de emulación para estas plataformas si contamos con licencias de uso hobbista para el mismo. Lamentablemente, si bien las mismas se distribuyeron a través de un programa especial de Hewlett-Packard, actualmente el mismo ha sido descontinuado.
  
-**Ctrl+a**: Conmuta entre modo Inserción de caracteres y Sobreescritura de Caracteres.+Es por ello que al manera más sencilla de operar en un sistema de estas características es darnos de alta en un sistema público que disponga del hardware antiguo correctamente licenciado. Una de estas instancias la proporciona DECUS.ORG, un grupo de usuarios hobbistas de equipamiento DEC, que cuenta con el apoyo institucional del actual poseedor de la propiedad intelectual del VMS, Hewlett-Packard.
  
-**Ctrl+s**: Suspende la salida de texto la terminal.+Decus.org pone a disposición del público general su infraestructura de cómputo DEC Alpha 520 puesta en línea, y ofrece la creación de cuentas públicas de acceso remoto intérprete de comandos.
  
-**Ctrl+o**: Reactiva la salida de texto la terminal. Si se la presiona alternativamentepausa y continúa el flujo de texto. +Para dar de alta una cuenta título individualpodremos usar nuestra terminal GNU con Linux mediante Secure Shell (SSH) a:
-=== AYUDA ONLINE ===+
  
 +<code bash>ssh REGISTRATION@eisner.decus.org</code>
  
-El DCL es difícil de usarpero tiene una ayuda tipo "árbol" jerarquizadaIngresando "help" se ingresa al subsistema de ayuda. También se puede usar en forma "HELP tema"Por ejemplo:+Cuando el sistema nos solicite contraseña no ingresamos ninguna y simplemente presionamos ENTER. Se activará a continuación programa de registro en la máquina DEC Alphaque constará de varias pantallasEn ellas se nos solicitará ingresar un nombre de usuario y debemos proporcionar una casilla de correo electrónico válida. También se nos solicitará indicar qué tipo de editor deseamos (normalmente uno llamado LSE).
  
-$ **help instructions**+Una vez recibido un correo de parte de DECUS conteniendo una contraseña pasavante, podremos ya conectarnos a nuestra cuenta de OpenVMS remoto. Por tanto, nos logueamos utilizando:
  
-Normalmente el subsistema de ayuda permite ingresar y presentar en pantalla cada uno de los temas o "topics" escribiéndolos por su nombre indicado, y a su vez cada tema podría presentarnos nuevas temáticas de ayuda relacionadasSi oprimimos ENTER generalmente retrocederemos un nivel. Al volver al nivel inicial del subsistema de ayuda, abandonaremos el mismo y quedaremos depositados nuevamente en el prompt $ del DCL.+<code bash>ssh usuario@eisner.decus.org</code>
  
-Recordemos que siempre podremos salir del subsistema de ayuda (y muchos otros programas ejecutados por DCLcon Ctrl+z+Tras ingresar la contraseña provista por DECUS, podremos ver nuestra pantaslla incial. Por ejemplo: 
-==== COMANDOS COMUNES ====+<code> 
 +%DCL-S-SPAWNED, process USUARIO_10419 spawned 
 +  User [USUARIO] has 842 blocks used, 9158 available, 
 +  of 10000 authorized and permitted overdraft of 0 blocks on DISK_USER 
 + * * * * * *  * * * * * * * < Hola USUARIO! > * * * * * * * * * * * * * * 
 +                        RECIBA UNA CORDIAL BIENVENIDA 
 +                          ____ al sistema computado  
 +                          _ \  ___  ___ _   _ ___     
 +                         | | | |/ _ \/ __| | | / __| 
 +                         | |_| |  __/ (__| |_| \__ \ 
 +                         |____/ \___|\___|\__,_|___/ 
 +                          DEC Alpha con OpenVMS 8.4 
 +  +-----------------------------------------------------------------------+ 
 +|      Nombre del nodo: EISNER Hardware: AlphaServer DS20 500 MHz     | 
 +|   Este mainframe pertenece al Grupo Hobbista "Asociacion de Usuarios 
 +|            de Digital Equipment Computers", DECUS.ORG.                | 
 ++-----------------------------------------------------------------------+ 
 +- Su directorio es DECUSERVE_USER.USUARIO.   
 +- Su casilla de correo electronico en este equipo es: usuario@eisner.decus.org. 
 +- Para abandonar este sistema utilice el comando LOGOUT. 
 +
 +Subprocess USUARIO_xxxxx has completed 
 +</code> 
 +El prompt de DCL es un ''$''.
  
  
-Hay muchísimos comandos y programas capaces de corren en OpenVMS, pero ciertos son comandos comunes directamente equivalentes o muy parecidos a los comandos presentes en sistemas de operación similares a UNIX. Por ejemplo:+===== Uso básico de DCL =====
  
-**copy** Copia un fichero especificado, cp+El DCL presenta un conjunto de instrucciones en inglés que el usuario ingresa para comandar al sistema operativo (en este caso OpenVMS). Constaba de más de 200 comandos y funciones.
  
-**copy/ftp** transfiere ficheros entre huespedes sobre red tcp/ipftp+Al igual que otros intérpretes posteriores como [[Bash]]los comandos en DCL se ingresan en dos formas. La más común es la manera interactiva, en la cual se escriben en la terminal de manera insensible a mayúsculas. Generalmente se usan secuencias de comandos y modificadores.
  
-**create** crea ficheros y directoriostouch+La otra es "en lotes"y esto equivale a la creación de programas y guiones de programación (scripts). Nos concentraremos en la primera manera.
  
-**delete** borra un fichero especificado y lo quita del directoriorm+AsimismoDCL tiene varias combinaciones de control que interrumpen o anulan la ejecución de comandos.
  
-**directory** **dir** presenta los contenidos de un directorio (listado de ficheros), ls+^^^ 
 +**Atajo** **Resultado en DCL** 
 +| **Ctrl+z** | Sale de un comando de DCL | 
 +| **Ctrl+c** | interrumpe la ejecución de un comando (pero lo deja en memoria). | 
 +| **Ctrl+b** | Repite el comando anterior. | 
 +| **Ctrl+a** | Conmuta entre modo Inserción de caracteres y Sobreescritura de Caracteres. | 
 +| **Ctrl+s** | Suspende la salida de texto a la terminal. | 
 +| **Ctrl+o** | Reactiva la salida de texto a la terminal. Si se la presiona alternativamentepausa y continúa el flujo de texto. |
  
-**edit** muestra y cambia los contenidos de un fichero de texto, ed+=== AYUDA ONLINE ===
  
-**logout** desconecta la sesión remota, logout, exit 
  
-**print** envia un fichero especificado a la impresora+El DCL es difícil de usar, pero tiene una ayuda tipo "árbol" jerarquizada. Ingresa <code bash>help</code> para ingresa al subsistema de ayuda. También se puede usar en forma "HELP tema". Por ejemplo:
  
-**rename** cambia el nombre o la localización de un fichero especificado, mv+<code>**help instructions**</code>
  
-**set** controla como usar el sistema en pantalla+Normalmente el subsistema de ayuda permite ingresar y presentar en pantalla cada uno de los temas o //topics// escribiéndolos por su nombre indicado, y a su vez cada tema podría presentar nuevas temáticas de ayuda relacionadas. Si oprimes **Intro** generalmente retrocedes un nivel. Al volver al nivel inicial del subsistema de ayuda, abandonarás el mismo y quedaremos depositados nuevamente en el prompt ''$'' del DCL.
  
-**show** presenta el status de sistema+Recuerda que siempre podrás salir del subsistema de ayuda (y muchos otros programas ejecutados por DCL) con **Ctrl+z**
 +==== Comandos Comunes en DCL ====
  
-**type** presenta los contenidos de un fichero especificado en la pantalla, cat 
-CREAR Y MOVERNOS EN DIRECTORIOS 
  
-El sistema de ficheros de OpenVMS representa una estructura arbolada. En ellael usuario de DECUS recibirá una carpeta de usuario localizada dentro de la carpeta "DECUSERVE_USER", que generalmente se encuentra en una particiçon en una unidad de disco del sistema, como por ejemplo DSA3:.+Hay muchísimos comandos y programas capaces de corren en OpenVMS, pero ciertos son comandos comunes directamente equivalentes o muy parecidos a los comandos presentes en sistemas de operación similares a UNIX. Por ejemplo:
  
-DCL es idiosincrásicamente mas complejo y laborioso de usar que UNIX. En particular, suele requerir la necesidad de ingresar entre corchetes "[]toda la ruta del directorio a fin de desplazarnos por la estructura de árbol. Los niveles de directorios se separan utilizando un ".en lugar de una barra como en UNIX u otros sistemas.+^^^ 
 +| **copy** | Copia un fichero especificado, cp| 
 +| **copy/ftp** | transfiere ficheros entre huespedes sobre red tcp/ip, [[ftp]]| 
 +| **create** | crea ficheros y directorios, touch | 
 +| **delete** | borra un fichero especificado y lo quita del directorio, rm | 
 +| **directory** o **dir** | presenta los contenidos de un directorio (listado de ficheros), ls | 
 +| **edit** | muestra y cambia los contenidos de un fichero de texto, [[ed]] | 
 +| **logout** | desconecta la sesión remota, logout, exit | 
 +| **print** | envia un fichero especificado a la impresora | 
 +| **rename** | cambia el nombre o la localización de un fichero especificado, mv | 
 +| **set** | controla como usar el sistema en pantalla | 
 +| **show** | presenta el status de sistema | 
 +| **type** | presenta los contenidos de un fichero especificado en la pantalla, cat | 
 + 
 +=== Crear y moverse en directorios === 
 + 
 +El sistema de ficheros de OpenVMS representa una estructura arbolada. En ella, el usuario de DECUS recibirá una carpeta de usuario localizada dentro de la carpeta ''DECUSERVE_USER'', que generalmente se encuentra en una partición en una unidad de disco del sistema, como por ejemplo ''DSA3:''
 + 
 +DCL es idiosincrásicamente mas complejo y laborioso de usar que [[UNIX]]. En particular, suele requerir la necesidad de ingresar entre corchetes ''[]'' toda la ruta del directorio a fin de desplazarnos por la estructura de árbol. Los niveles de directorios se separan utilizando un ''.'' en lugar de una barra como en UNIX u otros sistemas.
  
 Para ver el contenido del directorio actual ingresamos: Para ver el contenido del directorio actual ingresamos:
  
-**directory**+<code>DIRECTORY</code>
  
-o más sencillo, su la abreviación "dir".+...o más sencillo, su la abreviación **dir**.
  
-Por ejemplo, si quisiéramos crear un directorio llamado "pruebas" en nuestra carpeta de usuario, deberíamos usar:+Por ejemplo, si quisiéramos crear un directorio llamado ''prueba'' en nuestra carpeta de usuario, deberíamos usar:
  
-**CREATE /DIR [DECUSERVE_USER.USUARIO.prueba]**+<code>$ CREATE /DIR [DECUSERVE_USER.USUARIO.prueba]</code>
  
-Para comprobar su creación efectiva, ingresamos el comando "dir". Deberíamos ver ahora un directorio nomenclado como prueba.dir;1. Para ingresar a dicho directorio usamos el comando cd ("cambiar directorio"), seguido por toda la ruta estructurada. Por ejemplo:+Para comprobar su creación efectiva, ingresamos el comando **dir**. Deberíamos ver ahora un directorio nomenclado como ''prueba.dir;1''. Para ingresar a dicho directorio usamos el comando **cd** ("cambiar directorio"), seguido por toda la ruta estructurada. Por ejemplo:
  
-**cd DSA3:[DECUSERVE_USER.USUARIO.prueba]**+<code>$ cd DSA3:[DECUSERVE_USER.USUARIO.prueba]</code>
  
-o bien:+...o bien:
  
-**set default [.prueba]**+<code>SET default [.prueba]</code>
  
 Para volver al directorio anterior: Para volver al directorio anterior:
  
-$** cd DSA3:[DECUSERVE_USER.USUARIO]**+<code>$ cd DSA3:[DECUSERVE_USER.USUARIO]</code>
  
 ...o bien: ...o bien:
  
-$** SET default**+<code>$ SET default</code>
  
-Si quisiéramos usar un equivalente al pwd de UNIX (presentar directorio actual), debemos usar:+Si quisiéramos usar un equivalente al comando pwd de UNIX ("presentar directorio actual"), debemos usar:
  
-**SHOW default**+<code>$ SHOW default</code>
  
-Se nos hará obvio que todos los archivos cuentan con un sufijo de versión, indicado con punto y coma. Por ejemplo: archivo.txt;1 archivo.txt;2, etcétera. De esta manera podremos contar con múltiples versiones de un mismo fichero. Siempre se activa la última, pero se conservan las anteriores. Si queremos eliminar un fichero se usa el comando DELETE, pero debemos especificar cuál versión queremos borrar. Por ejemplo,+Se nos hará obvio que todos los archivos cuentan con un sufijo de versión, indicado con '';''. Por ejemplo: ''archivo.txt;1'', ''archivo.txt;2'', etcétera. De esta manera podremos contar con múltiples versiones de un mismo fichero. Siempre se activa la última, pero se conservan las anteriores. Si queremos eliminar un fichero se usa el comando **DELETE**, pero debemos especificar cuál versión queremos borrar. Por ejemplo,
  
-**DELETE archivo.txt;3**+<code>$ DELETE archivo.txt;3</code>
  
 ...o bien, eliminamos todas las versiones de un fichero con comodines, por ejemplo: ...o bien, eliminamos todas las versiones de un fichero con comodines, por ejemplo:
  
-**DELETE archivo.txt;***+<code>$ DELETE archivo.txt;*</code>
  
-Para borrar el directorio creado tenemos que retroceder al nivel anterior en el árbol (no podemos eliminar un directorio desde dentro del mismo). Finalmente indicamos un comando como:+Para borrar el directorio creado tenemos que retroceder al nivel anterior en el árbol (no podemos eliminar un directorio desde dentro del mismo).  Luego le asignamos permisos de borrado al directorio: 
 + 
 +<code>$ SET FILE/PROTECTION=O:RWED prueba.dir;1</code> 
 + 
 +...y finalmente lo borrarás con: 
 + 
 +<code>$ delete prueba.dir;1</code>
  
-$ **delete prueba.dir;1** 
 === Crear un fichero finger === === Crear un fichero finger ===
  
 +Los sistemas de cómputo a tiempo compartidos podían contar con un fichero de texto ''.plan'' o ''.project'', encargados de operar como descripción del usuario. Como los sistemas solían ser anónimos pero contar con un "handle" o nombre de usuario específico, estos ficheros de texto podían servir como una descripción o información de contacto. Sin embargo, no era extraño contar con extravagantes descripciones o texto ASCII, lo que pasaba a formar parte del folklore típico de los sistemas de cómputo a tiempo compartido.
  
-Los sistemas de cómputo a tiempo compartidos podían contar con un fichero de texto .plan o .project, encargados de operar como descripción del usuario. Como los sistemas solían ser anónimos pero contar con un "handle" o nombre de usuario específico, estos ficheros de texto podían servir como una descripción o información de contaco. Sin embargo, no era extraño contar con extavagantes descripciones o texto ASCII, lo que pasaba a formar parte del folklore típico de los sistemas de cómputo a tiempo compartido. 
 Para crear nuestro fichero podremos aprovechar y utilizar el editor de texto visual "LSE". Ingresaremos a él con: Para crear nuestro fichero podremos aprovechar y utilizar el editor de texto visual "LSE". Ingresaremos a él con:
  
-**lse**+<code>lse</code>
  
-El editor de texto LSE consta de dos secciones. Una principal con la ventana de texto, y otra inferior en la que podremos ingresar comandos de operación. En este caso simplemente escribiremos un texto que deseemos. Cuando finalicemos de hacerlo, presionaremos Ctrl+z. Esto nos desplazará a la sección inferior para ingresar los comandos de operación, lo cual se nos hará patente por medio del prompt LSE>. En él ingresaremos exit. El editor LSE nos solicitará el nombre de archivo a fin de guardarlo con dicha denominación y salir al intérprete DCL. Le introducimos el nombre .plan y presionamos Enter.+El editor de texto LSE consta de dos secciones. Una principal con la ventana de texto, y otra inferior en la que podremos ingresar comandos de operación. En este caso simplemente escribiremos un texto que deseemos. Cuando finalicemos de hacerlo, presionaremos **Ctrl+z**. Esto nos desplazará a la sección inferior para ingresar los comandos de operación, lo cual se nos hará patente por medio del prompt ''LSE>''. En él ingresaremos **exit**. El editor LSE nos solicitará el nombre de archivo a fin de guardarlo con dicha denominación y salir al intérprete DCL. Le introducimos el nombre .plan y presionamos Enter.
  
 Esto cerrará el editor LSE y nos retornará al prompt de DCL. Debemos ahora asignar los permisos de fichero requeridos al fichero .plan que hemos creado. Ello lo haremos ingresando el comando: Esto cerrará el editor LSE y nos retornará al prompt de DCL. Debemos ahora asignar los permisos de fichero requeridos al fichero .plan que hemos creado. Ello lo haremos ingresando el comando:
  
-set file/prot=w:re .plan +<code>SET file/prot=w:re .plan</code>
-Ver quién está online+
  
-Podremos hacer eso ingresando:+=== Ver quién está online === 
 + 
 +Podrás hacer eso ingresando: 
 + 
 +<code>$ SHOW users</code>
  
-$**SHOW users** 
 <code> <code>
       OpenVMS User Processes at  8-JUL-2021 23:34:39.87       OpenVMS User Processes at  8-JUL-2021 23:34:39.87
Línea 134: Línea 188:
  PERON              1  PERON              1
 </code> </code>
-Podrás chatear en línea con dicho usuario mediante el programa phone. Utiliza: 
  
-$**phone usuario**+Podrás chatear en línea con dicho usuario mediante el programa **phone**. Utiliza: 
 + 
 +<code> phone usuario</code>
  
 El usuario recibirá el alerta y podrá tocar la combinación indicada en pantalla para responder. Al aceptar se presentará el OpenVMS Phone Facility: El usuario recibirá el alerta y podrá tocar la combinación indicada en pantalla para responder. Al aceptar se presentará el OpenVMS Phone Facility:
 +
 <code> <code>
                             OpenVMS Phone Facility                   8-JUL-2021                             OpenVMS Phone Facility                   8-JUL-2021
Línea 158: Línea 214:
 ------------------------------------------------------------------------------- -------------------------------------------------------------------------------
 </code> </code>
-...Para abandonar el programa phone puedes utilizar Ctrl+z+ 
 +...Para abandonar el programa phone puedes utilizar **Ctrl+z**
 ===== Comandos de status ===== ===== Comandos de status =====
 Existen muchísimos comandos de este tipo, pero tal vez el más simple sea show. Utiliza help show, o prueba alguno de los siguientes: Existen muchísimos comandos de este tipo, pero tal vez el más simple sea show. Utiliza help show, o prueba alguno de los siguientes:
  
-**show system**+<code bash>show system</code>
  
-**show network**+<code bash>show network</code>
  
-**show cpu**+<code bash>show cpu</code>
  
-**show memory**+<code bash>show memory</code>
 ===== Crear una web de DECUS ===== ===== Crear una web de DECUS =====
  
Línea 180: Línea 237:
 Para ello creamos un subdirectorio y le otorgamos los permisos requeridos Para ello creamos un subdirectorio y le otorgamos los permisos requeridos
  
-$ **set default sys$login** +<code bash> 
- +set default sys$login 
-$ **create/dir [.www] /protection=w:re** +create/dir [.www] /protection=w:re 
- +set security /acl=(default_protection, s:rwed, o:rwed, g:r, w:r) www.dir 
-$ **set security /acl=(default_protection, s:rwed, o:rwed, g:r, w:r) www.dir** +set default sys$login 
- +set security /acl=(identifier=WASD_HTTP_SERVER,access=read) [-]usuario.DIR 
-$ **set default sys$login** +</code>
- +
-$ **set security /acl=(identifier=WASD_HTTP_SERVER,access=read) [-]usuario.DIR**+
  
-Acto seguido creamos un archivo index.html o bien lo transferimos a través de FTP. Podremos crear subdirectorios adicionales delntro de [WWW] si lo deseamos.+Acto seguido creamos un archivo ''index.html'' o bien lo transferimos a través de FTP. Podremos crear subdirectorios adicionales dentro de ''[WWW]'' si lo deseamos.
 Documentación Documentación
  
  • vms.txt
  • Última modificación: 2023/03/11 03:36
  • por peron