Fast user switching is a feature of a multi-user operating system which allows users to switch between user accounts without quitting applications and logging out.
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.[1]
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.
Fast user switching was introduced in 2003 with Mac OS X Panther.[2]
Fast user switching in Windows is based on Remote Desktop Services technology.[3] In Windows XP, GINA which is a component of Winlogon, and with which fast user switching interacts, can be programmatically called to automate a fast user switch.[4] A PowerToy known as Super fast user switcher was offered in 2002 by Microsoft. It allowed fast user switching using a keyboard hotkey (Win+Q) (similar to Alt-Tab) without even going to the Welcome screen.[5] It was later made unavailable when the original set of PowerToys was replaced by updated versions, but still works with Windows XP SP3 (32-bit) when running as administrator.
In Windows Vista, GINA is replaced by Credential Providers; however, they do not support programmatic initiation of fast user switching.[6]
In Windows XP, fast user switching was unavailable if the computer is on a Windows Server domain network or if Offline Files was enabled. Windows Vista and later no longer have these restrictions.[7] Fast user switching is also not available on Windows XP if SerialKeys (an accessibility option that allows users to use speech augmentation devices) or Client Services for NetWare are installed.