You are on page 1of 5

11/7/2009 USB mass-storage device class - Wikipe…

USB mass-storage device class


From Wikipedia, the free encyclopedia
(Redirected from USB mass storage device class)

The USB mass storage device class or USB MSC or UMS is a set of computing communications protocols
defined by the USB Implementers Forum that run on the Universal Serial Bus. The standard provides an interface
to a variety of storage devices.

Some of the devices which are connected to computers via this standard are:

external magnetic hard drives


external optical drives, including CD and DVD reader and writer drives
portable flash memory devices
adapters bridging between standard flash memory cards and a USB
connection
digital cameras
various digital audio players & portable media players
Card readers
Portable Gaming systems (Nokia N-GAGE/Sony PSP)
personal data assistants and handheld computers
some newer mobile phones, such as the Sony Ericsson K800 and K510,
Nokia N73, Nokia E61, Nokia N95, Nokia N96, Nokia N97, Apple A USB flash drive like this one
iPhone will typically implement the
USB mass storage device
Devices which support this standard are referred to as MSC (Mass Storage class.
Class) devices. While MSC is the official abbreviation, UMS (Universal Mass
Storage) has become common in on-line jargon.

Contents
1 Operating system support
1.1 Microsoft Windows
1.1.1 Malware and inherent vulnerability
1.2 Mac OS
1.3 Unix-like
1.4 DOS
1.5 AmigaOS
1.6 Game consoles
1.7 Graphing Calculators
2 Device access
3 Complications of the mass-storage device class
3.1 Hard drive-based devices
…wikipedia.org/…/USB_mass_storage_… 1/5
11/7/2009 USB mass-storage device class - Wikipe…

4 See also
5 External links

Operating system support


Most current mainstream operating systems include support for USB mass storage devices, although support on
older systems is available through patches.

Microsoft Windows

Windows 95 OSR2.1, an update to the operating system, featured very limited support for USB. During that time,
no generic USB mass storage driver was produced by Microsoft, even for Windows 98. This meant that a device-
specific driver was needed for each type of USB storage device. Today, generic drivers which support USB flash
drives even in Windows 98 are available as free downloads. By 2000, the problem was almost solved. Products
designed for Windows Me and Windows 2000 (where a specific driver was required only for rare devices) are
only fully corrected in subsequent OSes. On Windows Server 2003, however, a drive letter has to be assigned to it
in order to access it. This can be done in Disk Management (under Computer Management (local) | Storage | Disk
Management).

There is no native (supplied by Microsoft) support for USB in Windows NT, earlier versions of Windows, or MS-
DOS, although some third-party solutions exist for each OS. A third party driver for Windows 98 and Windows
98SE is also now available. There is also a USB UMS driver for Windows NT 4. FreeDOS supports USB mass
storage as ASPI devices.

