Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| tutorial_de_tops-20_en_twenex.org [2022/12/17 01:56] – [BBOARD] peron | tutorial_de_tops-20_en_twenex.org [2026/04/21 16:09] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Tutorial de TWENEX ====== | + | ======= Tutorial de TWENEX |
| - | Este tutorial representa actividades para conocer y utilizar el sistema operativo de tiempo compartido [[twenex|TOPS-20]], | + | Este tutorial representa actividades para conocer y utilizar el sistema operativo de tiempo compartido [[twenex|TOPS-20]], |
| === Proyecto TWENEX.ORG === | === Proyecto TWENEX.ORG === | ||
| - | TWENEX.org forma parte del clúster de cómputo y acceso público [[http:// | + | TWENEX.org forma parte del clúster de cómputo y acceso público [[http:// |
| Si bien durante un breve tiempo operó un DEC PDP-10 DECSystem-2065, | Si bien durante un breve tiempo operó un DEC PDP-10 DECSystem-2065, | ||
| - | Actualmente un renovado servidor **XKL TOAD-2** dedicado, utilizado como veloz clon de PDP-10 hace renacer al Proyecto TWENEX, ya que la TOAD-2 ha sido puesto a disposición específicamente para el sistema por amabilidad de la compañía que las produce. Nace así la Bootcamp de TOPS-20, una serie de clases remotas instructivas en inglés provistas por el usuario experto smj, y disponibles en video. | + | Actualmente un renovado servidor **XKL TOAD-2** dedicado, utilizado como clon veloz de PDP-10 hace renacer al Proyecto TWENEX, ya que la TOAD-2 ha sido puesto a disposición específicamente para el sistema por amabilidad de la compañía que las produce. Nace así la Bootcamp de TOPS-20, una serie de clases remotas instructivas en inglés provistas por el usuario experto smj, y disponibles en video. |
| ==== Acceder a TWENEX.ORG ==== | ==== Acceder a TWENEX.ORG ==== | ||
| se puede acceder como usuario invitado desde Linux utilizando Shell Seguro (SSH), mediante: | se puede acceder como usuario invitado desde Linux utilizando Shell Seguro (SSH), mediante: | ||
| + | |||
| <code bash> | <code bash> | ||
| ssh twenex@sdf.org | ssh twenex@sdf.org | ||
| Línea 32: | Línea 33: | ||
| </ | </ | ||
| - | No bien recibamos | + | No bien reciba |
| == Salir del sistema TWENEX == | == Salir del sistema TWENEX == | ||
| Podrás abandonar el sistema ingresando en el prompt el comando: | Podrás abandonar el sistema ingresando en el prompt el comando: | ||
| + | |||
| < | < | ||
| KJOB | KJOB | ||
| Línea 45: | Línea 47: | ||
| Se trata de una serie de lecciones de aprendizaje desarrolladas dentro de los sistemas TOPS-20 de TWENEX.ORG. El proyecto cuenta con una con una [[https:// | Se trata de una serie de lecciones de aprendizaje desarrolladas dentro de los sistemas TOPS-20 de TWENEX.ORG. El proyecto cuenta con una con una [[https:// | ||
| - | Podrás seguir estas instrucciones compiladas | + | Podrás seguir estas instrucciones compiladas. |
| ==== Registrar un usuario ==== | ==== Registrar un usuario ==== | ||
| - | Si cuentas | + | Si cuenta |
| - | Debes proveer: | + | Debe proveer: |
| - un //Nombre de Usuario// deseado (llamado LOGIN), | - un //Nombre de Usuario// deseado (llamado LOGIN), | ||
| - una casilla de correo electrónico válida | - una casilla de correo electrónico válida | ||
| - su nombre completo. | - su nombre completo. | ||
| - | Recibirás | + | Recibirá |
| - | Ingresa | + | Ingrese |
| <code bash> | <code bash> | ||
| Línea 64: | Línea 66: | ||
| </ | </ | ||
| - | Al recibir el prompt **@** ingresa tu nombre de // | + | Al recibir el prompt **@** ingrese su nombre de // |
| === Cambiar la contraseña pasavante === | === Cambiar la contraseña pasavante === | ||
| - | Cuando | + | Cuando |
| - | Para cambiar la contraseña de tu LOGIN utiliza | + | Para cambiar la contraseña de su LOGIN utilice |
| < | < | ||
| Línea 77: | Línea 79: | ||
| </ | </ | ||
| - | ...donde LOGIN debe ser reemplazado por tu nombre de usuario (debes conservar el uso de <>). | + | ...donde LOGIN debe ser reemplazado por su nombre de usuario (debes conservar el uso de <>). |
| - | Podrás | + | Podrá |
| ===== Comandos Básicos de TOPS-20 ===== | ===== Comandos Básicos de TOPS-20 ===== | ||
| En TOPS-20 son importantes los caracteres de control para manejar el flujo de datos a tu terminal. | En TOPS-20 son importantes los caracteres de control para manejar el flujo de datos a tu terminal. | ||
| + | |||
| ^ Control | ^ Control | ||
| - | |**CTRL-S** | detiene (pausa) | + | |**Ctrl+s** | Congela |
| - | |**CTRL-Q** |continúa con la salida | + | |**Ctrl+q** |Descongela |
| - | |**CTRL-O** |ignora | + | |**Ctrl+o** |Ignora |
| - | |**CTRL-U** |borra lo ingresado.| | + | |**Ctrl+u** |borra lo ingresado.| |
| - | |**CTRL-C** |sale de un trabajo.| | + | |**Ctrl+c** |Abandonar |
| - | |**CTRL-F** |autocompleta | + | |**Ctrl+f** o **Esc** |Autocompletado de comando o nombre de fichero |
| - | |**CTRL-T** |Presenta el Status del trabajo| | + | |**Ctrl+t** |Presenta el Status del trabajo, para mostrar que el sistema está aún correindo | |
| - | |**CTRL-\** |Cuando ejecute el comando ' | + | |**Ctrl+z** |Fin de Fichero (EOF). Se usa en todo momento que debe finalizar el ingreso de datos, texto, mensajes, etc | |
| + | |**Ctrl-\** |Cuando ejecute el comando ' | ||
| ===== Intérprete de comandos EXEC ===== | ===== Intérprete de comandos EXEC ===== | ||
| - | El [[interpretes_de_comandos|intérpretes de comandos]] de nivel USER (" | + | El [[interpretes_de_comandos|intérpretes de comandos]] de nivel USER (" |
| Al iniciar EXEC, este correrá ficheros de autoejecución localizados en el directorio de usuario. El fichero básico es LOGIN.CMD. | Al iniciar EXEC, este correrá ficheros de autoejecución localizados en el directorio de usuario. El fichero básico es LOGIN.CMD. | ||
| Línea 127: | Línea 131: | ||
| ;TERMINAL PAGE ; No pagina automáticamente (hay que paginar con Ctrl+q) | ;TERMINAL PAGE ; No pagina automáticamente (hay que paginar con Ctrl+q) | ||
| TERM REC LINKS ; Permite a otros usuarios enlazar terminales | TERM REC LINKS ; Permite a otros usuarios enlazar terminales | ||
| + | RECEIVE ; Permite a otros usuarios enviarle mensajes. | ||
| + | ;REFUSE ; Impide a otros usuarios enviarle mensajes. | ||
| DEFINE EDITOR: SYS: | DEFINE EDITOR: SYS: | ||
| SET HISTORY 100 | SET HISTORY 100 | ||
| Línea 153: | Línea 159: | ||
| </ | </ | ||
| - | TWENEX podría llenar la pantalla | + | TWENEX podría llenar la pantalla |
| Utiliza el comando | Utiliza el comando | ||
| Línea 188: | Línea 194: | ||
| Por ejemplo, para el caso anterior, podrás hacerlo escribiendo: | Por ejemplo, para el caso anterior, podrás hacerlo escribiendo: | ||
| + | |||
| < | < | ||
| TER [ESCAPE] page [ESCAPE] ? | TER [ESCAPE] page [ESCAPE] ? | ||
| </ | </ | ||
| + | |||
| > | > | ||
| Conozcamos ahora un poco el equivalente a carpetas o directorios: | Conozcamos ahora un poco el equivalente a carpetas o directorios: | ||
| + | |||
| < | < | ||
| INFORMATION (ABOUT) DISK-USAGE (OR DIRECTORY) < | INFORMATION (ABOUT) DISK-USAGE (OR DIRECTORY) < | ||
| Línea 201: | Línea 210: | ||
| El sistema de archivos de TOPS-20 suporta versionado de ficheros, y cuenta con dos niveles de borrado de archivos (similar a una " | El sistema de archivos de TOPS-20 suporta versionado de ficheros, y cuenta con dos niveles de borrado de archivos (similar a una " | ||
| + | |||
| < | < | ||
| NOMBRE.EXTENSIÓN.VERSIÓN | NOMBRE.EXTENSIÓN.VERSIÓN | ||
| </ | </ | ||
| + | |||
| Utiliza el comando DIR para listar directorios, | Utiliza el comando DIR para listar directorios, | ||
| Línea 285: | Línea 296: | ||
| > ¡Esta información es muy útil para operar en un [[tiempo_de_computo_compartido|sistema de cómputo de tiempo compartido]] como TWENEX! | > ¡Esta información es muy útil para operar en un [[tiempo_de_computo_compartido|sistema de cómputo de tiempo compartido]] como TWENEX! | ||
| + | |||
| === Conectar y Desconectar Terminal === | === Conectar y Desconectar Terminal === | ||
| En TOPS-20 es posible desconectar la terminal teletipo simulada de un trabajo (y podremos conmutar entre conectándola a otro trabajo, incluso de otro usuario si sabemos la contraseña). Para este cometido se usa Ctrl+c y luego el comando: | En TOPS-20 es posible desconectar la terminal teletipo simulada de un trabajo (y podremos conmutar entre conectándola a otro trabajo, incluso de otro usuario si sabemos la contraseña). Para este cometido se usa Ctrl+c y luego el comando: | ||
| + | |||
| < | < | ||
| DETACH | DETACH | ||
| </ | </ | ||
| + | |||
| ...que deja el trabajo activo pero " | ...que deja el trabajo activo pero " | ||
| Línea 296: | Línea 310: | ||
| Para volver a " | Para volver a " | ||
| + | |||
| < | < | ||
| ATTACH usuario 32 | ATTACH usuario 32 | ||
| </ | </ | ||
| + | |||
| Esto " | Esto " | ||
| Línea 314: | Línea 330: | ||
| ==== Comandos Interactivos en EXEC ==== | ==== Comandos Interactivos en EXEC ==== | ||
| + | |||
| Además de los comandos no interactivos, | Además de los comandos no interactivos, | ||
| - | ==== Correo electrónico: | + | ===== Correo electrónico |
| === MM === | === MM === | ||
| Línea 329: | Línea 346: | ||
| MM> | MM> | ||
| </ | </ | ||
| + | |||
| === Enviar un correo === | === Enviar un correo === | ||
| + | |||
| En el subsistema, introduce el comando MAIL para redactar un mensaje. | En el subsistema, introduce el comando MAIL para redactar un mensaje. | ||
| + | |||
| < | < | ||
| MM>MAIL | MM>MAIL | ||
| </ | </ | ||
| + | |||
| Se te presentará el indicador **TO:** (" | Se te presentará el indicador **TO:** (" | ||
| Línea 353: | Línea 374: | ||
| Teclea tu mensaje. | Teclea tu mensaje. | ||
| | | ||
| - | Una vez escrito el correo finaliza la edición del mismo con **Ctrl+z**, y quedará en la //bandeja de salida// (" | + | Una vez escrito el correo finaliza la edición del mismo con **Ctrl+z**, y quedará en la //bandeja de salida// (" |
| < | < | ||
| Línea 363: | Línea 384: | ||
| == Leer el correo == | == Leer el correo == | ||
| - | En el subsistema MM, usa el comando HEADERS ALL para ver todos los correos recibidos en tu //bandeja de entrada//. | + | En el subsistema MM, usa el comando |
| < | < | ||
| MM> | MM> | ||
| </ | </ | ||
| - | Usa el comando **TYPE** seguido por el número del correo que desees leer, o bien usa **TYPE NEW** para leer los correos nuevos. Por ejemplo, podrás especificar leer el primer mensaje de la bandeja de entrada: | + | Usa el comando **TYPE** seguido por el número del correo que desees leer, o bien usa '' |
| < | < | ||
| Línea 376: | Línea 398: | ||
| Una vez presentado un correo electrónico, | Una vez presentado un correo electrónico, | ||
| - | Tras la edición de la respuesta, quedarás en el //prompt// de envío " | + | Tras la edición de la respuesta, quedarás en el //prompt// de envío " |
| < | < | ||
| Línea 382: | Línea 404: | ||
| </ | </ | ||
| - | Podrías borrar el correo usando | + | Podrías borrar el correo usando |
| Ten en cuenta que la dirección TWENEX.ORG no es demasiado compatible. Podría tener problemas para utilizar MIME64, HTML y otros tipos de correo electrónico. Privilegia el uso de texto plano. | Ten en cuenta que la dirección TWENEX.ORG no es demasiado compatible. Podría tener problemas para utilizar MIME64, HTML y otros tipos de correo electrónico. Privilegia el uso de texto plano. | ||
| === BBOARD === | === BBOARD === | ||
| + | |||
| Es una cartelera electrónica interna al sistema TWENEX, en forma de bandejas para el subsistema de correo. Ingresa al subsistema de correo: | Es una cartelera electrónica interna al sistema TWENEX, en forma de bandejas para el subsistema de correo. Ingresa al subsistema de correo: | ||
| Línea 400: | Línea 423: | ||
| Verás que hay distintos tablones. Puedes enviar correo público al tablón de bboard a '' | Verás que hay distintos tablones. Puedes enviar correo público al tablón de bboard a '' | ||
| - | ====== Editores en TWENEX ====== | + | |
| + | ===== Editores en TWENEX ===== | ||
| ==== Emacs ==== | ==== Emacs ==== | ||
| El editor por defecto es [[Emacs]]. También entrarás GNUEMACS. | El editor por defecto es [[Emacs]]. También entrarás GNUEMACS. | ||
| Línea 413: | Línea 438: | ||
| SOS es el editor de líneas Son Of Stopgap. Para obtener ayuda de un comando tipea " | SOS es el editor de líneas Son Of Stopgap. Para obtener ayuda de un comando tipea " | ||
| - | ^ Comando ^ Resultado | + | ^ Comando |
| - | |A (Alter) |Edición entrelíneas | + | |'' |
| - | |B (Begin) |Va al principio del fichero | + | |'' |
| - | |BP(Begin Page) |GVa al principio de la pág | | + | |'' |
| - | |C (Copy) |Copia texto | | + | |'' |
| - | |CC(Co-Copy) |Copia de coedición | + | |'' |
| - | |CT(Co-Transfer) |Mueve texto de coedición | | + | |'' |
| - | |CX(Co-edit) |Comienza/ | + | |'' |
| - | |D (Delete) |Borra texto | | + | |'' |
| - | |E (Exit) |Sale del editor | + | |'' |
| - | |F (Find)| Busca una cadena | + | |'' |
| - | |G (Go) |Sale y corre un programa | + | |'' |
| - | |H (Help) |Presenta la ayuda | | + | |'' |
| - | |I (Insert) | Inserta nuevo texto | | + | |'' |
| - | |J (Join) |Une líneas | + | |'' |
| - | |JC(Justify Centered) |Centra el texto | | + | |'' |
| - | |JL(Justify Left) |Justif izq | | + | |'' |
| - | |JR(Justify Right)| | + | |'' |
| - | |JU(Justify) Fully |justificado | + | |'' |
| - | |JW(Justify Word)| Justifica palabras| | + | |'' |
| - | |K (Kill)| Borra marcas de pág | | + | |'' |
| - | |L (List)| Lista las líneas en LPT:| | + | |'' |
| - | |M (Mark)| Inserta marca de pág| | + | |'' |
| - | |N (Number) |Renumera | + | |'' |
| - | |NA(Number| And open) Abre un hoyo| | + | |'' |
| - | | NF(Number file)| | + | | '' |
| - | | NP(number page) |Renumera pág| | + | | '' |
| - | | O (Output)| Guarda la salida a un fichero| | + | | '' |
| - | | P (Print)| Presenta las líneas en la TTY| | + | | '' |
| - | |R (Replace)| Borra e inserta| | + | |'' |
| - | |S (Substitute) |Busca y reemplaza| | + | |'' |
| - | |T (Transfer)| Mueve texto| | + | |'' |
| - | |VL(inVert Lower)| Convierte a min| | + | |'' |
| - | |VU(inVert Upper) |Convierte a may| | + | |'' |
| - | |VV(inVert inVert)| Conmuta | + | |'' |
| - | |W (World)| Salva el mundo (fichero)| | + | |'' |
| - | | X (eXtend) |Agrega al final de la línea| | + | | '' |
| - | |; (comment) |Resto de línea ignorado| | + | |'' |
| - | |@ (indirect) |Ejecuta desde un fichero| | + | |'' |
| - | | = (give) |Imprime valores de parámetros| | + | | '' |
| - | | / (set) |Establece valores| | + | | '' |
| - | |. (move)| Mueve el puntero de línea| | + | |'' |
| ==== Editor TECO ==== | ==== Editor TECO ==== | ||
| + | |||
| TECO es un editor de líneas. | TECO es un editor de líneas. | ||
| < | < | ||
| Línea 467: | Línea 493: | ||
| == Reglas de TECO == | == Reglas de TECO == | ||
| - | * Para darle ingreso los comandos se debe oprimir dos veces la **tecla Escape** (ilustrada con $ a continuación, | + | * Para darle ingreso los comandos se debe oprimir dos veces la **tecla Escape** (ilustrada con un '' |
| * Los comandos no necesitan ser ejecutados de a uno por vez. Puede ingresarse una larga serie de comandos y luego introducir "$ $", y TECO los ejecutará en orden. | * Los comandos no necesitan ser ejecutados de a uno por vez. Puede ingresarse una larga serie de comandos y luego introducir "$ $", y TECO los ejecutará en orden. | ||
| * TECO está orientado a caracteres, de modo que recuerda la posición del cursor en su locación actual (" | * TECO está orientado a caracteres, de modo que recuerda la posición del cursor en su locación actual (" | ||
| Línea 473: | Línea 499: | ||
| === Comandos de TECO === | === Comandos de TECO === | ||
| ^ Regla ^ Comando ^ Acción realizada por TECO ^ | ^ Regla ^ Comando ^ Acción realizada por TECO ^ | ||
| - | |1. | **ERfichero$Y1** | Abre el fichero para ingresar datos | | + | |1. | '' |
| - | |2. | **EWfichero$1** | Abre un fichero para salida | + | |2. | '' |
| - | |3. | **EX** | Guarda y sale | | + | |3. | '' |
| - | |4. | **Ctrl+c, Ctrl+c** | + | |4. | **Ctrl+c**, **Ctrl+c** |
| - | |5. | **C2** | Mueve el caracter | + | |5. | '' |
| - | |6. | **R2** | Mueve el caracter | + | |6. | '' |
| - | |7. | **L3** | Se mueve al comienzo de la línea siguiente | | + | |7. | '' |
| - | |8. | **Itexto$** | Inserta la cadena texto | | + | |8. | '' |
| - | |9. | J | Salta al comienzo del fichero | | + | |9. | '' |
| - | |10.| **ZJ** | Salta al Final del fichero | | + | |10.| '' |
| - | |11.| **T3** | Tipea desde el puntero hasta el final de la línea. | | + | |11.| '' |
| - | |12.| **V** | Tipea la línea actual | | + | |12.| '' |
| - | |13.| **D2** | Borra el caracter en el puntero | | + | |13.| '' |
| - | |14.| **K3** | Borra la línea actual | | + | |14.| '' |
| - | |15.| **Stexto$**| Busca la cadena " | + | |15.| '' |
| - | |16.| **FStexto**|_reemplazado$texto_original$ Sustituye la cadena texto_original por texto_reemplazado | | + | |16.| '' |
| * Algunas versiones de TECO aceptan directamente un nombre de archivo como argumento de línea de comandos, haciendo que 1 y 2 sean innecesarios. | * Algunas versiones de TECO aceptan directamente un nombre de archivo como argumento de línea de comandos, haciendo que 1 y 2 sean innecesarios. | ||
| - | * Algunas versiones de TECO tiene un comando **EBfichero$Y** que hace lo mismo que 1 y 2 en un solo paso. | + | * Algunas versiones de TECO tiene un comando **'' |
| - | - Prefijo numérico: mueve/borra múltiples caracteres (un número negativo invertirá la dirección). | + | - **Prefijo numérico**: mueve/borra múltiples caracteres (un número negativo invertirá la dirección). |
| + | - **Prefijo numérico**: | ||
| - | - Prefijo numérico: mueve/ | + | > TECO y sus variaciones si distinguían sobre todo por su muy escaso uso de memoria y su empleo normalmente asíncrono con la máquina remota. |
| - | > TECO y sus variaciones si distinguían sobre todo por su escasísimo uso de memoria, y su empleo normalmente asíncrono con la máquina remota. | + | ====EDT==== |
| + | EDT es un editor modal, y uno de los pocos editores de TOPS-20 que funciona intuitivamente a la mayoría de los usuarios. Es un editor de pantalla tipico. Su archivo de configuración es [[EDTINI.EDT]]. | ||
| + | Usa el comando **CHANGE** para pasar a modo inserción. Para salir del editor, en el modo de inserción presiona **Ctrl+z** y el comando **EXIT** (para guardar cambios y salir), o **QUIT** para salir sin guardar los cambios. | ||
| ====== Herramientas de Chat ====== | ====== Herramientas de Chat ====== | ||
| Línea 569: | Línea 598: | ||
| asñi como protecciones adicionales que son únicas a TOPS-20. | asñi como protecciones adicionales que son únicas a TOPS-20. | ||
| - | * PARA ARCHIVOS: | + | === Protección para ficheros=== |
| < | < | ||
| | | ||
| Línea 582: | Línea 611: | ||
| </ | </ | ||
| - | * PARA DIRECTORIOS: | + | ===Protección para directorios=== |
| < | < | ||
| | | ||
| Línea 601: | Línea 630: | ||
| \____ su propio usuario (propietario) | \____ su propio usuario (propietario) | ||
| </ | </ | ||
| - | Como tal, usted y los usuarios en su grupo tendrán acceso completo al directorio < | + | Como tal, usted y los usuarios en su grupo tendrán acceso completo al directorio < |
| Si está acostumbrado a los permisos de fichero de UNIX, debería resultarle impresionante el manejo que hace TOPS-20, ya que es posible crear un archivo que: | Si está acostumbrado a los permisos de fichero de UNIX, debería resultarle impresionante el manejo que hace TOPS-20, ya que es posible crear un archivo que: | ||
| - | - No aparezca en un listado de directorio | + | |
| - | - No sea legible incluso si conoce su nombre. | + | - No sea legible incluso si conoce su nombre. |
| - | - Sea agregable a todos los usuarios | + | - Sea agregable a todos los usuarios |
| Los ficheros tienen atributos de permisos como en Unix, pero en octales. | Los ficheros tienen atributos de permisos como en Unix, pero en octales. | ||
| Línea 617: | Línea 646: | ||
| </ | </ | ||
| El espacio se indica en " | El espacio se indica en " | ||
| + | ==Permisos para Finger== | ||
| + | Por ejemplo, puedes crear un '' | ||
| + | |||
| + | <code bash>set file protection finger.plan 775252</ | ||
| + | <code bash> | ||
| ===== Bash en TOPS-20 ===== | ===== Bash en TOPS-20 ===== | ||
| - | Se puede llamar a esta función totalmente espúrea, pero puedes ejecutar el intérprete [[bourne_again_shell|BASH]] del proyecto GNU compilado para TOPS-20. | + | Se puede llamar a esta función totalmente espúrea, pero puedes ejecutar el intérprete [[bash|Shell de Bourne]] del proyecto GNU compilado para TOPS-20. |
| Para ello ingresamos: | Para ello ingresamos: | ||
