stringtranslate.com

Tecla de estado

En informática , una tecla de estado es una tecla del teclado que hace que un sistema operativo o un programa muestre información de estado en un terminal cuando se presiona. En el caso de que un programa en un terminal no produzca indicaciones de que se está ejecutando, al presionar la tecla de estado se revelará el estado y la actividad del programa. [1] Las implementaciones más antiguas solo producían un informe de estado rápido de una línea para el trabajo actual cuando se presionaba la tecla de estado. [2] Las implementaciones más nuevas admiten el envío de una señal al proceso actual para permitir que la aplicación también informe sobre el estado. [3]

Implementaciones a nivel de sistema operativo

Varios sistemas operativos diferentes tienen una función de tecla de estado implementada en el núcleo u otro componente de bajo nivel.

Tenex

TENEX tiene esta característica desde al menos 1971: "Otro carácter de interrupción de terminal, control-T, es atendido por el EXEC. Interrumpe el proceso EXEC de un usuario para escribir el tiempo total de CPU y consola utilizados, y el estado de la bifurcación que se está ejecutando bajo el EXEC". [4]

DEC RSTS/E

Se ha documentado que RSTS/E tiene una clave de estado al menos desde 1977 y continuó teniéndola al menos hasta la década de 1980. Al escribir la clave de estado, se obtiene un resultado que se representa mediante el siguiente ejemplo: [5] [6] [2]

18 GARP::KB32 SISTEMA+BAS4F ^C(0R) 11(16)K+ 16K 3,3(+5)

Dic 10 TOPS

En TOPS-10, cuando se presiona la tecla CTRL/T (control-T), el monitor imprime información de estado correspondiente al trabajo en la terminal. Al presionar CTRL/T se muestra el progreso de un trabajo sin interrumpir su ejecución. No se muestra ninguna representación de un carácter control-t en la terminal, solo la información de estado. [7]

DIA: :05:43 CARRERA:0.48 RD:75 WR:8 SOS 12+19p ^C Ctx:1 PC:400275

Los valores incrementales en la tabla a continuación indican que el valor es la acumulación desde el inicio de sesión o el último CTRL/T, lo que haya sido más corto. [7]

TOPS DE DICIEMBRE-20

TOPS-20 proporciona una lista de información más corta que sus predecesores: [9]

09:36:35 PRUEBA Ejecutándose a 404157 Usado 0:00:35.8 en 0:30:39, Carga 4.04

Con su

ITS copió la idea de TOPS-20 , [10] pero utilizó la secuencia de teclas Control+ . [11]_ J

19:29:10 3 RMS HACTRN EMACS1 130566

VSI OpenVMS

OpenVMS tiene una clave de estado que se puede personalizar y funciona con procesos remotos. [12] La salida predeterminada incluye estos elementos: [1]

NODO22::SMITH 16:21:04 (DCL) CPU=00:03:29.39 PF=14802 E/S=18652 MEM=68

Sistema operativo BSD UNIX

4.3BSD-Reno [13] [14] [15] y los sistemas BSD derivados de esa versión y OSF/1 tienen una tecla de estado que por defecto es Ctrl-T y puede asignarse a cualquier tecla. [3] [16] Envía SIGINFO al proceso actual que se ignora por defecto pero puede configurarse para llamar a una función que puede mostrar información de estado del programa. [17] [18]

carga: 0,10 cmd: dormir 1594 [nanslp] 1,33r 0,00u 0,00s 0% 1864k

Sistema operativo Mac OS de Apple

Debido a que XNU tiene un núcleo FreeBSD que ha sido modificado para ser un proceso de servidor Mach, el controlador de terminal incluye una clave de estado que se hereda. [19] [20] [21] [22]

carga: 3.04 cmd: dormir 719 esperando 0.00u 0.00s

Implementaciones a nivel de aplicación

Además de implementar una tecla de estado en el kernel o en un componente del sistema operativo relacionado, algunas aplicaciones tienen características que le permiten presionar una tecla para ver el estado de la aplicación.

SDS-940 con BBN Lisp en 1969

BBN Lisp, que se ejecuta en un SDS 940, tenía una tecla de estado que se implementó en el Lisp que se ejecutaba en un sistema operativo, en lugar de en el núcleo del sistema operativo en sí. [23]

Control-TTiempo de impresión. Provoca una impresión inmediata.Impresión del tiempo total de ejecución.(en tics de reloj) para el trabajo, (inclusodurante la recolección de basura), es decirreloj[2], (p. 14.22). Una serie deEstas impresiones deberían mostrar un aumentonúmeros si el programa está usando algunoTiempo de CPU. Por supuesto, el programa esNo usar tiempo de CPU si está esperandoPara entrada. Esta información puedesirven para ayudar al usuario a determinar sisu LISP y/o el sistema de tiempo compartidoEl sistema se ha bloqueado.