Windows Mobile supports accessing most USB mass storage devices formatted with FAT on devices with USB
Host. However, portable devices typically cannot provide enough power for disk enclosures containing hard drives
(a 2.5" hard drive typically requires the maximum 2.5 W provided by the USB specification) without a self-
powered USB hub. On the other way around, Windows Mobile devices can not show their file systems as a mass
storage device unless the device implementer explicitly decides to add such functionality. However, third party
applications exist to add MSC emulation to most WM devices (commercial "Softick CardExport" and free
"WM5torage"). Generally only memory cards can be exported, and not internal storage memory, due to the
complications outlined below.

Malware and inherent vulnerability

Since Windows's AutoRun feature works indiscriminately on any removable media, USB storage devices became
the infection entryway for computer viruses. As the FAT file system, most used on USB storage for its simplicity
and wide compatibility, has no access control features, a user has no convenient way to protect his USB drives
from infection after inserting into untrusted computer unless the device has a hardware read-only switch.

Mac OS

Apple Computer's Mac OS 8.5.1 supports USB mass storage through an optional driver. Mac OS 9 and Mac OS
X support USB mass storage natively.

Unix-like
…wikipedia.org/…/USB_mass_storage_… 2/5
11/7/2009 USB mass-storage device class - Wikipe…

The Linux kernel has supported USB mass storage devices via a generic driver since kernel version 2.4 (year
2001), and a backport to kernel 2.2 has also been made. Solaris also supports devices since the 2.8 release and up
(year 1998), NetBSD since the 1.5 release and up (year 2000), FreeBSD since the 4.0 release and up (year
2000), and OpenBSD since the 2.7 release and up (year 2000).

DOS

DOS has no generic support for USB but there are external drivers available which support USB mass storage
devices. These are Duse, USBASPI and DOSUSB.

AmigaOS

AmigaOS supports UMASS storage devices through Poseidon, a third-party USB stack which has become a de
facto standard. It supports various USB device types through a modular system of Hardware Independent Device
Driver (HIDD) classes. Poseidon as used in AmigaOS Classic up to version 4.0, and in the MorphOS operating
system. The supposedly final AmigaOS version of the Poseidon stack is released OEM licensed with the Deneb
USB card in May 2008. AmigaOS 4.0 has its own USB stack called Sirion, though it can still use Poseidon. A new
USB stack called ANAIIS (Another Native Amiga IO Interface Stack) is available for all Amiga platforms with
Highway or Subway hardware, but does not yet support UMASS.

FAT16 and FAT32 filesystems are supported by the FAT95 filesystem.

In September 2009 Poseidon was released as Open Source and was finally also ported to AROS, an Open
Source AmigaOS inspired system.

Game consoles

The Xbox 360 and PlayStation 3 support most mass storage devices.

Graphing Calculators

Independent developers have released drivers for the TI-84 Plus and TI-84 Plus Silver Edition in order to access
USB mass storage devices. usb8x contains the driver for this access, while msd8x handles the user interface.

Device access
The USB mass storage specification does not require any particular file system
to be used on conforming devices. Instead, it provides a simple interface to read
and write sectors of data—much like the low-level interface used to access any
hard drive—using the "SCSI transparent command set." Operating systems may
treat the USB drive like a hard drive, and can format it with any file system they
like.

Because of its ubiquity and relative simplicity, the most common file system on
embedded devices such as USB flash drives, cameras, or digital audio players is
Microsoft's FAT or FAT32 file system with (optional) support for long names.
Large USB-based hard disks may come formatted with NTFS, which is much A USB Card reader like this
one, will typically implement
…wikipedia.org/…/USB_mass_storage_… 3/5
11/7/2009 USB mass-storage device class - Wikipe…
one, will typically implement
less supported outside Microsoft Windows. However, a keydrive or any other
the USB mass storage device
device may be formatted using another filesystem (for example HFS Plus on an class.
Apple Macintosh, or Ext2 under Linux, or Unix File System under Solaris or
BSD). Of course, this choice may limit other operating systems' ability to access
the contents of the device.

In cameras, MP3 players, and similar gadgets which must access the file system independently from an external
host, the FAT filesystem is typically preferred by device manufacturers.

Complications of the mass-storage device class


Hard drive-based devices

Many modern hard drives support additional advanced commands, such as Native Command Queuing, which may
increase performance, and S.M.A.R.T., which allows a computer to measure various indicators of drive reliability.
These exist as extensions to the basic low-level command sets used by hard drives, such as SCSI, SATA, or
PATA.

These features do not work when hard drives are encapsulated in a disk enclosure supporting the USB mass
storage interface. USB mass storage provides a generic interface which only provides basic read/write commands,
as outlined above. This works perfectly well for basic data transfer using hard drive-based devices, however it
means that there is no simple way to send advanced, device-specific commands to USB mass storage devices
(although devices may create their own communication protocols over the USB-standard "control interface").

The new eSATA standard for external drives promises to address this issue, since it extends the internal SATA bus
to external disks without any intermediate translation layer.

See also
Disk encryption software
Media Transfer Protocol
Picture Transfer Protocol
USB flash drive

External links
Mass Storage device class specification
(http://www.usb.org/developers/devclass_docs/usb_msc_overview_1.2.pdf) — on the site of the USB
Implementers Forum.
Bootability specification Mass Storage bootability specification
(http://www.usb.org/developers/devclass_docs/usb_msc_boot_1.0.pdf) — describes how bootable USB
Mass Storage devices should work.
"USB Mass Storage BOT" (http://www.usb.org/developers/devclass_docs/usbmassbulk_10.pdf) is a link
that often rots, lately found buried at "USB" (http://usb.org) -> Developers -> Documents -> Class Specs ->
Approved -> Mass Storage -> "Mass Storage Bulk Only 1.0".
USB Mass Storage Device source code in FreeBSD

…wikipedia.org/…/USB_mass_storage_… 4/5
11/7/2009 USB mass-storage device class - Wikipe…
(http://svn.freebsd.org/viewvc/base/head/sys/dev/usb/storage/)
USB Mass Storage source code in Linux (http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-
2.6.git;a=tree;f=drivers/usb/storage)
Retrieved from "http://en.wikipedia.org/wiki/USB_mass-storage_device_class"
Categories: USB | Computer storage devices

This page was last modified on 31 October 2009 at 16:40.


Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply.
See Terms of Use for details.
Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.

…wikipedia.org/…/USB_mass_storage_… 5/5

You might also like