The Linux kernel's VT subsystem dates back to 1993 and does not understand the concept of multiple "seats", meaning that of up to 63 VTs, only one VT can be active at any given time. Despite this kernel limitation,
multi-seat is supported on
Linux. The feature of "fast user switching" has less severe necessities than multi-seat does because the multiple users are not working simultaneously. The most straight forward solution to elegant multi-seat are
kmscon/
systemd-consoled in combination with
systemd-logind. The available
desktop environments such as
GNOME or
KDE Software Compilation adapt their graphical login and session manager (e.g.
GDM,
SDDM,
LightDM, etc.) to the underneath solution and have to be configured to implement fast user switching that way. For installations with older environments, the functionality must be enabled in the appropriate configuration files then a
hot key sequence such as CTRL-ALT-F8 is pressed. A separate login window will now appear and the second user can log in (or even the first user again). Alternatively, in the default install, new X sessions can be started at will by using different
display parameters to have them run in different virtual terminals (e.g. "
startx -- :1" or "X :1 -query localhost"). Again, hot key sequences allow the user switching to take place. Fast user switching may potentially introduce various security-related complications, and is handled differently among operating systems, each having its advantages and disadvantages. One possibility, simple and secure, is that only the first user gets ownership of resources. A second option is to grant ownership of resources to each new user. The last one to log in takes ownership. A third is to allow all users access to shared resources. This is easier and more intuitive, but allows (for example) one user to record another user's conversation. In Windows, shared resources, such as sound, are available to all sessions. In
Red Hat Linux, the default behavior is to give ownership of "console resources" to the first connected session, but it can share resources among groups of console users or be configured to manage console ownership differently. == In macOS ==