System request

Last updated
A 104-key PC US English keyboard layout with System request circled KeyboardWithPrintScreenRinged.svg
A 104-key PC US English keyboard layout with System request circled

System Request (SysRq or Sys Req) is a key on personal computer keyboards that has no standard use. Introduced by IBM with the PC/AT, it was intended to be available as a special key to directly invoke low-level operating system functions with no possibility of conflicting with any existing software. A special BIOS routine – software interrupt 0x15, subfunction 0x85 [1] – was added to signal the OS when SysRq was pushed or released. Unlike most keys, when it is pressed nothing is stored in the keyboard buffer.

Contents

History

The specific low level function intended for the SysRq key was to switch between operating systems. When the original IBM-PC was created in 1980, there were three leading competing operating systems: PC DOS, CP/M-86, and UCSD p-System, [2] while Xenix was added in 1983–1984. The SysRq key was added so that multiple operating systems could be run on the same computer, using the capabilities of the 286 chip in the PC/AT. [3] [ unreliable source? ]

A special key was needed because most software of the day operated at a low level, often bypassing the OS entirely, and typically made use of many hotkey combinations. The use of terminate-and-stay-resident (TSR) programs further complicated matters. To implement a task switching or multitasking environment, it was thought that a special, separate key was needed. This is similar to the way "Control-Alt-Delete" is used under Windows NT.

On 84-key keyboards (except the 84-key IBM Model M space saver keyboard), SysRq was a key of its own. On the later 101-key keyboard, it shares a physical key with the Print screen key function. The Alt key must be held down while pressing this dual-function key to invoke SysRq. This continues through modern PC keyboards. [4]

The default BIOS keyboard routines simply ignore SysRq and return without taking action. So did the MS-DOS input routines. The keyboard routines in libraries supplied with many high-level languages followed suit. Although it is still included on most PC keyboards manufactured, and though it is used by some[ which? ] debugging software, the key is of no use for the vast majority of users.

On the Hyundai/Hynix Super-16 computer, pressing Ctrl+SysRq will hard boot the system (it will reboot when Ctrl+Alt+Del is unresponsive, and it will invoke startup memory tests that are bypassed on soft-boot).[ citation needed ]

Modern uses

In Linux, the kernel can be configured to provide functions for system debugging and crash recovery. [5] This use is known as the "magic SysRq key".

Microsoft has also used SysRq for various OS- and application-level debuggers. In the CodeView debugger, it was sometimes used to break into the debugging during program execution. [6] For the Windows NT remote kernel debugger, it can be used to force the system into the debugger. [7]

On modern Windows and some Linux desktop environments "Alt + Print screen" (which is the shortcut for SysRq on most modern keyboards [4] ) copies an image of the current active window, instead of the entire screen as Print Screen alone would. [8]

Similar keys

IBM 3270-type console keyboards of the IBM System/370 mainframe computer, created in 1970, had an operator interrupt key that was used to cause the operating system such as VM/370 or MVS to allow the console to give input to the operating system.

See also

Related Research Articles

<span class="mw-page-title-main">BIOS</span> Firmware for hardware initialization and OS runtime services

In computing, BIOS is firmware used to provide runtime services for operating systems and programs and to perform hardware initialization during the booting process. The BIOS firmware comes pre-installed on an IBM PC or IBM PC compatible's system board and exists in some UEFI-based systems to maintain compatibility with operating systems that do not support UEFI native operation. The name originates from the Basic Input/Output System used in the CP/M operating system in 1975. The BIOS originally proprietary to the IBM PC has been reverse engineered by some companies looking to create compatible systems. The interface of that original system serves as a de facto standard.

The Break key of a computer keyboard refers to breaking a telegraph circuit and originated with 19th century practice. In modern usage, the key has no well-defined purpose, but while this is the case, it can be used by software for miscellaneous tasks, such as to switch between multiple login sessions, to terminate a program, or to interrupt a modem connection.

The keyboard for IBM PC-compatible computers is standardized. However, during the more than 30 years of PC architecture being frequently updated, many keyboard layout variations have been developed.