Referencias

  1. ^ ab Miller, David Donald (1997). Conceptos del sistema operativo Open VMS. Elsevier. pág. 151. ISBN 978-1-55558-157-2.
  2. ^ ab Guía del usuario del sistema RSTS/E (PDF) . Maynard, MA: Digital Equipment Corporation. 1985. págs. 4-10. Archivado (PDF) desde el original el 16 de agosto de 2007.
  3. ^ ab Kerrisk, Michael (2010). La interfaz de programación de Linux: un manual de programación de sistemas Linux y UNIX. No Starch Press. pág. 1299. ISBN 978-1-59327-291-3.
  4. ^ Daniel G. Bobrow; Jerry D. Burchfiel; Daniel L. Murphy; Raymond S. Tomlinson (15 de agosto de 1971). "4.4 Caracteres de interrupción". TENEX, un sistema de tiempo compartido paginado para el PDP-10 (PDF) (Informe).
  5. ^ BASIC-PLUS-2 RSTS/E User's Guide (PDF) ( Guía del usuario de BASIC-PLUS-2 RSTS/E) (PDF) . Maynard, MA: Digital Equipment Corporation. 1977. págs. 4-10. Archivado (PDF) desde el original el 9 de octubre de 2006.
  6. ^ Guía del usuario del sistema RSTS/E (PDF) . Maynard, MA: Digital Equipment Corporation. 1979. págs. 4-13. Archivado (PDF) desde el original el 29 de marzo de 2005.
  7. ^ ab Manual de comandos del sistema operativo TOPS-10. Maynard, MA: Digital Equipment Corporation. 1988. págs. 1–7. Archivado desde el original el 4 de diciembre de 2017.
  8. ^ Guía del usuario de TOPS-20. Maynard, MA: Digital Equipment Corporation. 1982. págs. 8-5. Archivado desde el original el 4 de diciembre de 2017.
  9. ^ Guía del usuario de TOPS-20. Maynard, MA: Digital Equipment Corporation. 1982. págs. 8-5. Archivado desde el original el 4 de diciembre de 2017.
  10. ^ "Re: ooh, una *verdadera* guerra de comentarios :)". GitHub . 2000-03-24.
  11. ^ "ES UN ASCO". GitHub .
  12. ^ Peleg, Guy (1 de octubre de 2006). "Actualización de utilidades de OpenVMS" (PDF) . Noticias de OpenVMS . Bruden On Shore Systems Group. Archivado (PDF) desde el original el 6 de diciembre de 2017. Consultado el 6 de noviembre de 2017 .
  13. ^ Karels, Michael J. (26 de agosto de 1989). "Computer Systems Research Group BSD Distribution signal.h 7.5". Conversión de SCCS a fósil del repositorio original de Computer Systems Research Group BSD de la Universidad de California, Berkeley . Regentes de la Universidad de California . Consultado el 5 de diciembre de 2017. #define SIGINFO 29 /* solicitud de información */
  14. ^ Teitelbaum, Marc (1989-10-26). "Computer Systems Research Group BSD Distribution tty.c 7.18". Conversión de SCCS a fósil del repositorio original de Computer Systems Research Group BSD de la Universidad de California, Berkeley . Regentes de la Universidad de California . Consultado el 5 de diciembre de 2017. add ^T prototipo
  15. ^ Teitelbaum, Marc (1990-05-01). "Computer Systems Research Group BSD Distribution tty.c 7.22". Conversión de SCCS a fósiles del repositorio original de BSD de la Universidad de California, Berkeley Computer Systems Research Group . Regents of the University of California . Consultado el 5 de diciembre de 2017 . ^T
  16. ^ stty(1)  –  Manual de comandos generales de BSD
  17. ^ Lucas, Michael W (2015). Tarsnap Mastery. Tilted Windmill Press. pág. 71.
  18. ^ Lavigne, Dru (2004). BSD Hacks 100 Consejos y herramientas industriales . O'Reilly Media. ISBN 978-0-596-55256-5.
  19. ^ "Descripción general de BSD". Apple, Inc. 8 de agosto de 2013. Consultado el 13 de marzo de 2022. La parte BSD del núcleo OS X se deriva principalmente de FreeBSD .
  20. ^ "darwin-xnu/bsd/sys/ttydefaults.h". Github . Apple Computer, Inc. 29 de octubre de 2007 . Consultado el 5 de diciembre de 2017 . #define CSTATUS CTRL('t')
  21. ^ "darwin-xnu/bsd/sys/signal.h". Github . Apple Computer, Inc. 26 de septiembre de 2017 . Consultado el 5 de diciembre de 2017 . #define SIGINFO 29 /* solicitud de información */
  22. ^ "darwin-xnu/bsd/kern/tty.c". Github . Apple Computer, Inc. 26 de septiembre de 2017 . Consultado el 5 de diciembre de 2017 . Informe sobre el estado del grupo de procesos en primer plano.
  23. ^ Bobrow, Daniel ; Murphy, Daniel ; Teitelman, W (abril de 1969). "Sección 23.10". MANUAL DE REFERENCIA DEL SISTEMA BBN - LISP (PDF) .