U3 (software)

U3 was a joint venture between SanDisk and M-Systems, producing a proprietary method of launching Windows software from special USB flash drives. Flash drives adhering to the U3 specification are termed "U3 smart drives". U3 smart drives come preinstalled with the U3 Launchpad. Applications that comply with U3 specifications are allowed to write files or registry information to the host computer, but they must remove this information when the flash drive is ejected. Customizations and settings are instead stored with the application on the flash drive.

Microsoft and SanDisk created a successor called StartKey.

SanDisk began phasing out support for U3 Technology in late 2009.

U3 disk mounting: Hardware emulation
A U3 flash drive presents itself to the host system as a USB hub with a CD drive and standard USB mass storage device attached.
 * This configuration causes Windows disk management to show two drives:
 * A read-only ISO 9660 volume on an emulated CD-ROM drive with an autorun configuration to execute the U3 LaunchPad, and;
 * A standard flash drive (FAT formatted) that includes a hidden "SYSTEM" folder with installed applications.
 * U3 compliant applications can be (optionally) preloaded by manufacturers.

U3 Launchpad
The U3 Launchpad (LaunchU3.exe) is a Windows program manager that is preinstalled on every U3 smart drive.

The U3 Launchpad automatically starts at insertion of a U3 enabled device.

U3 applications
To be fully U3 compliant, an application has to be programmed to clean up its own data from the local machine. It must also be packaged in U3's special program format. U3 applications will only run from a U3 device. U3 programs can be downloaded from the U3 website and other places. Applications include Opera and Skype and do not need to be installed on the computer.

APIs
The U3 application programming interfaces (APIs) allow U3 programs lower-level access to USB flash drive, and to query the drive letter. The U3 APIs primarily allow developers who choose to use more of the power of U3 to control how their application handles things like device removal and saves data back to the drive such as configuration or documents.

Compatibility
The latest version of U3 launchpad supports Windows 2000 with Service Pack 4, Windows XP, Windows Vista, Windows 7 and Windows 8.

Data can be accessed using any OS capable of reading from USB mass storage devices, unless the U3 device is password-protected.

Issues with older versions
Early versions of the U3 launchpad software had Vista compatibility issues (specifically the SanDisk Cruzer Titanium series with device numbers 2.17, 2.18, 2.19 and 2.20), although this problem could be eliminated by updating the launcher software.

Prior to Sandisk's updated launcher software being released, Microsoft supported U3 by releasing an update to Vista.

Developer resources
Information on building U3 compliant applications and the U3 software development kit were available to registered developers at the official U3 website. Individuals must register (as a company) to download the SDK, or participate in the forums. Applications that do not require installation steps in order to run can easily utilize U3 with little or no modification by taking steps to either not modify the host systems files or registry, or undoing all changes when the application terminates. A wizard which packages distribution files and creates the special "manifest" file is provided.

As of May 2009, the software development kit was no longer available; the u3.com website is no longer available.

Removal
Reformatting the drive will remove some of the software (the hidden "SYSTEM" folder), but not all of it. The virtual CD-ROM drive cannot be removed by reformatting because it is presented to the host system as a physical device attached to a USB hub; the official U3 Launchpad Removal Software was available on the U3 website and disabled the virtual CD drive device, leaving only the USB mass storage device active on the U3 USB hub controller, at which point the remaining software can be removed by a subsequent format, performed by the removal software itself.

u3_tool is another option that includes the ability to remove the virtual CD-ROM drive, as well as ways to reconfigure it to the user's liking.

Criticism
Numerous criticisms have been made of the U3 platform. These criticisms are:
 * Malware-like integration behaviour: Software comes preinstalled on USB disk and, when using stock Windows settings, roots itself in the system similar to malware. U3 removal is possible, but requires complete data backup.


 * Questioned use: There are already portable versions of many Windows software available, some of which do not require any proprietary solution to work.


 * Removed user data, but not all of it: Recent files and programs had it listed.


 * Freezing with certain CD writing software: There is a possibility of slowing down or freezing Windows XP Pro if certain Windows drivers that are associated with high-volume data transfers to CD writers using certain CD/DVD burning software installed.


 * Proprietary format/closed platform: The U3 platform is a "closed" platform / proprietary format. SanDisk, the rightsholders for U3, ask for a 5% royalty from USB flash drive manufacturers who wish to implement the platform on their products.


 * Two drive letters: As a work-around to the lack of Auto-Play for Flash drives on older versions of Windows, the U3 software creates two drive letters (one which presents itself as a CD to allow Windows' auto-play to start the launcher, and another for storing user data). Although this is the only way to implement auto-start functionality on pre-Windows XP systems, it could be considered a kludge, and the extra drive letter created can be an annoyance. However, it is possible to prevent Windows from allocating a drive letter for the "CD drive" via the Windows "Disk Management" tool—as long as the user has the appropriate rights/authority to do so.


 * Incompatibility with certain embedded systems: Some host systems—such as photo kiosks, consumer electronics, and other embedded computing devices—cannot correctly mount U3 "smart drives." The problem may arise because the emulated CD-ROM is the first drive presented to the host system.  As such, the device is detected as a CD-ROM drive or not at all.  Although some newer photo kiosks are U3 aware and can overcome this limitation, it still exists on many platforms.