<span class="mw-page-title-main">Operating system</span> Software that manages computer hardware resources

An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs.

<span class="mw-page-title-main">Scroll Lock</span> Computer key

Scroll Lock is a lock key on most IBM-compatible computer keyboards. Depending on the operating system, it may be used for different purposes, and applications may assign functions to the key or change their behavior depending on its toggling state. The key is not frequently used, and therefore some reduced or specialized keyboards lack Scroll Lock altogether.

<span class="mw-page-title-main">System call</span> Way for programs to access kernel services

In computing, a system call is the programmatic way in which a computer program requests a service from the operating system on which it is executed. This may include hardware-related services, creation and execution of new processes, and communication with integral kernel services such as process scheduling. System calls provide an essential interface between a process and the operating system.

<span class="mw-page-title-main">Control key</span> Key on computer keyboards

In computing, a Control keyCtrl is a modifier key which, when pressed in conjunction with another key, performs a special operation. Similarly to the Shift key, the Control key rarely performs any function when pressed by itself. The Control key is located on or near the bottom left side of most keyboards, with many featuring an additional one at the bottom right.

<span class="mw-page-title-main">Windows key</span> Keyboard key

The Windows logo key is a keyboard key which was originally introduced on Microsoft's Natural Keyboard in 1994. This key became a standard key on PC keyboards. In Windows, pressing the key brings up the start menu. Ctrl+Esc performs the same function, in case the keyboard lacks this key.

A secure attention key (SAK) or secure attention sequence (SAS) is a special key or key combination to be pressed on a computer keyboard before a login screen which must, to the user, be completely trustworthy. The operating system kernel, which interacts directly with the hardware, is able to detect whether the secure attention key has been pressed. When this event is detected, the kernel starts the trusted login processing.

<span class="mw-page-title-main">Text-based user interface</span> Type of interface based on outputting to or controlling a text display

In computing, text-based user interfaces (TUI), is a retronym describing a type of user interface (UI) common as an early form of human–computer interaction, before the advent of bitmapped displays and modern conventional graphical user interfaces (GUIs). Like modern GUIs, they can use the entire screen area and may accept mouse and other inputs. They may also use color and often structure the display using box-drawing characters such as ┌ and ╣. The modern context of use is usually a terminal emulator.

<span class="mw-page-title-main">AltGr key</span> Modifier key on some computer keyboards

AltGr is a modifier key found on many computer keyboards. It is primarily used to type special characters and symbols that are not widely used in the territory where sold, such as foreign currency symbols, typographic marks and accented letters. On a typical Windows-compatible PC keyboard, the AltGr key, when present, takes the place of the right-hand Alt key. The key at this location will operate as AltGr if a keyboard layout using AltGr is chosen in the operating system, regardless of what is engraved on the key. In macOS, the Option key has functions similar to the AltGr key.

<span class="mw-page-title-main">Alt key</span> Computer key

The Alt keyAlt on a computer keyboard is used to change (alternate) the function of other pressed keys. Thus, the Alt key is a modifier key, used in a similar fashion to the Shift key. For example, simply pressing A will type the letter 'a', but holding down the Alt key while pressing A will cause the computer to perform an Alt+A function, which varies from program to program. The international standard ISO/IEC 9995-2 calls it Alternate key. The key is located on either side of the space bar, but in non-US PC keyboard layouts, rather than a second Alt key, there is an 'Alt Gr' key to the right of the space bar. Both placements are in accordance with ISO/IEC 9995-2. With some keyboard mappings, the right Alt key can be reconfigured to function as an AltGr key although not engraved as such.

BIOS implementations provide interrupts that can be invoked by operating systems and application programs to use the facilities of the firmware on IBM PC compatible computers. Traditionally, BIOS calls are mainly used by DOS programs and some other software such as boot loaders. BIOS runs in the real address mode of the x86 CPU, so programs that call BIOS either must also run in real mode or must switch from protected mode to real mode before calling BIOS and then switching back again. For this reason, modern operating systems that use the CPU in Protected mode or Long mode generally do not use the BIOS interrupt calls to support system functions, although they use the BIOS interrupt calls to probe and initialize hardware during booting. Real mode has the 1MB memory limitation, modern boot loaders use the unreal mode or protected mode to access up to 4GB memory.

