A KVM switch (with KVM being an abbreviation for "keyboard, video and mouse") is a hardware device that allows a user...
A KVM switch (with KVM being an abbreviation for "keyboard, video and mouse") is a hardware device that allows a user to control multiple computers from one or more keyboard, video monitor and mouse. Although multiple computers are connected to the KVM, typically a smaller number of computers can be controlled at any given time. Modern devices have also added the ability to share other peripherals like USB devices and audio.
Before mouse became relevant in server switching applications, Keyboard Video Switch (KVS) was used to describe keyboard and monitor switching devices. With the increased adoption of Microsoft Windows, the mouse and other I/O ports in peripheral switching became prevalent. Remigius Shatas, the founder of Cybex (a popular peripheral switch manufacturer at that time) expanded the initialism to Keyboard, Video and Mouse (KVM) in 1995. At the same time, Universal Serial Bus (USB) had been becoming the new industry standard for computer peripherals (including keyboards, mouse, touchscreen, pointing devices and other I/O devices ..etc)to computer systems. After Windows 7, released in 2009, caused the standard touchscreen built-in interface/driver of Windows 7, the USB HID devices sharing (specially for touchscreen monitor) had became the new focus of new generation of KVM switch. As a result, the KVM switch is also called KVMP (P for the Peripherals)/ KVMT(T for the Touchscreen) switch or (in general) called Console Sharing Switch. 
With the popularity of USB—USB keyboards, mice, and I/O devices are still the most common devices connected to a KVM switch. The classes of KVM switches that are reviewed, are based on different types of core technologies in terms of how the KVM switch handles USB I/O devices—including keyboards, mice, touchscreen displays, etc. (USB-HID= USB Human Interface Device)
USB Hub Based KVM
Also called an Enumerated KVM switch, a connected/shared USB device must go through the full initiation process (USB enumeration) every time the KVM is switched to another target system/port. The switching to different ports is just as if you were to physically plug and unplug a USB device into your targeted system.
Emulated USB KVM
Dedicated USB console port(s) are assigned to emulate special sets of USB keyboard or mouse switching control information to each connected/targeted system. Emulated USB provides an instantaneous and reliable switching action that makes keyboard hotkeys and mouse switching possible. However, this class of KVM switch only uses generic emulations and consequently has only been able to support the most basic keyboard and mouse features.
Semi-DDM USB KVM
Dedicated USB console port(s) work with all USB-HID devices (including keyboard and mouse), but do not maintain the connected devices' presence to all of the targeted systems simultaneously. This class of KVM takes advantage of DDM (Dynamic Device Mapping) technology.
DDM USB KVM
Dedicated USB console port(s) work with all USB-HID devices (including keyboard and mouse) and maintain the connected devices special functions and characteristics to each connected/targeted system. This class of KVM switch overcomes the frustrating limitations of an Emulated USB Class KVM by emulating the true characters of the connected devices to all the computers simultaneously. This means that you can now use the extra function keys, wheels, buttons, and controls that are commonly found on modern keyboards and mice.