Skip to main content

Why storage devices show a less capacity than real value

Many of the Microsoft windows users complain their storage devices like hard disks and flash drives show a less capacity in windows operating systems than manufacturer mentioned capacity. For example 4 GB pen drive usually have a capacity of about 3.72 GB. 320 GB hard disk has about a capacity of about 300 GB. People give different opinions as reason for this. Some says windows allocate some space for back up process. Some accuse the manufacturer. But actually the mentioned capacity is there. Reason is a matter of using different unite.
The smallest unit we use to measure data is byte(B). Bit (b) is smaller than byte. But we usually don't use bit to measure size of stored data. Bit is used to measure data transfer rates. Size of stored data is measured in bytes. When numerical value of the bytes grows we use prefixes like Kilo, Mega, Giga and Tera. The problem starts from this point.
In system international (SI) units these prefixes are used for powers of 10.
  • Kilo = 103 = 1000
  • Mega = 10= 1000 * 1000
  • Giga = 109 = 1000 * 1000 * 1000
  • Tera = 1012 = 1000 * 1000 * 1000 * 1000 
But in computer world this prefixes are used for powers of 2.
  • Kilo = 210 =  1024
  • Mega =220 = 1024 * 1024  
  • Giga = 230 = 1024 * 1024 * 1024
  • Tera = 240 = 1024 * 1024 * 1024 * 1024
Storage device manufactures use SI unit system to mention the capacity of their storage devices. But computer displays the capacity of storage devices using binary prefixes (powers of 2). This is the reason for the mismatch between the mentioned capacity and displayed capacity.

SI: 109 B = 1 GB 
Binary: 230 B = 1 GB
Therefore SI 1 GB = Binary (1/230 )*109 = Binary 0.9313225 GB
SI 4 GB = 0.9313225 * 4 = Binary 3.725 GB
Now I think you understand the reason for showing a lesser capacity in Windows. But Mac operating systems show the same storage value as same as the mentioned value in the cover. The reason is Mac operating systems use SI system not binary system.


Popular posts from this blog

How to play Sinhala subtitles(or any other custom fonts) using MX Player on any Android device

Do you know that you can play sinhala subtitles on your android device using MX player even though the device doesn't support sinhala rendering. Just a simple procedure.

Spring Transaction Management over multiple threads

Spring framework provides a comprehensive API for database transaction management. Spring takes care of all underlying transaction management considerations and provides a consistent programming model for different transaction APIs such as Java Transaction API (JTA), JDBC, Hibernate, Java Persistence API (JPA), and Java Data Objects (JDO). There are 2 main types of transaction management in Spring. They are declarative transaction management which is a high level one and programmatic transaction management which is more advance but flexible.

The Spring API works very well with almost all of the transaction management requirements as long as the transaction is on a single thread. The problem rises when we want to manage a transaction across multiple threads. Spring doesn't support transactions over multiple threads out of the box. Spring doesn't explicitly mention that in the documentation. But you will end up with run time errors or unexpected results if you try to do so.

Root Sony Xperia E3 or E3 Dual

This guide is only valid for Sony Xperia E3 and Sony Xperia E3 Dual only. And this guide has been completely tested and succeeded with Sony Xperia E3 Dual (D2212).