Binary prefix

From Wikipedia, the free encyclopedia

Jump to: navigation, search

In computing, a binary prefix is a set of letters that precede a unit of measure (such as a byte) to indicate multiplication by a power of two. In certain contexts in computing, such as computer memory sizes, units of information storage and communication traffic (Byte) have traditionally been reported in multiples of powers of two. The term binary prefix is intended to differentiate usage of certain symbolic abbreviations (for example, k or kilo) from the SI prefixes, which are always decimal.[1]

As the binary multipliers 1024 (210), 1048576 (220), etc., are close in value to certain SI prefixes such as kilo (1000 = 103) and mega (1000000 = 106), respectively, it has been common practice amongst computer professionals to use these prefixes for the binary multiples – for example, to use the symbol "M" ("mega") to mean 1048576 instead of 1000000. However, these prefixes have decimal meanings in other contexts, e.g., when used with SI units. Also, certain areas of computing have always used these prefixes as decimal multipliers, for example, when specifying quantities of bits transmitted on a serial transmission medium. This has led to ambiguity in intended use of these prefixes.[2]

In 1999, following recommendations by the International Union of Pure and Applied Chemistry (IUPAC) in 1995[3] and National Institute of Standards and Technology (NIST), the standards organization known as the International Electrotechnical Commission (IEC) adopted a set of distinct prefixes (cf. IEC 60027), e.g., kibi (symbol Ki, from "kilobinary")[2] and mebi (symbol Mi, from "megabinary"), to indicate binary multipliers. The system used the multiplier 1024 (210), rather than 1000 (103) as in the SI system, to arrive at successively larger prefixes. Under this recommendation, the SI prefixes should only be used in the decimal sense: kilobyte and megabyte denote one thousand bytes and one million bytes respectively, while kibibyte and mebibyte denote 1024 bytes and 1048576 bytes respectively. This recommendation has since been adopted by some other leading national and international standards bodies, that now prescribe that the prefixes k, M and G should always refer to powers of ten, even in the context of information technology.[2][4][5][6] Notwithstanding the availability of the new binary prefixes and their unambiguous meaning, they have seen limited adoption in practice; the use of K (or k), M and G as binary multipliers when denoting the capacity of solid‑state memory like random access memory (RAM) remains a ubiquitous industry practice.[7]

Contents

[edit] History

[edit] Early usage

Early computers used one of two addressing methods to access the system memory; binary (base-2) or decimal (base-10). For instance, the IBM 701 (1952) used binary and could address 2,048 36-bit words, while the IBM 702 (1953) used decimal and could address 10,000 7-bit words.

By the mid 1960s, binary addressing had become the standard architecture in computer design. The computer system documentation would specify the memory size with an exact number such as 32768, 65536 or 131072 words of storage (all powers of 2). There were several methods used to abbreviate these quantities. The use of K in the binary sense as in a "32K core" can be found as early as 1959[8][9] Gene Amdahl's seminal 1964 article on IBM System/360 used 1K to mean 1024.[10] This style was used by other computer vendors, the CDC 7600 System Description (1968) made extensive use of K as 1024.[11] Another style was to truncate the last 3 digits and append K. The exact values 32,768, 65,536 and 131072 would then become 32K, 65K and 131K.[12] (If 32,768 were instead rounded off, it would be 33K; if K = 1024 were used, 65,536 would become "64K".) This style was used from about 1965 to 1975.

These two styles (K = 1024 and truncation) were used loosely around the same time, sometimes by the same company. (In discussions of binary-addressed memories, the exact size was evident from context.) The HP 21MX real-time computer (1974) denoted 196608 as 196K and 1048576 as 1 M,[13] while the HP 3000 business computer (1973) could have 64K, 96K, or 128K bytes of memory.[14]

The terms Kbit, Kbyte, Mbit and Mbyte started to be used as binary units in the early 1970s.[15] Most memory capacities were expressed in K, even when M could have been used: The IBM System/370 Model 158 brochure (1972) had the following: "Real storage capacity is available in 512K increments ranging from 512K to 2,048K bytes."[16] Megabyte was used to describe the 22-bit addressing of DEC PDP-11/70 (1975)[17] and gigabyte the 30-bit addressing DEC VAX11/780 (1977).

By the mid 1970s it was common to see K (e.g. Kbyte) meaning 1024 and the occasional M (e.g. Mbyte) as 1048576 for words or bytes of computer memory (RAM) while K and M were commonly used with their decimal meaning for disk storage. In the 1980s the term G (e.g. GB) with decimal meaning was commonly applied to disk storage while M in its binary meaning became common for computer memory. In the 1990s G in its binary meaning became common usage for computer memory. The first TB hard disk drive (terabyte, decimal meaning) was introduced in 2007.[18]

The dual use of these prefixes as both decimal and binary quantities was defined in standards and dictionaries. The 1986 ANSI/IEEE Std 1084-1986[19] defined dual uses for kilo and mega.

kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 210, or 1024.

mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 220, or 1048576.

The binary units Kbyte and Mbyte were formally defined in ANSI/IEEE Std 1212-1991.[20] The terms Kbyte, Mbyte, and Gbyte are found in the trade press and in IEEE journals. "Gigabyte" was formally defined in IEEE Std 610.10-1994 as either 1 000 000 000 or 230 bytes.[21] Kilobyte, Kbyte, and KB are equivalent units and all are defined in the current standard, IEEE 100-2000.[22]

The industry has coped with the dual definitions because system memory (RAM) typically uses the binary meaning while disk storage uses the decimal meaning. There are exceptions like diskettes and CDs. There are no SI units for computer storage capacity but the decimal prefix meanings of KB, MB, and GB are often referred to as SI prefixes.

[edit] Suggestions for new prefixes

