summaryrefslogtreecommitdiff
path: root/usr/src/man/man7i/vt.7i
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/man/man7i/vt.7i')
-rw-r--r--usr/src/man/man7i/vt.7i329
1 files changed, 0 insertions, 329 deletions
diff --git a/usr/src/man/man7i/vt.7i b/usr/src/man/man7i/vt.7i
deleted file mode 100644
index 67659e830b..0000000000
--- a/usr/src/man/man7i/vt.7i
+++ /dev/null
@@ -1,329 +0,0 @@
-.\" Copyright (c) 2017, Joyent, Inc.
-.\" Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved.
-.\" The contents of this file are subject to the terms of the
-.\" Common Development and Distribution License (the "License").
-.\" You may not use this file except in compliance with the License.
-.\"
-.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-.\" or http://www.opensolaris.org/os/licensing.
-.\" See the License for the specific language governing permissions
-.\" and limitations under the License.
-.\"
-.\" When distributing Covered Code, include this CDDL HEADER in each
-.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-.\" If applicable, add the following below this CDDL HEADER, with the
-.\" fields enclosed by brackets "[]" replaced with your own identifying
-.\" information: Portions Copyright [yyyy] [name of copyright owner]
-.Dd December 28, 2020
-.Dt VT 7I
-.Os
-.Sh NAME
-.Nm vt
-.Nd Solaris virtual console interface
-.Sh SYNOPSIS
-.In sys/kd.h
-.In sys/vt.h
-.Sh DESCRIPTION
-The virtual console device driver \(em also known as virtual terminal
-.Pq Sy VT
-\(em is a layer of management functions that provides facilities to
-support and switch between multiple screen faces on a single physical device.
-.Pp
-VT's are accessed in the same way as other devices.
-The
-.Xr open 2
-system
-call is used to open the virtual console and
-.Xr read 2 ,
-.Xr write 2
-and
-.Xr ioctl 2
-are used in the normal way and support the functionality of the
-underlying device.
-In addition, some virtual console-specific ioctls are
-provided and described below.
-.Pp
-The VT provides a link between different screen faces and the device.
-The
-.Sy "active virtual console"
-corresponds to the currently visible screen face.
-Device input is directed to the active console and any device-specific modes
-that change on a per virtual terminal basis are set to the characteristics
-associated with the active console.
-.Pp
-You manage VT's by intercepting keyboard sequences
-.Pq Dq "hot key" .
-To maintain consistency with Xserver, the virtual console device driver
-supports the Ctrl, Alt, F# and arrow keys.
-.Pp
-The sequence
-.Sy "AltL + F#"
-(where AltL represents the left Alt key and F# represents function keys 1
-through 12) is used to select virtual console 1-12.
-The sequence
-.Sy "AltGraph + F#"
-(where AltGraph represents the right Alt key and F# represent function keys 1
-through 12) is for virtual console 13-24.
-.Sy "Alt + F1"
-chooses the system console (also known as virtual console 1).
-The sequence
-.Sy "Alt + \(->"
-(where "\(->" represents the right directional arrow)
-selects the next VT in a circular ring fashion and
-.Sy "Alt + \(<-"
-(where "\(<-" represents the left directional arrow) changes to the previous
-console in a circular fashion.
-The sequence
-.Sy "Alt + \(ua"
-(where "\(ua" represents the up directional arrow) is for the last used console.
-.Pp
-Virtual console switching can be done automatically
-.Pq Dv VT_AUTO
-on receipt of a
-.Dq hot-key
-or by the process owning the VT
-.Pq Dv VT_PROCESS .
-When performed automatically, the process associated with the virtual console is
-unaware of the switch.
-Saving and restoring the device are handled by the
-underlying device driver and the virtual console manager.
-Note that automatic switching is the default mode.
-.Pp
-When a
-.Dq hot-key
-is sent when in process-controlled switch mode, the process
-owning the VT is sent a signal (relsig) it has specified to the virtual console
-manager (see
-.Xr signal 3C )
-requesting the process to release the physical device.
-At this point, the virtual console manager awaits the
-.Dv VT_RELDISP
-ioctl from the process.
-If the process refuses to release the device (meaning
-the switch does not occur), it performs a
-.Dv VT_RELDISP
-ioctl with an argument of 0 (zero).
-If the process desires to release the device, it saves
-the device state (keyboard, display, and I/O registers) and then performs a
-.Dv VT_RELDISP
-with an argument of 1 to complete the switch.
-.Pp
-A ring of VT's can contain intermixed auto mode and process control mode
-consoles.
-When an auto mode process becomes active, the underlying device
-driver and the virtual console manager handle the restoring of the device.
-Process control mode processes are sent a specified signal (acqsig) when they
-become the active console.
-The process then restores the device state
-(keyboard, display, and I/O registers) and performs
-.Dv VT_RELDISP
-ioctl with an argument of
-.Dv VT_ACKACQ
-to complete the switching protocol.
-.Pp
-The modify-operations ioctls
-.Po
-.Dv VT_SETMODE ,
-.Dv VT_RELDISP ,
-.Dv VT_WAITACTIVE ,
-.Dv KDSETMODE
-.Pc
-check if the VT is the controlling tty of
-the calling process.
-If not, the sys_devices privilege is enforced.
-.Dv VT_ACTIVATE
-requires the sys_devices privilege.
-Note that there is no
-controlling tty and privilege check for query/view operations.
-.Sh IOCTLS
-The following ioctls apply to devices that support virtual consoles:
-.Bl -tag -width VT_ENABLED
-.It Dv VT_ENABLED
-Queries to determine if VT functionality is available on the system.
-The argument is a pointer to an integer.
-If VT functionality is available, the
-integer is 1, otherwise it is 0.
-.It Dv VT_OPENQRY
-Finds an available VT.
-The argument is a pointer to an integer.
-The integer is
-filled in with the number of the first available console that no other process
-has open (and hence, is available to be opened).
-If there are no available
-VT's, -1 is filled in.
-.It Dv VT_GETMODE
-Determines the VT's current mode, either
-.Dv VT_AUTO
-or
-.Dv VT_PROCESS .
-The
-argument is the address of the following structure, as defined in
-.In sys/vt.h
-.Bd -literal -offset 2n
-struct vt_mode {
- char mode; /* VT mode */
- char waitv; /* not used */
- short relsig; /* signal to use for release request */
- short acqsig; /* signal to use for display acquired */
- short frsig; /* not used */
-}
-
-/* Virtual console Modes */
-#define VT_AUTO 0 /* automatic VT switching */
-#define VT_PROCESS 1 /* process controls switching */
-.Ed
-.Pp
-The structure will be filled in with the current value for each field.
-.It Dv VT_SETMODE
-Sets the VT mode.
-The argument is a pointer to a vt_mode structure as defined above.
-The structure should be filled in with the desired mode.
-If process-control mode is specified, the signals used to communicate with the
-process should be specified.
-If any signals are not specified (value is zero), the signal default is
-.Dv SIGUSR1
-(for relsig and acqsig).
-.It Dv VT_RELDISP
-Tells the VT manager if the process releases (or refuses to release) the
-display.
-An argument of 1 indicates the VT is released.
-An argument of 0 indicates refusal to release.
-The
-.Dv VT_ACKACQ
-argument indicates if acquisition of the VT has been completed.
-.It Dv VT_ACTIVATE
-Makes the VT specified in the argument the active VT (in the same manner as if
-a hotkey initiated the switch).
-If the specified VT is not open or does not exist, the call fails and errno is
-set to
-.Er ENXIO .
-.It Dv VT_WAITACTIVE
-If the specified VT is currently active, this call returns immediately.
-Otherwise, it sleeps until the specified VT becomes active, at which point it
-returns.
-.It Dv VT_GETSTATE
-Obtains the active VT number and a list of open VTs.
-The argument is an address to the following structure:
-.Bd -literal -offset 2n
-struct vt_stat {
- unsigned short v_active, /* number of the active VT */
- v_signal, /* not used */
- /*
- * count of open VTs. For every 1 in this
- * field, there is an open VT
- */
- v_state;
-}
-.Ed
-.Pp
-With
-.Dv VT_GETSTATE ,
-the VT manager first gets the number of the active VT,
-then determines the number of open VTs in the system and sets a 1 for each open
-VT in v_state.
-Next, the VT manager transfers the information in structure
-.Vt vt_stat
-passed by the user process.
-.It Dv KDGETMODE
-Obtains the text/graphics mode associated with the VT.
-.Bd -literal -offset 2n
-#define KD_TEXT 0
-#define KD_GRAPHICS 1
-.Ed
-.It Dv KDSETMODE
-Sets the text/graphics mode to the VT.
-.It Dv KD_TEXT
-indicates that console text is displayed on the screen.
-Normally
-.Dv KD_TEXT
-is combined with
-.Dv VT_AUTO
-mode for text console terminals,
-so that the console text display automatically is saved and restored on the hot
-key screen switches.
-.Pp
-.Dv KD_GRAPHICS
-indicates that the user/application (usually Xserver) has
-direct control of the display for this VT in graphics mode.
-Normally
-.Dv KD_GRAPHICS
-is combined with
-.Dv VT_PROCESS
-mode for this VT indicating
-direct control of the display in graphics mode.
-In this mode, all writes to the
-VT using the write system call are ignored, and you must save and restore the
-display on the hot key screen switches.
-.Pp
-When the mode of the active VT is changed from
-.Dv KD_TEXT
-to
-.Dv KD_GRAPHICS
-or a VT of
-.Dv KD_GRAPHICS
-mode is made active from a
-previous active VT of
-.Dv KD_TEXT
-mode, the virtual console manager initiates a
-.Dv KDSETMODE
-ioctl with
-.Dv KD_GRAPHICS
-as the argument to the underlying console frame buffer device indicating that
-current display is running into graphics mode.
-.Pp
-When the mode of the active VT is changed from
-.Dv KD_GRAPHICS
-to
-.Dv KD_TEXT
-or a VT of
-.Dv KD_TEXT
-mode is activated from a previous active VT of
-.Dv KD_GRAPHICS
-mode, the virtual console manager initiates a
-.Dv KDSETMODE
-ioctl with
-.Dv KD_TEXT
-as the argument to the underlying console frame buffer device indicating that
-current display is running into console text mode.
-.El
-.Sh FILES
-.Bl -tag -width xxxxxxxxx
-.It Pa /dev/vt/#
-VT devices.
-.El
-.Sh SEE ALSO
-.Xr ioctl 2 ,
-.Xr signal 3C ,
-.Xr wscons 7D
-.Sh NOTES
-By default, there are only five virtual console instance login prompts running
-on
-.Pa /dev/vt/#
-(where "#" represents 2 to 6) in addition to the system
-console running on
-.Pa /dev/console .
-Normally Xorg uses the seventh virtual console
-.Pq Pa /dev/vt/7 .
-To switch from consoles to Xserver (which normally
-picks up the first available virtual console), use [ Ctrl + ] Alt + F7 .
-.Bd -literal -offset indent
-# svcs | grep login
-online 17:49:11 svc:/system/console-login:default
-online 17:49:11 svc:/system/console-login:vt2
-online 17:49:11 svc:/system/console-login:vt3
-online 17:49:11 svc:/system/console-login:vt4
-online 17:49:11 svc:/system/console-login:vt5
-online 17:49:11 svc:/system/console-login:vt6
-.Ed
-.Pp
-.Sy console-login:default
-is for the system console, others for virtual consoles.
-.Pp
-You can modify properties/disable/enable and remove/add virtual consoles using
-.Xr smf 5 :
-.Bd -literal -offset indent
-# svccfg -s console-login add vt8
-# svccfg -s console-login:vt8 setprop \e
- ttymon/device=astring: "/dev/vt/8"
-# svcadm enable console-login:vt8
-.Ed