What Is Hot Plugging / Hot Swapping and Their Advantages? [MiniTool Wiki]
What Is Hot Swapping?
What does hot swappable mean? What is hot plug? In the computer field, hot swapping means the replacement or addition of components to a computer system without interruption, shutting down, or rebooting of the system whereas hot plugging only refers to the addition of components.
Components that have such functionality are said to be hot swappable or hot pluggable while those do not are regarded as cold swappable or cold pluggable. Most desktop computer hardware components are only cold-pluggable like CPU and RAM memory. However, its common for high-end and mid-end servers, as well as mainframes to feature hot-swappable capability for hardware including CPU, memory, SATA, PCI-e, and SAS hard drives.
For example, the USB (Universal Serial Bus) connection enables users to add or remove peripherals, such as a keyboard, mouse, removable hard drive, or printer. Such kind of devices is considered as either hot swappable or hot pluggable, the description depending on the supplier. Most tablets and mobile phones with tray-loading holders can interchange SIM cards without turning off the system, so they are also hot-swappable.
This post explains the practical differences between SATA 2 and SATA 3 in real world. You can then decide whether to upgrade to SATA 3.
Advantages of Hot Swapping
Hot swapping is applied whenever you change the configuration of a working computer system or repair it without stopping its operation. Usually, the working system is essential for equipment like a server to be continuously active. Thus, with the hot plugging technology, it’s possible to achieve that. Also, it avoids the inconvenience of shutting the system down and then restart it again.
Hot swapping is usually used to add/remove or change peripherals or components of a working system. It is also crucial in enabling synchronization continuity while replacing faulty modules. A machine might have dual power supplies with each adequate to power the machine respectively, thus either one of the two power supplies is hot-swappable.
Besides, critical cards like hard disk controllers or host adapters may be designed with redundant paths thus upgraded or replaced if they fail without the system being removed from operation.
What Makes Hot Swapping Possible?
To support hot swapping, machines need to be able to modify their operations for the altered configuration, either automatically based on change detection or manually by users. All mechanical and electrical connections associated with hot-plugging must be specially designed thus neither the components nor the users can be harmed while hot-swapping.
As for the other equipment, they have to be designed to keep the system working properly without interruption while the original component is removed for adding a new replacement.
Hot swapping can also be used to refer to the ability to alter the running code of a program without pausing its execution. Interactive programming is a programming paradigm that makes extensive use of hot swapping. Therefore, the programming activity becomes part of the program flow itself.
Only a few programming languages support hot swapping natively like Java, Visual Basic 6 (not VB.NET), Elm, Smalltalk, Erlang, Pike, and Lisp. Microsoft Visual Studio supports a type of hot swapping called Edit and Continue that is supported by C/C++, VB.NET, and C# when running under a debugger.