While computer scientists typically used k to mean 1000, they recognized the convenience that would result from working with powers of 1024 and the confusion that resulted from using the same abbreviation for two definitions.[23] Several proposals for unique symbols were made in 1968. (At the time, memory size was small, and only K was in widespread use.) Donald Morrison proposed to use the Greek letter κ to denote 1024, κ² to denote 1024×1024, and so on.[23] Wallace Givens responded with a proposal to use bK as an abbreviation for 1024 and bK2 or bK² for 1024×1024, though he noted that neither the Greek letter nor lowercase letter b would be easy to reproduce on computer printers of the day.[24] Bruce A. Martin further proposed that the units be abandoned altogether, and the letter B be used as a binary exponent, similar to E notation, to create shorthands like 3B20 for 3×220[25] None of these gained much acceptance, and capitalization of the letter K became the de facto standard for binary notation, though this could not be extended to higher powers. Later, as the discrepancy between the two systems increased, more proposals for unique units were made. In 1996, Markus Kuhn proposed a system of units with di prefixes, like the "dikilobyte" (K₂B or K2B).[26]

The binary set of prefixes seem to have been first proposed[27] by the IUPAC Interdivisional Committee on Nomenclature and Symbols in 1995. At that time, it was proposed that the terms kilobyte and megabyte be used only for 103 bytes and 106 bytes respectively. The new prefixes "kibi" (kilobinary), "mebi" (megabinary) and "gibi" (gigabinary) were also proposed at the time, and the proposed symbols for the prefixes were "kb", "Mb" and "Gb" respectively, rather than "Ki", "Mi" and "Gi".[3] The proposal was not accepted at the time.

The IEEE had begun to collaborate with the ISO and IEC to find acceptable names for binary prefixes. The IEC proposed "kibi", "mebi", "gibi" and "tebi", with the prefixes "Ki", "Mi", "Gi" and "Ti" respectively, in 1996.[28] The IEEE decided that IEEE standards would use the prefixes "kilo" etc. with their metric definitions, allowing the base-two definitions to be used in an interim period as long as such usage was explicitly pointed out on a case-by-case basis.[29]

In January 1999, the IEC published the first international standard (IEC 60027-2 Amendment 2) with the new prefixes, extended up to "pebi" (Pi) and "exbi" (Ei).[30][31]

Proposals for alternative sets of prefixes have continued following the introduction of these prefixes as well. Donald Knuth, who uses decimal notation like 1 MB = 1000 kB,[32] has proposed that the powers of 1024 be designated as "large kilobytes" and "large megabytes" (abbreviated KKB and MMB, as "doubling the letter connotes both binary-ness and large-ness").[32][27]

[edit] Consumer confusion

In the early days of computers there was little or no consumer confusion because of the sophisticated nature of the consumers and the practice of computer manufacturers to specify their products with capacities in full precision, e.g., the 1968 IBM stated System 360 "Model 91s can accommodate up to 6 291 496 bytes of main storage."[33]

Hard disk drive manufacturers used MB, i.e. 106 bytes, to characterize their products as early as 1974.[34] By 1977, in its first edition, Disk/Trend, a leading hard disk drive industry marketing consultancy segmented the industry according to MBs (decimal sense) of capacity.[35]

The presentation of hard disk drive capacity by an operating system using MB in a binary sense appears no earlier than Macintosh Finder after 1984. Prior to that, on the systems that had a hard disk drive, capacity was presented in decimal digits with no prefix of any sort (e.g., MS/PC DOS CHKDSK command).

The following three images show the discrepancy of reporting the identical disk capacity on the manufacturer's packaging (160 GB), the Windows XP disk manager (149.05 GB), and the drive properties display (152625 MB). Consumers are often confused by the differences in the reported values.

[edit] Prefixes

IEC binary use
Name Symbol Base 2 Base 16 Base 10 Name Symbol
kibi Ki 210 162.5 400(16) ~103 1,024 kilo k/K
mebi Mi 220 165 10 0000(16) ~106 1,048,576 mega M
gibi Gi 230 167.5 4000 0000(16) ~109 1,073,741,824 giga G
tebi Ti 240 1610 100 0000 0000(16) ~1012 1,099,511,627,776 tera T
pebi Pi 250 1612.5 4 0000 0000 0000(16) ~1015 1,125,899,906,842,624 peta P
exbi Ei 260 1615 1000 0000 0000 0000(16) ~1018 1,152,921,504,606,846,976 exa E
zebi Zi 270 1617.5 40 0000 0000 0000 0000(16) ~1021 1,180,591,620,717,411,303,424 zetta Z
yobi Yi 280 1620 1 0000 0000 0000 0000 0000(16) ~1024 1,208,925,819,614,629,174,706,176 yotta Y

[edit] Traditional prefixes in binary sense

Quantities that are multiples of the unit by a power of 2 are indicated using nearby SI prefixes, such as using kilo (the SI prefix for 1000) to indicate 210=1024. Byte multiples using binary powers up to yottabyte are given by the on-line computing dictionary FOLDOC.[36]

The one-letter symbols are identical to SI prefixes, except for "K", which is used interchangeably with "k" (in SI, only the lower-case "k" represents 1000).

These prefixes are in common use in contexts such as file and memory sizes. The names and values of the SI prefixes were defined in the 1960 SI standard, with powers-of-1000 values. Standard dictionaries do recognize the binary meanings for these prefixes.[37][38] Oxford online dictionary defines, for example, megabyte as: "Computing a unit of information equal to one million or (strictly) 1,048,576 bytes."[39]

[edit] IEC standard prefixes

In January 1999, the International Electrotechnical Commission introduced in an addendum to IEC 60027-2 the prefixes kibi (kibibyte), mebi, gibi, etc., and the symbols Ki, Mi, Gi, etc. to specify binary multiples of a quantity and eliminate the ambiguity with their SI meanings.[40] The names for the new standard are derived from the original SI prefixes followed by "binary", such as "kilobinary", and can be shortened to a prefix like "kibi". The new standard also clarifies that, from the point of view of the IEC, the SI prefixes will remain to have their base-10 meaning and never have a base-2 meaning.

The second edition of the standard[41] defined them only up to exbi,[42] but in 2005, the third edition added prefixes zebi and yobi, thus matching all SI prefixes with their binary counterparts.[43]

On March 19, 2005 the IEEE standard IEEE 1541-2002 (Prefixes for Binary Multiples) was elevated to a full-use standard by the IEEE Standards Association after a two-year trial period.[44] Nevertheless, as of April 2008, the IEEE Publications division does not use the IEC prefixes in its major magazines such as Spectrum[45] or Computer.[46]

