Twin (windowing system)
Encyclopedia
Twin is a windowing environment with mouse
support, window manager
, terminal emulator
and networked
clients, all inside a text mode
display
.
Twin supports a variety of displays:
Twin is tested on Linux
(x86, PowerPC
, DEC Alpha
, SPARC
) and on FreeBSD
; porting
to SunOS
is in progress.
immediately after having learned the C programming language
; but he soon abandoned it, since within DOS there was no multitasking
, consequently he could not have any other program run inside the windows drawn by Twin. In late 1999, he resurrected twin by porting
it to Linux.
Pointing device
A pointing device is an input interface that allows a user to input spatial data to a computer...
support, window manager
Window manager
A window manager is system software that controls the placement and appearance of windows within a windowing system in a graphical user interface. Most window managers are designed to help provide a desktop environment...
, terminal emulator
Terminal emulator
A terminal emulator, terminal application, term, or tty for short, is a program that emulates a video terminal within some other display architecture....
and networked
Computer network
A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....
clients, all inside a text mode
Text mode
Text mode is a kind of computer display mode in which the content of the screen is internally represented in terms of characters rather than individual pixels. Typically, the screen consists of a uniform rectangular grid of character cells, each of which contains one of the characters of a...
display
Electronic visual display
An electronic visual display is display technology which incorporates flat panel displays, performs as a video display, output device for presentation of images transmitted electronically, for visual reception, without producing a permanent record....
.
Twin supports a variety of displays:
- plain text computer terminalComputer terminalA computer terminal is an electronic or electromechanical hardware device that is used for entering data into, and displaying data from, a computer or a computing system...
s (any termcapTermcapTermcap is a software library and database used on Unix-like computers. It enables programs to use display computer terminals in a device-independent manner, which greatly simplifies the process of writing portable text mode applications...
/ncursesNcursesncurses is a programming library that provides an API which allows the programmer to write text user interfaces in a terminal-independent manner. It is a toolkit for developing "GUI-like" application software that runs under a terminal emulator...
compatible terminal, the virtual consoleVirtual consoleA virtual console – also known as a virtual terminal – is a conceptual combination of the keyboard and display for a computer user interface. It is a feature of some operating systems such as UnixWare, Linux, and BSD, in which the system console of the computer can be used to switch between...
, Twin's own terminal emulator); - X11X Window SystemThe X window system is a computer software system and network protocol that provides a basis for graphical user interfaces and rich input device capability for networked computers...
, where it can be used as a multi-window XtermXtermIn computing, xterm is the standard terminal emulator for the X Window System. A user can have many different invocations of xterm running at once on the same display, each of which provides independent input/output for the process running in it .xterm originated prior to the X Window System...
; - itself (it is possible to display a Twin on, or "inside", another Twin);
- twdisplay, a general network-transparent display client, used to attach/detach more displays "on the fly".
Twin is tested on Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
(x86, PowerPC
Power Architecture
Power Architecture is a broad term to describe similar RISC instruction sets for microprocessors developed and manufactured by such companies as IBM, Freescale, AMCC, Tundra and P.A. Semi...
, DEC Alpha
DEC Alpha
Alpha, originally known as Alpha AXP, is a 64-bit reduced instruction set computer instruction set architecture developed by Digital Equipment Corporation , designed to replace the 32-bit VAX complex instruction set computer ISA and its implementations. Alpha was implemented in microprocessors...
, SPARC
SPARC
SPARC is a RISC instruction set architecture developed by Sun Microsystems and introduced in mid-1987....
) and on FreeBSD
FreeBSD
FreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
; porting
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...
to SunOS
SunOS
SunOS is a version of the Unix operating system developed by Sun Microsystems for their workstation and server computer systems. The SunOS name is usually only used to refer to versions 1.0 to 4.1.4 of SunOS...
is in progress.
Uses
- The terminal emulator Eterm has an interface layer named Escreen for interoperating with the terminal multiplexers GNU ScreenGNU ScreenGNU Screen is a software application that can be used to multiplex several virtual consoles, allowing a user to access multiple separate terminal sessions inside a single terminal window or remote terminal session...
or Twin. This allows Eterm to support multiple sub-shellShell (computing)A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...
sessions within a single window. This feature works similarly to the "tabbedTab (GUI)In the area of graphical user interfaces , a tabbed document interface is one that allows multiple documents to be contained within a single window, using tabs as a navigational widget for switching between sets of documents...
" sessions offered by terminal emulators such as KonsoleKonsoleKonsole is a free terminal emulator which is part of KDE Software Compilation. Konsole was originally written by Lars Doelle.The KDE applications Konqueror, Krusader, Kate, Konversation, Dolphin and KDevelop use Konsole to provide embedded terminal functionality.- Features :* Tabbed terminals...
or GNOME TerminalGNOME TerminalGNOME Terminal is a terminal emulator for the GNOME desktop environment written by Havoc Pennington and others. Terminal emulators allow users to execute commands using a real UNIX shell while remaining on their graphical desktop.-Features:...
. However, being an interface to existing software, Escreen has the advantage of providing additional capabilities like multiple regions per display, detach/reattach capability, seamless remote session support, firewallFirewall (computing)A firewall is a device or set of devices designed to permit or deny network transmissions based upon a set of rules and is frequently used to protect networks from unauthorized access while permitting legitimate communications to pass....
support, and more.
History
Written by Massimiliano Ghilardi, Twin started in 1993 as his first big program for PC DOSDOS
DOS, short for "Disk Operating System", is an acronym for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions 95, 98, and Millennium Edition.Related...
immediately after having learned the C programming language
C (programming language)
C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating system....
; but he soon abandoned it, since within DOS there was no multitasking
Computer multitasking
In computing, multitasking is a method where multiple tasks, also known as processes, share common processing resources such as a CPU. In the case of a computer with a single CPU, only one task is said to be running at any point in time, meaning that the CPU is actively executing instructions for...
, consequently he could not have any other program run inside the windows drawn by Twin. In late 1999, he resurrected twin by porting
Porting
In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed...
it to Linux.
See also
- Computer accessibilityComputer accessibilityIn human-computer interaction, computer accessibility refers to the accessibility of a computer system to all people, regardless of disability or severity of impairment...
- Text user interfaceText user interfaceTUI short for: Text User Interface or Textual User Interface , is a retronym that was coined sometime after the invention of graphical user interfaces, to distinguish them from text-based user interfaces...
(TUI) - General Graphics InterfaceGeneral Graphics InterfaceGeneral Graphics Interface is a project that aims to develop a reliable, stable and fast computer graphics system that works everywhere...
(GGI)