blob: 9cfbdb318ed9dc24fc4a140d9d2fb9b62b916416 [file] [log] [blame]
Greg Kroah-Hartmanbdcffc52011-02-22 15:41:47 -08001config VT
2 bool "Virtual terminal" if EXPERT
3 depends on !S390
4 select INPUT
5 default y
6 ---help---
7 If you say Y here, you will get support for terminal devices with
8 display and keyboard devices. These are called "virtual" because you
9 can run several virtual terminals (also called virtual consoles) on
10 one physical terminal. This is rather useful, for example one
11 virtual terminal can collect system messages and warnings, another
12 one can be used for a text-mode user session, and a third could run
13 an X session, all in parallel. Switching between virtual terminals
14 is done with certain key combinations, usually Alt-<function key>.
15
16 The setterm command ("man setterm") can be used to change the
17 properties (such as colors or beeping) of a virtual terminal. The
18 man page console_codes(4) ("man console_codes") contains the special
19 character sequences that can be used to change those properties
20 directly. The fonts used on virtual terminals can be changed with
21 the setfont ("man setfont") command and the key bindings are defined
22 with the loadkeys ("man loadkeys") command.
23
24 You need at least one virtual terminal device in order to make use
25 of your keyboard and monitor. Therefore, only people configuring an
26 embedded system would want to say N here in order to save some
27 memory; the only way to log into such a system is then via a serial
28 or network connection.
29
30 If unsure, say Y, or else you won't be able to do much with your new
31 shiny Linux system :-)
32
33config CONSOLE_TRANSLATIONS
34 depends on VT
35 default y
36 bool "Enable character translations in console" if EXPERT
37 ---help---
38 This enables support for font mapping and Unicode translation
39 on virtual consoles.
40
41config VT_CONSOLE
42 bool "Support for console on virtual terminal" if EXPERT
43 depends on VT
44 default y
45 ---help---
46 The system console is the device which receives all kernel messages
47 and warnings and which allows logins in single user mode. If you
48 answer Y here, a virtual terminal (the device used to interact with
49 a physical terminal) can be used as system console. This is the most
50 common mode of operations, so you should say Y here unless you want
51 the kernel messages be output only to a serial port (in which case
52 you should say Y to "Console on serial port", below).
53
54 If you do say Y here, by default the currently visible virtual
55 terminal (/dev/tty0) will be used as system console. You can change
56 that with a kernel command line option such as "console=tty3" which
57 would use the third virtual terminal as system console. (Try "man
58 bootparam" or see the documentation of your boot loader (lilo or
59 loadlin) about how to pass options to the kernel at boot time.)
60
61 If unsure, say Y.
62
63config HW_CONSOLE
64 bool
65 depends on VT && !S390 && !UML
66 default y
67
68config VT_HW_CONSOLE_BINDING
69 bool "Support for binding and unbinding console drivers"
70 depends on HW_CONSOLE
71 default n
72 ---help---
73 The virtual terminal is the device that interacts with the physical
74 terminal through console drivers. On these systems, at least one
75 console driver is loaded. In other configurations, additional console
76 drivers may be enabled, such as the framebuffer console. If more than
77 1 console driver is enabled, setting this to 'y' will allow you to
78 select the console driver that will serve as the backend for the
79 virtual terminals.
80
81 See <file:Documentation/console/console.txt> for more
82 information. For framebuffer console users, please refer to
83 <file:Documentation/fb/fbcon.txt>.
84
85config UNIX98_PTYS
86 bool "Unix98 PTY support" if EXPERT
87 default y
88 ---help---
89 A pseudo terminal (PTY) is a software device consisting of two
90 halves: a master and a slave. The slave device behaves identical to
91 a physical terminal; the master device is used by a process to
92 read data from and write data to the slave, thereby emulating a
93 terminal. Typical programs for the master side are telnet servers
94 and xterms.
95
96 Linux has traditionally used the BSD-like names /dev/ptyxx for
97 masters and /dev/ttyxx for slaves of pseudo terminals. This scheme
98 has a number of problems. The GNU C library glibc 2.1 and later,
99 however, supports the Unix98 naming standard: in order to acquire a
100 pseudo terminal, a process opens /dev/ptmx; the number of the pseudo
101 terminal is then made available to the process and the pseudo
102 terminal slave can be accessed as /dev/pts/<number>. What was
103 traditionally /dev/ttyp2 will then be /dev/pts/2, for example.
104
105 All modern Linux systems use the Unix98 ptys. Say Y unless
106 you're on an embedded system and want to conserve memory.
107
108config DEVPTS_MULTIPLE_INSTANCES
109 bool "Support multiple instances of devpts"
110 depends on UNIX98_PTYS
111 default n
112 ---help---
113 Enable support for multiple instances of devpts filesystem.
114 If you want to have isolated PTY namespaces (eg: in containers),
115 say Y here. Otherwise, say N. If enabled, each mount of devpts
116 filesystem with the '-o newinstance' option will create an
117 independent PTY namespace.
118
119config LEGACY_PTYS
120 bool "Legacy (BSD) PTY support"
121 default y
122 ---help---
123 A pseudo terminal (PTY) is a software device consisting of two
124 halves: a master and a slave. The slave device behaves identical to
125 a physical terminal; the master device is used by a process to
126 read data from and write data to the slave, thereby emulating a
127 terminal. Typical programs for the master side are telnet servers
128 and xterms.
129
130 Linux has traditionally used the BSD-like names /dev/ptyxx
131 for masters and /dev/ttyxx for slaves of pseudo
132 terminals. This scheme has a number of problems, including
133 security. This option enables these legacy devices; on most
134 systems, it is safe to say N.
135
136
137config LEGACY_PTY_COUNT
138 int "Maximum number of legacy PTY in use"
139 depends on LEGACY_PTYS
140 range 0 256
141 default "256"
142 ---help---
143 The maximum number of legacy PTYs that can be used at any one time.
144 The default is 256, and should be more than enough. Embedded
145 systems may want to reduce this to save memory.
146
147 When not in use, each legacy PTY occupies 12 bytes on 32-bit
148 architectures and 24 bytes on 64-bit architectures.
149
150