The harmonized ISO/IEC IEC 80000-13:2008 standard cancels and replaces subclauses 3.8 and 3.9 of IEC 60027-2:2005 (those defining Prefixes for binary multiples). The only significant change is the addition of explicit definitions for some quantities. [47]

BIPM (the International Bureau of Weights and Measures which maintains SI) expressly prohibits the binary prefix usage, and recommends the use of the IEC prefixes as an alternative since computing units are not included in SI.[4]. The binary definition of the prefixes k, M, G etc is not permitted by the United States National Institute of Standards and Technology (NIST).[48]

[edit] Approximate ratios between binary and decimal values

As the order of magnitude increases, the percentage difference between the binary and decimal values of the prefixes increases, from 2.4% (with the kilo prefix) to over 20% (with the yotta prefix). This makes differentiating between the two increasingly important as larger and larger data storage and transmission technologies are developed.

Name Bin ÷ Dec Dec ÷ Bin Percentage difference
kilobyte 1.024 0.976 +2.4% or −2.3%
megabyte 1.049 0.954 +4.9% or −4.6%
gigabyte 1.074 0.931 +7.4% or −6.9%
terabyte 1.100 0.909 +10.0% or −9.1%
petabyte 1.126 0.888 +12.6% or −11.2%
exabyte 1.153 0.867 +15.3% or −13.3%
zettabyte 1.181 0.847 +18.1% or −15.3%
yottabyte 1.209 0.827 +20.9% or −17.3%

Example: 300 GB (300×109 B) ≅ 279.4 GiB (279.4×10243 B)

[edit] Usage notes

In this section, the phrase "decimal unit" is used to denote "SI designation understood in its standard, decimal, power-of-1000 sense" and "binary unit" means "SI designation understood in its binary, power-of-1024 sense." B is the symbol for bytes (as per computer-industry standard IEEE 1541 and IEC 60027), while both bit (as per ISO/IEC 80000) and b (as per IEEE 1541-2002) are used as the symbol for bits.

Certain units are always understood as decimal even in computing contexts. For example, hertz (Hz), which is used to measure clock rates of electronic components, and bit/s, used to measure bit rate. So a 1 GHz processor performs 1,000,000,000 clock ticks per second, a 128 kbit/s MP3 stream consumes 128,000 bits (16 kB, 15.625 KiB) per second, and a 1 Mbit/s Internet connection can transfer 1,000,000 bits (125 kB, approx 122 KiB) per second, assuming an 8-bit byte, and no overhead.[49]

[edit] Pronunciation

It is suggested that in English, the first syllable of the name of the binary-multiple prefix should be pronounced in the same way as the first syllable of the name of the corresponding SI prefix, and that the second syllable should be pronounced as "bee."[2]

[edit] Files

Prior to the release of Mac OS (1984), file sizes were typically reported by the operating system in decimal digits without prefixes of any sort.[citation needed] Today, most operating systems are capable of reporting file sizes with prefixes.

Most Unix-like systems which use the ls command to display file sizes use powers of 1024 indicated as KB/MB. Microsoft Windows reports file sizes in binary units but does not use IEC standard prefixes.

[edit] Hardware

[edit] Computer memory

The 536,870,912 byte (512×220) capacity of these RAM modules is stated as "512 MB" on the label.

Measurements of most types of electronic memory such as RAM, ROM and Flash (large scale disk-like flash is sometimes an exception) are given in binary units, as they are made in power-of-two sizes. This is the most natural configuration for memory, as all combinations of their address lines map to a valid address, allowing easy aggregation into a larger contiguous block of memory.

JEDEC Solid State Technology Association, the semiconductor engineering standardization body of the Electronic Industries Alliance (EIA) in Standard 100B.01[6][50] continues to include definitions in the binary sense K, M and G as prefixes to units of semiconductor memory (see JEDEC memory standards), noting that these definitions are "only included to reflect common usage" and noting that "IEEE/ASTM SI 10-1997 states 'This practice frequently leads to confusion and is deprecated.'". All standards published by JEDEC use the common usage, including end-user packaging recommendations for memory chips.

Many computer programming tasks naturally reference memory in terms of powers of two. For example, a 16-bit pointer can reference at most 65,536 items (bytes, words, or other objects), or an operating system might map memory in terms of 4,096-byte pages, in which case exactly 8,192 pages could be allocated within 33,554,432 bytes of hardware memory. It is convenient to informally express these numbers, respectively, as 64K items, or as 8K pages of 4 Kbytes (KiB) each within 32 MBytes (MiB) of memory. A programmer can easily mentally calculate that "8K × 4K is 32 meg" and get it exactly right, within this powers-of-two context. This convenience is likely one source of originally adapting "kilo" and "mega" into shorthand for 1024 and 1048576 as jargon within a segment of the industry.

[edit] Hard disk drives

HDD manufacturers mostly state capacity in decimal units. This usage has a long tradition, even predating the SI system of decimal prefixes adopted in 1960, as follows:

  • The first disk drive the IBM 350 (1950s) had 5 million 6 bit characters organized in 100 character sectors (i.e., blocks). This predates the SI system.
  • In the 1960s most disk drives used IBM's variable block length format (called, Count Key Data or "CKD").[51] Any block size could be specified up to the maximum track length. Blocks ("records" in IBM's terminology) of 88, 96, 880 and 960 were often used because they related to the fixed block size of punch cards. The drive capacity was usually stated in full track record blocking, for example, the 100 megabyte 3336 disk pack only achieved that capacity with a full track block size of 13,030 bytes.
  • CKD continued into the 1990s and perhaps into this day. In the 1970s and 1980s most drives were specified with unformatted tracks (the unformatted capacity) with the particular block size and formatted capacity a function of the controller design. For example, the ST412 of IBM PC/XT fame had an unformatted capacity of 12.75 MB (12.75×106 B) and with the Xebec controller and 512 byte blocks it formatted to and was advertised as a 10.0 MB (10.0×106 B) HDD. Other controllers supported other block sizes resulting in other formatted capacities.
  • The advent of intelligent interfaces (SCSI and IDE) in the early 1990s took the block size decision into the drive and virtually all chose 512 bytes, for no reason other than that was what IBM had chosen when they picked the Xebec controller for the PC/XT. Capacity continued to be specified by the HDD manufacturers with SI prefix definitions.