<span class="mw-page-title-main">Esc key</span> Computer key

On computer keyboards, the Esc keyEsc is a key used to generate the escape character. The escape character, when sent from the keyboard to a computer, often is interpreted by software as "stop", "cancel" or "exit", and when sent from the computer to an external device marks the beginning of an escape sequence to specify operating modes or characteristics generally.

The magic SysRq key is a key combination understood by the Linux kernel, which allows the user to perform various low-level commands regardless of the system's state. It is often used to recover from freezes, or to reboot a computer without corrupting the filesystem. Its effect is similar to the computer's hardware reset button but with many more options and much more control.

In computing, a keyboard shortcut is a sequence or combination of keystrokes on a computer keyboard which invokes commands in software.

<span class="mw-page-title-main">Blue screen of death</span> Error screen displayed after a fatal system error on a computer running Microsoft Windows or ReactOS

The blue screen of death is a critical error screen displayed by the Microsoft Windows and ReactOS operating systems in the event of a fatal system error. It indicates a system crash, in which the operating system has reached a critical condition where it can no longer operate safely.

<span class="mw-page-title-main">Linux console</span> Console of the Linux kernel

The Linux console is a system console internal to the Linux kernel. A system console is the device which receives all kernel messages and warnings and which allows logins in single user mode. The Linux console provides a way for the kernel and other processes to send text output to the user, and to receive text input from the user. The user typically enters text with a computer keyboard and reads the output text on a computer monitor. The Linux kernel supports virtual consoles – consoles that are logically separate, but which access the same physical keyboard and display. The Linux console are implemented by the VT subsystem of the Linux kernel, and do not rely on any user space software. This is in contrast to a terminal emulator, which is a user space process that emulates a terminal, and is typically used in a graphical display environment.

In computing, rebooting is the process by which a running computer system is restarted, either intentionally or unintentionally. Reboots can be either a cold reboot in which the power to the system is physically turned off and back on again ; or a warm reboot in which the system restarts while still powered up. The term restart is used to refer to a reboot when the operating system closes all programs and finalizes all pending input and output operations before initiating a soft reboot.

Control-Alt-Delete is a computer keyboard command on IBM PC compatible computers, invoked by pressing the Delete key while holding the Control and Alt keys: Ctrl+Alt+Delete. The function of the key combination differs depending on the context but it generally interrupts or facilitates interrupting a function. For instance, in pre-boot environment or in MS-DOS, Windows 3.0 and earlier versions of Windows or OS/2, the key combination reboots the computer. Starting with Windows 95, the key combination invokes a task manager or security related component that facilitates ending a Windows session or killing a frozen application.

References

  1. "Ralf Brown's Interrupt List" . Retrieved 2018-06-21.
  2. "Original IBM PC Product fact sheet". IBM Information Systems Division. August 12, 1981. Retrieved January 13, 2010.
  3. Personal interview with Sandy Meade, creator of the SysRq key
  4. 1 2 "What Are the Sys Rq, Scroll Lock, and Pause Break Keys on My Keyboard?" . Retrieved March 2, 2020.
  5. "Linux Magic System Request Key Hacks". Linux kernel. Retrieved 2018-06-21.
  6. "Returning Control to CodeView". Microsoft Knowledge Base. Archived from the original on November 8, 2008. Retrieved January 8, 2008.
  7. "How to enable a remote kernel debugger connection on a computer that is running Windows Server 2003 with Service Pack 1". Microsoft Knowledge Base. Archived from the original on October 21, 2012. Retrieved January 8, 2008.
  8. "Copy the window or screen contents" . Retrieved March 2, 2020.
Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PrtScn/
SysRq
Scroll
Lock
Pause/
Break
KB United States-NoAltGr.svg
Insert Home PgUp Num
Lock
Delete End PgDn 7 8 9 +
4 5 6
1 2 3 Enter
   0
   Ins
  .  
Del