GNU Screen

From Wikipedia, the free encyclopedia
Jump to: navigation, search
GNU Screen
Gnuscreen.png
GNU Screen with split-screen
Developer(s) Amadeusz Sławiński and the GNU Project
Initial release 1987
Stable release 4.3.1 (June 28, 2015; 10 months ago (2015-06-28)) [±]
Preview release None [±]
Development status Active
Written in C
Operating system Unix-like
Type Terminal multiplexer
License GNU GPL v3
Website www.gnu.org/s/screen/

GNU Screen is a terminal multiplexer, a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate login sessions inside a single terminal window, or detach and reattach sessions from a terminal. It is useful for dealing with multiple programs from a command line interface, and for separating programs from the session of the Unix shell that started the program, particularly so a remote process continues running even when the user is disconnected.

Released under the terms of version 3 or later of the GNU General Public License, GNU Screen is free software.

Features[edit]

Further information: Terminal multiplexer

GNU Screen can be thought of as a text version of graphical window managers, or as a way of putting virtual terminals into any login session. It is a wrapper that allows multiple text programs to run at the same time, and provides features that allow the user to use the programs within a single interface productively. This enables the following features: persistence, multiple windows, and session sharing.

Screen is often used when a network connection to the terminal is unreliable, as a dropped network connection typically terminates all programs the user was running (child processes of the login session), due to the session ending and sending a "hangup" signal (SIGHUP) to all the child processes. Running the applications under screen means that the session does not terminate – only the now-defunct terminal gets detached – so applications don't even know the terminal has detached, and allows the user to reattach the session later and continue working from where they left off.

History[edit]

Screen was originally designed by Oliver Laumann and Carsten Bormann and published in 1987.[1]

Design criteria included VT100 emulation (including ANSI X3.64 (ISO 6429) and ISO 2022) and reasonable performance for heavy daily use when character-based terminals were still common. Later, the at-the-time novel feature of disconnection/reattachment was added.

Around 1990, Laumann handed over maintenance of the code to Jürgen Weigert and Michael Schroeder at the University of Erlangen-Nuremberg, who later moved the project to the GNU Project and added features such as split-screen, cut-and-paste, and screen-sharing.[2]

By 2014, development had slowed to a crawl. Wanting to change this, Amadeusz Sławiński volunteered to help. In response, Laumann granted him maintainership. Sławiński proceeded to put out the first new Screen release in half a decade. Because there were some unofficial "Screen 4.1" releases floating around the Internet, he called this new release "Screen 4.2.0".

See also[edit]

  • xpra: a tool that lets you run X Window System applications on one machine, disconnect them from that machine's display, then reconnect them to another machine's display.
  • Byobu (software): a frontend for GNU Screen
  • tmux: a BSD-licensed terminal multiplexer with a feature set similar to GNU Screen's

Further reading[edit]

References[edit]

Notes[edit]

External links[edit]