As of January 2007, most, if not all, HDD manufacturers continue to use decimal prefixes to identify capacity.[52]

[edit] Flash drives

USB Flash Drive and Flash-based memory cards like CompactFlash and Secure Digital are typically classified in "powers of two" multiples of decimal megabytes; for example, a "256 MB" card provides at least 256 million bytes (256,000,000), not 256×1024×1024 (268,435,456).[53] Although the devices usually have at least the expected byte capacity, each manufacturer allocates different portions of the device's ultimate capacity for such things as wear levelling.

[edit] Floppy drives

Floppy disk drive and media manufacturers use decimal units for unformatted recording capacity while most computer operating systems use binary units to measure the formatted capacity. The original IBM Personal Computer (1981) used a Tandon TM100 5¼ inch floppy disk drive. The single sided drive was rated at 250 kilobytes (unformatted) and the double sided version was rated at 500 kilobytes.[54]

A 5¼ inch diskette recorded at double density (MFM) will hold 6,250 bytes per track and has 40 tracks per side, yielding 250,000 bytes per side. To make it practical to record smaller blocks of data, the tracks are formatted into sectors with gaps between them. The gaps allow individual sectors to be recorded without overwriting adjacent sectors. Each sector also has additional header bytes to identify the sector.

With IBM PC-DOS 1.0 and 1.1, each track has 8 sectors of 512 bytes and this provides 163,840 bytes per side (8 × 512 × 40). The IBM user documentation referred to this as "160KB" for single sided diskette and "320KB" for double sided diskette.[55] Starting with PC-DOS 2.0 (1983), each track had 9 sectors of 512 bytes. The formatted capacity was increased to 184,320 bytes per side or 368,640 bytes per diskette. The IBM documentation referred to these as "180KB" and "360KB" diskettes. The same drives and media can have different capacities depending on format.[56]

On all diskettes the capacity available to the user will be smaller that the total number of sectors because some are reserved by the operating system for boot records or directory tables.

The IBM Personal Computer/AT (1984) had a new 5¼ inch disk drive that had 80 tracks per side, rotated at 360 rpm (versus 300 rpm) and had a new diskette media. The formatted capacity was 1228800 bytes or 1200 KB. (80 tracks × 15 sectors × 512 bytes × 2 sides)

The IBM PC Convertible (1986) used the 3½ inch diskettes. These were similar in recording technology to the original 5¼ inch drives except they had 80 tracks per side. The formatted capacity was 737,280 bytes or 720 KB. Apple used the same disk with a different recording technology, GCR, that gave a formatted capacity of 819,200 bytes or 800 KB. Apple referred to this as an "800K" disk.[57]

The last widely adopted diskette was the 3½ inch high density. This has twice the capacity as the 720 KB diskettes, 1474560 bytes or 1440 KB. The drive was marketed as 1.44 MB when a more accurate value would have been 1.4 MB (1.40625 MB). Some users have noticed the missing 0.04 MB and both Apple and Microsoft have support bulletins referring to them as 1.4 MB.[58][57] The 1200 KB 5¼ inch diskette was marketed as 1.2 MB (1.171875 MiB) without any controversy.

[edit] Optical discs

CD capacities are always given in binary units. A "700 MB" (or "80 minute") CD has a nominal capacity of about 700 MiB (approx 730 MB).[59] However, the capacities of other optical disc storage media like DVD, Blu-ray Disc, HD DVD are given in decimal units. A "4.7 GB" DVD has a nominal capacity of about 4.38 GiB.[60]

[edit] Buses

Bus clock speeds and therefore bandwidths are both given in decimal units. For example, "PC3200" memory on a double pumped bus, transferring 8 bytes per cycle running with a clock speed of 200 MHz = 200,000,000 cycles per second has a bandwidth of 200,000,000 × 2 × 8 = 3,200,000,000 B/s = 3.2 GB/s (about 2.98 GiB/s).

[edit] Software

As of 2008, most software does not distinguish symbols for binary and decimal units. The IEC binary naming convention has been adopted by some, but is not used universally.

The binary convention is supported by standardization bodies and technical organizations such as IEEE, CIPM, NIST, and SAE.[5][4][2][61] The new binary prefixes have also been adopted by the European Committee for Electrotechnical Standardization (CENELEC) as the harmonization document HD 60027-2:2003-03.[62] This document will be adopted as a European standard.[63]

Examples of software that use IEC standard prefixes (along with standard SI prefixes) include:

Note that one of the stated goals of the introduction of the binary prefixes was "to preserve the SI prefixes as unambiguous decimal multipliers."[5] Programs such as fdisk/cfdisk, parted, and apt-get use SI prefixes with their decimal meaning.

[edit] Legal disputes

There have been two significant class action lawsuits against digital storage manufactures. One case involved flash memory and the other involved hard disk drives. Both were settled with the manufactures agreeing to clarify the storage capacity of their products on the consumer packaging.

[edit] Willem Vroegh v. Eastman Kodak Company

On February 20, 2004, Willem Vroegh filed a lawsuit against Lexar Media, Dane–Elec Memory, Fuji Photo Film USA, Eastman Kodak Company, Kingston Technology Company, Inc., Memorex Products, Inc.; PNY Technologies Inc., SanDisk Corporation, Verbatim Corporation, and Viking InterWorks alleging that their descriptions of the capacity of their flash memory cards were false and misleading.

Vroegh claimed that a 256 MB Flash Memory Device had only 244 MB of accessible memory. "Plaintiffs allege that Defendants marketed the memory capacity of their products by assuming that one megabyte equals one million bytes and one gigabyte equals one billion bytes." The plaintiffs wanted the defendants to use the non-standard binary values 220 for megabyte and 230 for gigabyte. The plaintiffs acknowledged that the IEC and IEEE standards define a MB as one million bytes but stated that the industry has largely ignored the IEC standards.[85]

