Discover

VIRTUAL CONSOLE

(Redirected from Virtual console (computer user-interface))

First virtual console showing Knoppix boot messages

In some operating systems such as UnixWare, Linux and BSD, a 'virtual console' ('VC', sometimes 'virtual terminal', 'VT') is a conceptual combination of the keyboard and the display for a user interface. The concrete combination is the system console of the computer, where the user can switch between the virtual consoles to access multiple unrelated user interfaces. Usually in Linux, the first six virtual consoles provide a text terminal with a login prompt to a unix shell. The graphical X Window System starts in the seventh virtual console.
In Linux, the switching is performed with a key combination of ''Alt'' plus a function key -- for example ''Alt+F1'' to access the virtual console number 1. ''Alt+Left arrow'' changes to the previous virtual console and ''Alt+Right arrow'' to the next virtual console. To switch from the X Window System, ''Ctrl+Alt+function key'' works. These are the default key combinations, as they can be redefined.
The need for virtual consoles has lessened now that most applications work in the graphical framework of the X Window System, where each program has a window and the text mode programs can be run in terminal emulator windows. Several X sessions might be desired though, such as in the case of fast user switching or when debugging X programs from another X server, and in those cases each X session runs in a separate virtual console. GNU Screen is a program that can change between several text-mode programs in one textual login. There are also other graphical frameworks such as FrameBuffer UI, Y Window System, and Fresco.

Contents
Interface
Workstations
See also
References
External links

Interface


The virtual consoles are represented by device special files /dev/tty1, /dev/tty2 etc. There are also special files /dev/console, /dev/tty and /dev/tty0. The virtual consoles can be configured in the file /etc/inittab read by ''init'' -- typically it starts the text mode login process ''getty'' for several virtual consoles. X Window System can be configured in /etc/inittab or by an X display manager.
The programs used to access the virtual consoles typically include ''chvt'' to switch the current virtual console, ''openvt'' to run a program on a new virtual console, and ''deallocvt'' to close a currently unused virtual console. The program ''startx'' starts the X Window System on a new virtual console. There are also other graphical programs that can start from the console, such as LinuxTV and MPlayer.
Programs can access the virtual consoles by the device special files. In text mode, writing to the file displays text on the virtual console and reading from the file returns text the user writes to the virtual console. As with other text terminals, there are also special escape sequences, control characters and termios functions that a program can use, most easily via a library such as ''ncurses''. For more complex operations, the programs can use console and terminal special ''ioctl'' system calls. Graphical programs can use libraries such as DirectFB, DRI, SDL or the earlier SVGALib.

Workstations


Unix workstations, like these manufactured by Sun or Silicon Graphics, did not include virtual consoles. The only purpose of console would be fixing the system so that graphical environment could start.

See also



Computer console for the concrete console

Text terminal for the textual interface in general

Linux framebuffer for a graphical interface to the console

Pseudo terminal for even more virtual consoles

Terminal emulator for an application program that has the same function as a textual virtual console

References



★ FreeBSD Handbook, chapter 3.2 Virtual Consoles and Terminals

External links



The Linux keyboard and console HOWTO

Linux command chvt to switch vt from cmdline

Console Definition from The Linux Information Project.

This article provided by Wikipedia. To edit the contents of this article, click here for original source.

psst.. try this: add to faves