In computing, a status key is a keyboard key that causes an operating system and/or a program to output status information on a terminal when it is pressed. In the event that a program on a terminal produces no indications that it is running, typing the status key will reveal the program's state and activity.[1] Older implementations produced only a quick one-line status report for the current job when the status key was pressed.[2] Newer implementations support sending a signal to the current process to allow the application to report on status as well.[3]
RSTS/E is documented as having a status key at least as far back as 1977 and it continued to have one into at least the 1980s. Typing the status key results in output that is represented by the following example:[4][5][2]
On TOPS-10 when the CTRL/T (control-T) key is pressed, the monitor prints status information pertaining to the job on the terminal. Typing CTRL/T displays a job's progress without interrupting its execution. No representation of a control-t character is displayed on the terminal, just the status information.[6]
DAY: :05:43 RUN:0.48 RD:75 WR:8 SOS 12+19p ^C Ctx:1 PC:400275
Incremental values in the table below indicate that the value is the accumulation since login or last CTRL/T whichever was shortest.[6]
Field
Value
Incremental day time
DAY: :05:43
Incremental run time
RUN:0.48
Incremental disk reads
RD:75
Incremental disk writes
WR:8
Program name
SOS
Amount of memory program is using
12+19p
Context number
Ctx:1
Job state code
^C
Program Counter
PC:400275
Job state, INPUT WAIT or OUTPUT WAIT
(only when CTRL/T is used at USER level)
TOPS-20 reports a shorter list of information than its predecessors:[8]
09:36:35 TEST Running at 404157 Used 0:00:35.8 in 0:30:39, Load 4.04
Field
Value
Time
09:36:35
Name
TEST
Status
Running at 404157
Used CPU-time
Used 0:00:35.8
Logged-in-time
in 0:30:39
Load average
Load 4.04
OpenVMS has a status key which can be customized and works with remote processes.[9] The default output includes these items:[1]
4.3BSD-Reno[10][11][12] and and systems derived from it have a status key which can be assigned to any key.[13] They send SIGINFO to the current process which is ignored by default but can be configured to call a function which can display status information from the program.
GNU Hurd has VSTATUS and SIGINFO but not NOKERNINFO, and the status line is just some stub in libc that prints "got a SIGINFO" at this point. In 1993 the stty command was modified to support a status key[17] and the in ???? the "dd" command was modified to support the SIGINFO signal.[18]
^TOPS-20 User's Guide. Maynard, MA: Digital Equipment Corportation. 1982. p. 8-5. Archived from the original on 2017-12-04.
^TOPS-20 User's Guide. Maynard, MA: Digital Equipment Corportation. 1982. p. 8-5. Archived from the original on 2017-12-04.
^Peleg, Guy (2006-10-01). "OpenVMS Utilties Update"(PDF). OpenVMS News. Bruden On Shore Systems Group. Archived(PDF) from the original on 2017-11-06. Retrieved 2017-11-06. {{cite web}}: |archive-date= / |archive-url= timestamp mismatch; 2017-12-06 suggested (help)
^Karels, Michael J. (1989-08-26). "Computer Systems Research Group BSD Distribution signal.h 7.5". SCCS to fossil conversion of the original University of California, Berkeley Computer Systems Research Group BSD repository. Regents of the University of California. Retrieved 2017-12-05. #define SIGINFO 29 /* information request */
^Teitelbaum, Marc (1989-10-26). "Computer Systems Research Group BSD Distribution tty.c 7.18". SCCS to fossil conversion of the original University of California, Berkeley Computer Systems Research Group BSD repository. Regents of the University of California. Retrieved 2017-12-05. add ^T prototype
^Teitelbaum, Marc (1990-05-01). "Computer Systems Research Group BSD Distribution tty.c 7.22". SCCS to fossil conversion of the original University of California, Berkeley Computer Systems Research Group BSD repository. Regents of the University of California. Retrieved 2017-12-05. ^T