Proč váš 1TB disk ukazuje jen 931 GB (a kam se ztratilo místo)

Koupíte si externí disk s kapacitou 1 TB, připojíte ho a Windows hlásí 931 GB. Nic není rozbité a nikdo vám neukradl 69 gigabajtů. Výrobce a operační systém jen měří dvěma různými pravítky – a oba svou jednotku nazývají „gigabajt“.

Tento článek obě pravítka vysvětlí, ukáže přesný výpočet a dá vám rychlý způsob, jak si sami ověřit jakýkoli údaj o kapacitě nebo rychlosti internetu.

Dva významy slova „kilo“

Všude jinde ve vědě znamená kilo 1000. Kilometr je 1000 metrů, kilogram 1000 gramů. Výrobci úložišť se drží této desítkové (SI) konvence:

Jednotka Bajty (desítkově)
1 kilobajt (kB) 1 000
1 megabajt (MB) 1 000 000
1 gigabajt (GB) 1 000 000 000
1 terabajt (TB) 1 000 000 000 000

Počítače ale adresují paměť v mocninách dvojky. Programátoři si brzy všimli, že 2¹⁰ = 1024 je dost blízko 1000, a začali 1024 bajtům říkat „kilobajt“. Zvyk se udržel a každý další stupeň násobí 1024 místo 1000.

Protože se rozdíl s každým stupněm zvětšuje, z odchylky 2,4 % u kilobajtu se u terabajtu stane téměř 10 %:

Předpona Desítková hodnota Dvojková hodnota Rozdíl
kilo 10³ 2¹⁰ = 1 024 2,4 %
mega 10⁶ 2²⁰ = 1 048 576 4,9 %
giga 10⁹ 2³⁰ = 1 073 741 824 7,4 %
tera 10¹² 2⁴⁰ = 1 099 511 627 776 10,0 %

Řešení, které skoro nikdo nepoužívá: kibibajty

V roce 1998 zavedla Mezinárodní elektrotechnická komise (IEC) pro dvojkové jednotky samostatné názvy, aby zmatek skončil:

Tyto názvy používají linuxové nástroje a řada technických programů. Windows ale dodnes počítají ve dvojkových jednotkách a označují je jako GB. macOS přešel v roce 2009 na desítkové jednotky – proto tentýž disk na Macu ukazuje 1 TB a na PC 931 GB.

Přesný výpočet pro 1TB disk

Disk skutečně obsahuje 1 000 000 000 000 bajtů. Windows tuto hodnotu vydělí číslem 1 073 741 824 (jeden gibibajt):

1 000 000 000 000 ÷ 1 073 741 824 = 931,32 GiB

Přesně tohle číslo Windows zobrazí, jen s nápisem „GB“. Jakoukoli jinou kapacitu ověříte stejně, nebo použijte převodník terabajtů na gibibajty:

Uváděná kapacita Zobrazení ve Windows
128 GB 119,2 GB
256 GB 238,4 GB
512 GB 476,8 GB
1 TB 931,3 GB
2 TB 1,82 TB
4 TB 3,64 TB

Čerstvě naformátovaný disk obvykle ukáže ještě o něco méně, protože si souborový systém vyhradí místo pro vlastní správu. Další kus si u notebooků vezmou předinstalované obnovovací oddíly.

Výjimkou je operační paměť

Paměťové čipy se vyrábějí v mocninách dvojky, takže RAM se opravdu prodává ve dvojkových jednotkách. Modul „16 GB“ obsahuje skutečně 16 GiB (17 179 869 184 bajtů) a systém ukáže plných 16 GB – po odečtení části případně vyhrazené pro integrovanou grafiku.

Bity, nebo bajty: past na rychlost internetu

Druhá, ještě větší záměna se skrývá v rychlostech internetu. Rychlost sítě se měří v bitech za sekundu, velikost souborů v bajtech. Jeden bajt má 8 bitů.

Připojení „100 Mb/s“ (100 megabitů za sekundu) tedy přenese nejvýše:

100 ÷ 8 = 12,5 megabajtu za sekundu

Soubor o velikosti 1 GB tak na tomto připojení potřebuje nejméně 80 sekund, ne 10. Skutečné stahování bývá kvůli režii protokolů ještě o něco pomalejší. Malé b v Mb/s (Mbps) znamená bity, velké B v MB/s bajty. Náš převodník megabitů za sekundu na megabajty za sekundu to vydělí za vás.

Uváděná rychlost Stahování v nejlepším případě
50 Mb/s 6,25 MB/s
100 Mb/s 12,5 MB/s
300 Mb/s 37,5 MB/s
1 Gb/s 125 MB/s

Jak poznat, o kterou jednotku jde

Několik praktických pravidel:

  1. Obaly disků, technické listy SSD a tarify cloudových úložišť používají desítkové jednotky (1 GB = 1 000 000 000 bajtů).
  2. Průzkumník Windows používá dvojkové jednotky, ale označuje je GB.
  3. macOS (od verze 10.6) a iOS používají desítkové jednotky.
  4. Linuxové nástroje se liší: některé ukazují GiB, jiné G ve dvojkovém smyslu a mnohé umějí přepnout parametrem.
  5. Internetové tarify a rychlosti Wi-Fi používají bity, ne bajty.
  6. Operační paměť používá dvojkové jednotky.

Pokud vám nějaké číslo připadá asi o 7 % nebo 10 % menší, téměř jistě vidíte stejné množství změřené druhým pravítkem.

Shrnutí

Pro převody mezi všemi těmito jednotkami – desítkovými, dvojkovými, bity i bajty – použijte převodník datových jednotek nebo převodník přenosové rychlosti.