Skip to main content

RAM or Disk Size Display Discrepancies

In MoBro, your 32GB RAM kit (technically 32GiB) will appear as 34GB, while your 1TB hard drive is displayed as 1TB despite Windows listing the same hard drive as only 931GB.

This discrepancy comes from the often confusing topic of data units and how they are used by different industries and companies.
This page aims to explain these differences a bit more clearly.

Basics​

In the International System of Units (SI), a gigabyte (GB) is defined as 1,000³ bytes, or 1,000,000,000 bytes. This definition is also legally recognized (there have been lawsuits regarding this in the US).

Hard drives are marketed using this decimal-based standard. For instance, if you purchase a 1TB hard drive, its capacity will correspond to 1,000⁴ bytes.

In contrast, memory modules like RAM are measured using a binary-based standard, calculated in powers of 2. This means 1GB of memory equals 1,024³ bytes, or 1,073,741,824 bytes.

Technically, this unit is referred to as a gibibyte (GiB) according to the IEC standard, but manufacturers often stick to using GB due to historical reasons and because consumers are familiar with it. The JEDEC standard for memory also still defines GB as 1,024³ bytes, so in the context of RAM the label is not strictly wrong.


Representation Across Operating Systems​

Windows​

Windows calculates storage in binary-based units (GiB) but still uses the label GB in its interface. This inconsistency is also due to historical reasons and also to maintain simplicity for users.

For example:

  • A 1TB hard drive, using the decimal standard of 1,000⁴ bytes, appears as approximately 931GB in Windows.
  • Similarly, 32GB of RAM (technically 32GiB) will display as 32GB, even though its capacity in bytes aligns with the binary definition.

Linux​

On Linux, there is no single convention: it depends on the tool being used. Many tools distinguish between decimal (SI) and binary (IEC) units and label them explicitly, but not all of them do.

For example:

  • free -h shows memory in binary units with explicit labels, so 32GiB of RAM appears as roughly 31Gi (a bit less than the installed amount, as some memory is reserved by the system).
  • df -h calculates in binary units but labels them only as G, so a 1TB hard drive (1,000⁴ bytes) appears as approximately 931G.
  • File managers differ: GNOME Files uses decimal units (showing the drive as 1TB), while KDE lets you choose.

Where explicit labels such as GiB are used, they help prevent confusion when comparing storage and memory sizes.

macOS​

Starting with macOS Snow Leopard, Apple switched to the decimal unit system (SI) for file and storage sizes, ensuring that storage sizes appear as advertised. Memory, however, is still shown in binary units labeled as GB:

  • A 1TB hard drive will be displayed as 1TB in macOS, matching how MoBro calculates sizes.
  • 32GiB of RAM will display as 32GB in "About This Mac" and Activity Monitor, the same as in Windows.

How MoBro Displays Units​

MoBro follows the SI standard for calculating and displaying storage and memory sizes. This means it treats 1GB as 1,000³ bytes (decimal-based).

Impact on Display​

  • 32GiB of memory is displayed as approximately 34GB.
  • A 1TB hard drive will appear as 1TB, correctly matching its advertised capacity.

Unit Support​

MoBro supports both decimal-based units (e.g., GB) and binary-based units (e.g., GiB). You can simply select your preferred unit type in the dashboard builder to ensure the display suits your needs.


Takeaway​

The primary source of confusion across platforms stems from the differing measurement conventions used for RAM and storage devices:

  • Storage devices (e.g., SSDs, HDDs, USBs) are typically marketed using SI decimal units.

  • Memory modules (RAM) are measured in binary units but are still labeled as GB rather than GiB.

  • Windows uses binary-based calculations (GiB) but continues to label and display these capacities as GB, leading to inconsistency.

  • macOS uses decimal units for storage but still shows RAM in binary units labeled as GB.

  • Linux tools vary, but many label binary units explicitly as GiB.

How these units are displayed ultimately depends on the operating system and tools being used. Only some tools use explicit labels (e.g., GB vs. GiB); most operating systems and manufacturers blur the distinction for simplicity and tradition, contributing to user confusion.