The manufacturers agreed to clarify the flash memory card capacity on the packaging and web sites.[86] The consumers could apply for "a discount of ten percent off a future online purchase from Defendants' Online Stores Flash Memory Device".[87]

[edit] Orin Safier v. Western Digital Corporation

On July 7, 2005, an action entitled "Orin Safier v. Western Digital Corporation, et al.," was filed in the Superior Court for the City and County of San Francisco, Case No. CGC-05-442812. The case was subsequently moved to the Northern District of California, Case No. 05-03353 BZ.[88]

Although Western Digital maintained that their usage of units is consistent with "the indisputably correct industry standard for measuring and describing storage capacity", and that they "cannot be expected to reform the software industry", they agreed to settle in March 2006 with June 14, 2006 as the Final Approval hearing date.[89]

Western Digital offered to compensate customers with a free download of backup and recovery software valued at US$30. They also paid $500,000 in fees and expenses to San Francisco lawyers Adam Gutride and Seth Safier, who filed the suit.[90]

Western Digital had this footnote in their settlement. "Apparently, Plaintiff believes that he could sue an egg company for fraud for labeling a carton of 12 eggs a "dozen," because some bakers would view a "dozen" as including 13 items."[91]

The settlement called for Western Digital to add a disclaimer;[90] flash memory and hard disk manufacturers have disclaimers on their packaging and web sites clarifying the formatted capacity of the flash memory[53] or defining MB as 1 million bytes and 1 GB as 1 billion bytes.[92]

[edit] See also

[edit] Specific units of IEC 60027-2 A.2

These units have individual articles:

Bit rates
Decimal prefixes (SI)
Name Symbol Multiple
kilobit per second kbit/s 103
megabit per second Mbit/s 106
gigabit per second Gbit/s 109
terabit per second Tbit/s 1012
Binary prefixes
(IEC 60027-2)
kibibit per second Kibit/s 210
mebibit per second Mibit/s 220
gibibit per second Gibit/s 230
tebibit per second Tibit/s 240
Prefixes for bit and byte multiples
Decimal
Value SI
1000 k kilo-
10002 M mega-
10003 G giga-
10004 T tera-
10005 P peta-
10006 E exa-
10007 Z zetta-
10008 Y yotta-
Binary
Value IEC JEDEC
1024 Ki kibi- K kilo-
10242 Mi mebi- M mega-
10243 Gi gibi- G giga-
10244 Ti tebi-
10245 Pi pebi-
10246 Ei exbi-
10247 Zi zebi-
10248 Yi yobi-
Multiples of bits
SI prefixes Binary prefixes
Name
(Symbol)
Standard
SI
Binary
usage
Name
(Symbol)
Value
kilobit (kbit) 103 210 kibibit (Kibit) 210
megabit (Mbit) 106 220 mebibit (Mibit) 220
gigabit (Gbit) 109 230 gibibit (Gibit) 230
terabit (Tbit) 1012 240 tebibit (Tibit) 240
petabit (Pbit) 1015 250 pebibit (Pibit) 250
exabit (Ebit) 1018 260 exbibit (Eibit) 260
zettabit (Zbit) 1021 270 zebibit (Zibit) 270
yottabit (Ybit) 1024 280 yobibit (Yibit) 280

