A live USB is a USB flash drive or a USB external hard disk drive containing a full operating system which can be booted. Live USBs are closely related to live CDs, but typically have the ability to save settings and permanently install software packages back onto the USB device. Like live CDs, live USBs can be used in embedded systems system administration, data recovery, or the testing of operating system distributions without committing to a permanent installation on the local hard disk drive. Many operating systems including Microsoft Windows XP Embedded and many of the Linux distributions and BSDs can also be used from a USB flash drive. Proposed by IBM in 2004, in the papers “Reincarnating PCs with Portable SoulPads” (PDF & Summary) and Boot Linux from a FireWire device. Live USBs share many of the benefits and limitations of live CDs.