[edit] References

  1. ^ "BIPM - SI prefixes" (html). http://www.bipm.org/en/si/prefixes.html. 
  2. ^ a b c d e Prefixes for Binary Multiples — The NIST Reference on Constants, Units, and Uncertainty
  3. ^ a b IUCr 1995 Report - IUCr IUPAC Interdivisional Committee on Nomenclature and Symbols (IDCNS)
  4. ^ a b c "§3.1 SI prefixes" (in French/English) (PDF). The International System of Units (SI) (8th edition ed.). Paris: STEDI Media. 2006. pp. 127. ISBN 92-822-2213-6. http://www1.bipm.org/utils/common/pdf/si_brochure_8.pdf. Retrieved on 2007-02-25. "[Side note:] These SI prefixes refer strictly to powers of 10. They should not be used to indicate powers of 2 (for example, one kilobit represents 1000 bits and not 1024 bits). The IEC has adopted prefixes for binary powers in the international standard IEC 60027-2: 2005, third edition, Letter symbols to be used in electrical technology — Part 2: Telecommunications and electronics. The names and symbols for the prefixes corresponding to 210, 220, 230, 240, 250, and 260 are, respectively: kibi, Ki; mebi, Mi; gibi, Gi; tebi, Ti; pebi, Pi; and exbi, Ei. Thus, for example, one kibibyte would be written: 1 KiB = 210 B = 1024 B, where B denotes a byte. Although these prefixes are not part of the SI, they should be used in the field of information technology to avoid the incorrect usage of the SI prefixes." 
  5. ^ a b c (PDF)IEEE Std 1541-2002: IEEE Trial-Use Standard for Prefixes for Binary Multiples. Reaffirmed 27 March 2008. 12 February 2003. doi:10.1109/IEEESTD.2003.94236. http://ieeexplore.ieee.org/servlet/opac?punumber=8450. Retrieved on 2007-07-29. "This standard is prepared with two goals in mind: (1) to preserve the SI prefixes as unambiguous decimal multipliers and (2) to provide alternative prefixes for those cases where binary multipliers are needed. The first goal affects the general public, the wide audience of technical and nontechnical persons who use computers without much concern for their construction or inner working. These persons will normally interpret kilo, mega, etc., in their proper decimal sense. The second goal speaks to specialists—the prefixes for binary multiples make it possible for persons who work in the information sciences to communicate with precision.". 
  6. ^ IEEE Std 260.1-2004, IEEE Standard Letter Symbols for Units of Measurement (SI Units, Customary Inch-Pound Units, and Certain Other Units). IEEE. 23 September 2004. ISBN 073813998X. http://ieeexplore.ieee.org/servlet/opac?punumber=9287. 
  7. ^ Hewlett-Packard, Dell, Sony, Apple Inc., Toshiba, Gateway
    Sun Microsystems, 4AllMemory.com
  8. ^ Real, P. (September 1959). "A generalized analysis of variance program utilizing binary logic.". ACM '59: Preprints of papers presented at the 14th national meeting of the Association for Computing Machinery (ACM Press): 78–1 - 78–5. doi:10.1145/612201.612294. "On a 32k core size 704 computer, approximately 28,000 datum may be analyzed, ... without resorting to auxiliary tape storage.".  Note: the IBM 704 core memory units had 4096 36-bit words. Up to 32,768 words could be installed
  9. ^ Gruenberger, Fred (October 1960). "Letters to the Editor". Communications of the ACM 3 (10). doi:10.1145/367415.367419. http://doi.acm.org/10.1145/367415.367419.  "The 8K core stores were getting fairly common in this country in 1954. The 32K store started mass production in 1956; it is the standard now for large machines and at least 200 machines of the size (or its equivalent in the character addressable machines) are in existence today (and at least 100 were in existence in mid-1959)." Note: The IBM 1401 was a character addressable computer.
  10. ^ Amdahl, Gene M.; Gerrit Blaauw; Fred Brooks (1964). "Architecture of the IBM System/360" (PDF). IBM Journal of Research and Development (IBM) 8 (2). http://www.research.ibm.com/journal/rd/441/amdahl.pdf.  Figure 1 gives storage (memory) capacity ranges of the various models in "Capacity 8 bit bytes, 1 K = 1024"
  11. ^ Control Data Corporation (November 1968) (PDF). Control Data 7600 Computer System: Preliminary System Description. http://archive.computerhistory.org/resources/text/CDC/CDC.7600.1968.102646087.pdf. "One type, designated as the small core memory (SCM) is a many bank coincident current type memory with a total of 64K words of 60 bit length (K=1024)." 
  12. ^ Control Data Corporation (1965-1967). Control Data 6400/6500/6600 Computer Systems Reference Manual (Pub No. 60100000 ed.). pp. pg 2–1. http://ed-thelen.org/comp-hist/CDC-6600-R-M.html#TOC/. "Central Memory is organized into 32K, 65K, or 131K words (60-bit) in 8, 16, or 32 banks of 4096 words each." 
  13. ^ Frankenberg, Robert (October 1974). "All Semiconductor Memory Selected for New Minicomputer Series" (PDF). Hewlett-Packard Journal (Hewlett-Packard) 26 (2): pg 15–20. http://www.hpl.hp.com/hpjournal/pdfs/IssuePDFs/1974-10.pdf. Retrieved on 2007-06-18. "196K-word memory size". 
  14. ^ Hewlett-Packard (November 1973), "HP 3000 Configuration Guide" (PDF), HP 3000 Computer System and Subsystem Data: pg 59, http://www.bitsavers.org/pdf/hp/3000/hp3000/5952-4500_optionsBrochure_Nov73.pdf 
  15. ^ Lin, Yeong; Mattson, Richard (September 1972). "Cost-performance evaluation of memory hierarchies". Magnetics, IEEE Transactions on (IEEE) 8 (3): pg 390–392. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?tp=&arnumber=1067329&isnumber=22917. "Also, random access devices are advantageous over serial access devices for backing store applications only when the memory capacity is less than 1 Mbyte. For capacities of 4 Mbyte and 16 Mbyte serial access stores with shift register lengths of 256 bit and 1024 bit, respectively, look favorable.". 
  16. ^ IBM (1972) (PDF). System/370 Model 158 brochure. IBM. http://archive.computerhistory.org/resources/text/IBM/IBM.370Mod158.1972.102646258.pdf. "All-monolithic storage ... (1024-bit NMOS) This new improvement of processor storage makes system expansion more economical. Real storage capacity is available in 512K increments ranging from 512K to 2,048K bytes.". 
  17. ^ Bell, Gordon; Strecker, William (November 1975). "Computer structures: What have we learned from the PDP-11?" (PDF). ISCA '76: Proceedings of the 3rd annual symposium on Computer architecture (ACM Press): pg 1–14. http://research.microsoft.com/~gbell/Digital/Bell_Strecker_What_we%20_learned_fm_PDP-11c%207511.pdf. "memory size (8k bytes to 4 megabytes).". 
  18. ^ PC World - Hitachi Introduces 1-Terabyte Hard Drive
  19. ^ ANSI/IEEE Std 1084-1986 IEEE Standard Glossary of Mathematics of Computing Terminology. October 30, 1986. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?tp=&arnumber=26589&isnumber=1030. "kilo (K). (1) A prefix indicating 1000. (2) In statements involving size of computer storage, a prefix indicating 210, or 1024. mega (M). (1) A prefix indicating one million. (2) In statements involving size of computer storage, a prefix indicating 220, or 1048576." 
  20. ^ ANSI/IEEE Std 1212-1991 IEEE Standard Control and Status Register (CSR) Architecture for Microcomputer Buses. July 22, 1992. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?isnumber=4706&arnumber=182896&count=1. "Kbyte. Kilobyte. Indicates 210 bytes. Mbyte. Megabyte. Indicates 220bytes. Gbyte is used in the Foreword." 
  21. ^ IEEE Std 610.10-1994 IEEE Standard Glossary of Computer Hardware Terminology. June 24, 1994. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?tp=&arnumber=477873&isnumber=10104. "gigabyte (gig, GB). This term may mean either a) 1 000 000 000 bytes or b) 230 bytes. ... As used in this document, the terms kilobyte (kB) means 210 or 1024 bytes, megabyte (MB) means 1024 kilobytes, and gigabyte (GB) means 1024 megabytes." 
  22. ^ Institute of Electrical and Electronics Engineers (2000). The Authoritative Dictionary of IEEE Standards Terms. IEEE Computer Society Press. ISBN 0-7381-2601-2. http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=4116787.  "kB See kilobyte." "Kbyte Kilobyte. Indicates 210 bytes." "Kilobyte Either 1000 or 210 or 1024 bytes." The standard also defines megabyte and gigabyte. There is a note that an alternative notation for base-2 is under development.
  23. ^ a b Letters to the editor: Abbreviations for computer and memory sizes. Donald R. Morrison, Sandia Corp, Communications of the ACM, Volume 11, Issue 3 (March 1968) Page: 150 doi:10.1145/362929.362962
  24. ^ Letters to the editor: proposed abbreviation for 1024: bK, Wallace Givens, Applied National Lab, Communications of the ACM archive, Volume 11, Issue 6 (June 1968), Page: 391 doi:10.1145/363347.363351
  25. ^ Letters to the editor: On binary notation, Bruce A. Martin, Associated Universities Inc., Communications of the ACM, Volume 11, Issue 10 (October 1968) Page: 658 doi:10.1145/364096.364107
  26. ^ Standardized units for use in information technology, Markus Kuhn, 1996-12-29
  27. ^ a b Knuth: Recent News (1999)
  28. ^ 1996 IUCr IUPAC Interdivisional Committee on Nomenclature and Symbols (IDCNS) report
  29. ^ Bruce Barrow, "A Lesson in Megabytes," IEEE Standards Bearer, January 1997, page 5
  30. ^ "These prefixes for binary multiples, which were developed by IEC Technical Committee (TC) 25, Quantities and units, and their letter symbols, with the strong support of the International Committee for Weights and Measures (CIPM) and the Institute of Electrical and Electronics Engineers (IEEE), were adopted by the IEC as Amendment 2 to IEC International Standard IEC 60027-2: Letter symbols to be used in electrical technology - Part 2: Telecommunications and electronics."
  31. ^ IUCR 1999 report on IUPAC Interdivisional Committee on Nomenclature and Symbols
  32. ^ a b The Art of Computer Programming Volume 1, Donald Knuth, pp. 24 and 94
  33. ^ System/360 Model 91
  34. ^ The Product Line Card unambiguously uses MB to characterize HDD capacity in millions of bytes
  35. ^ 1977 Disk/Trend Report - Rigid Disk Drives, published June 1977
  36. ^ Free on-line Dictionary of Computing
  37. ^ "Definition of megabyte" (html). http://www.m-w.com/dictionary/Megabyte. 
  38. ^ "Definitions of Megabyte on Dictionary.com"" (html). http://dictionary.reference.com/browse/Megabyte. 
  39. ^ "AskOxford: megabyte" (html). http://www.askoxford.com/concise_oed/megabyte?view=uk. 
  40. ^ ""International System of Units (SI): Prefixes for binary multiples"". The NIST Reference on Constants, Units, and Uncertainty. National Institute of Science and Technology. http://physics.nist.gov/cuu/Units/binary.html. Retrieved on 2007-09-09. 
  41. ^ IEC 60027-2 (2000-11) Ed. 2.0
  42. ^ A.J.Thor (2000). "Prefixes for binary multiples" (PDF). Metrologica 37 (81). http://ej.iop.org/links/rDo33k,Nb/lrUHtuYE3BGiff6cav5vpA/me0112.pdf. 
  43. ^ International Electrotechnical Commission (2005-08-15). HERE COME ZEBI AND YOBI. Press release. http://www.iec.ch/news_centre/release/nr2005/nr2005.htm. 
  44. ^ "IEEE-SA STANDARDS BOARD STANDARDS REVIEW COMMITTEE (RevCom) MEETING AGENDA". 2005-03-19. http://standards.ieee.org/board/rev/305agenda.html. Retrieved on 2007-02-25. "1541-2002 (SCC14) IEEE Trial-Use Standard for Prefixes for Binary Multiples [No negative comments received during trial-use period, which is now complete; Sponsor requests elevation of status to full-use.] Recommendation: Elevate status of standard from trial-use to full-use. Editorial staff will be notified to implement the necessary changes. The standard will be due for a maintenance action in 2007." 
  45. ^ Wallich, Paul (April 2008). "Tools & toys: Hacking the Nokia N800". IEEE Spectrum 45 (4): 25. doi:10.1109/MSPEC.2008.4476441.  "A lot can happen in a decade. You can hold the Nokia N800 in your hand, yet it’s a near-exact match for a high-end desktop PC from 10 years ago. It has a 320-megahertz processor, 128 megabytes of RAM, and a few gigabytes of available mass storage."
  46. ^ Gschwind,, Michael; David Erb, Sid Manning, and Mark Nutter (June 2007). "An Open Source Environment for Cell Broadband Engine System Software". Computer (IEEE Computer Society) 40 (6): 37–47. doi:10.1109/MC.2007.192.  "The processor has a memory subsystem with separate first-level 32-Kbyte instruction and data caches, and a 512-Kbyte unified second-level cache." Authors are with IBM.
  47. ^ niso, New Specs and Standards
  48. ^ Barry N. Taylor & Ambler Thompson Ed. (PDF). The International System of Units (SI). Gaithersburg, MD: National Institute of Standards and Technology. pp. 23. http://physics.nist.gov/Pubs/SP330/sp330.pdf. Retrieved on 2008-06-18. 
  49. ^ Binary vs. Decimal Measurements
  50. ^ JEDEC Solid State Technology Association (December 2002), "Terms, Definitions, and Letter Symbols for Microcomputers, Microprocessors, and Memory Integrated Circuits" (PDF), Jesd 100B.01, http://www.jedec.org/download/search/JESD100B01.pdf 
  51. ^ IBM invented the disk drive in 1956 and until the late 1960s its drives and their clones were dominant. See, e.g. US vs. IBM antitrust litigation (Jan 1969), especially IBM analyses of Memorex and other disk drive companies.
  52. ^ On January 6, 2007, a check of the websites of Fujitsu, HGST, Samsung, Seagate, Toshiba and Western Digital showed these companies (representing virtually all of the HDD industry by unit volume) specify capacity with the SI prefix definitions.
  53. ^ a b ""Secure Digital Capacity Disclaimer"" (PDF). sandisk.com. SanDisk Corporation. http://www.sandisk.com/Assets/Categories/Products/sd_capacitydisclaimer.pdf. Retrieved on 2007-09-09. 
  54. ^ Tandon (January 1984) (PDF). TM100-1, TM100-2 Flexible Disk Drives: Product Specification and User's Manual. Tandon Corporation. pp. pg 2–4. http://www.bitsavers.org/pdf/tandon/TM100-1_userMan_1984.pdf. 
  55. ^ IBM (May 1982). Disk Operating System by Microsoft (Version 1.1). IBM Corporation. pp. G–1.  Some software applications "used with DOS 1.10, will operate with either two 160KB drives or two 320KB drives. Both drives MUST be of the same type..."
  56. ^ IBM (January 1983). Disk Operating System by Microsoft (Version 2.0). IBM Corporation. pp. A–2.  "Beginning with DOS Version 2.00, DOS formats diskettes at 9 sectors per track, which increases capacity from 163,840 to 184,320 characters of information for single-sided diskettes and from 327,680 to 368,640 characters for dual-sided diskettes. The smaller capacity diskettes created by DOS Version 1.00 or DOS Version 1.10 (8 sectors per track) are also usable with DOS Version 2.00."
  57. ^ a b Apple Inc. (1991-08-22). "Double-Density Versus High-Density Disks". Article ID: 3802. Apple Inc.. http://docs.info.apple.com/article.html?artnum=3802. Retrieved on 2007-07-07.  "This article gives the specifications for the 800K floppy disks and the 1.4MB floppy disks." 800K Disk has 1600 sectors and 1.4MB Disk has 2880 sectors. A sector is 512 bytes.
  58. ^ Microsoft (2003-05-06). "Determining Actual Disk Size: Why 1.44 MB Should Be 1.40 MB". Article ID: 121839. Microsoft. http://support.microsoft.com/kb/121839. Retrieved on 2007-07-07.  "The 1.44-megabyte (MB) value associated with the 3.5-inch disk format does not represent the actual size or free space of these disks. Although its size has been popularly called 1.44 MB, the correct size is actually 1.40 MB."
  59. ^ Data capacity of CDs
  60. ^ Understanding Recordable and Rewritable DVD
  61. ^ Rules for SAE Use of SI (Metric) Units — Section C.1.12 — SI prefixes
  62. ^ HD 60027-2:2003 Information about the harmonization document (obtainable on order)
  63. ^ prEN 60027-2:2006 Information about the EN standardization process
  64. ^ "UNITS". Linux Programmer's Manual. 2001-12-22. http://www.annodex.net/cgi-bin/man/man2html?units+7. Retrieved on 2007-05-20. "When the Linux kernel boots and says hda: 120064896 sectors (61473 MB) w/2048KiB Cache the MB are megabytes and the KiB are kibibytes." 
  65. ^ ESR post on LKML
  66. ^ "2.2 Block size". GNU Core Utilities manual. Free Software Foundation. 2002-12-28. http://www.gnu.org/software/coreutils/manual/html_node/Block-size.html#Block-size. Retrieved on 2007-05-20. "Integers may be followed by suffixes that are upward compatible with the SI prefixes for decimal multiples and with the IEC 60027-2 prefixes for binary multiples." 
  67. ^ Flyspray
  68. ^ bugs.mysql.com
  69. ^ "gparted-0.2 changelog". SourceForge. 2006-01-30. http://sourceforge.net/project/shownotes.php?release_id=389304&group_id=115843. Retrieved on 2007-05-20. "changed KB/MB/GB/TB to KiB/MiB/GiB/TiB after reading http://www.iec.ch/zone/si/si_bytes.htm" 
  70. ^ DFSee
  71. ^ disktype
  72. ^ Mac OS X Manual Page For raidutil(8)
  73. ^ FreeDOS-32 - Standards Compliance
  74. ^ "IFCONFIG". Linux Programmer's Manual. 2005-06-30. http://www.annodex.net/cgi-bin/man/man2html?8+ifconfig. Retrieved on 2007-05-20. "Since net-tools 1.60-4 ifconfig is printing byte counters and human readable counters with IEC 60027-2 units. So 1 KiB are 2^10 byte." 
  75. ^ GNOME Network
  76. ^ SLIB
  77. ^ Cygwin/XFree86
  78. ^ Re: minor typo - HTTrack Website Copier Forum
  79. ^ http://developer.pidgin.im/ticket/1684 Developer discussion
  80. ^ "Deluge changeset". http://dev.deluge-torrent.org/changeset/527. Retrieved on 2007-06-13. "proper prefix for size" 
  81. ^ What's New in zFTPServer Suite
  82. ^ SourceForge.net: Files
  83. ^ archive.netbsd.se
  84. ^ WinSCP :: Recent Version History
  85. ^ ""Vreogh Third Amended Complaint (Case No. GCG-04-428953)"" (PDF). pddocs.com. Poorman-Douglas Corporation. 10 March 2005. https://www.pddocs.com/FlashMemory/Documents/Vroegh%20Third%20Amended%20Complaint.pdf. Retrieved on 2007-09-09. 
  86. ^ http://www.sandisk.com/Assets/Categories/Products/sd_capacitydisclaimer.pdf
  87. ^ Safier, Seth A.. "Frequently Asked Questions". Flash Memory Settlement. Poorman-Douglas Corporation. https://www.pddocs.com/FlashMemory/faq.aspx. Retrieved on 2007-09-09. 
  88. ^ Gutride, Adam; Seth A. Safier (29 March 2006). ""Class Action Complaint"". 'Orin Safier v. Western Digital Corporation'. Western Digital Corporation. http://www.wdc.com/settlement/docs/complaint.htm. Retrieved on 2007-09-09. 
  89. ^ Zimmerman, Bernard (2006). ""Notice of Class Action and Proposed Settlement"". Orin Safier v. Western Digital Corporation. Western Digital Corporation. http://www.wdc.com/settlement/docs/longform.htm. Retrieved on 2007-09-09. 
  90. ^ a b News article
  91. ^ Baskin, Scott D. (1 February 2006). ""Defendant Western Digital Corporation's Brief in Support of Plaintiff's Motion for Preliminary Approval"". 'Orin Safier v. Western Digital Corporation'. Western Digital Corporation. http://www.wdc.com/settlement/docs/document20.htm. Retrieved on 2007-09-09. 
  92. ^ ""WD Caviar SE16 SATA Hard Drives"". Western Digital: Products. Western Digital Corporation. http://www.wdc.com/en/products/Products.asp?DriveID=301. Retrieved on 2007-09-09. 

[edit] Further reading

[edit] External links

[edit] Converters

Personal tools