Perché Ubuntu non misurerà più le dimensioni del file come byte, megabyte, gigabyte, ecc.?


13

Ho letto da qualche parte che Ubuntu non utilizzerà più le familiari unità di dimensioni dei file che ormai conosciamo tutti (kB, MB, GB, TB) e passerà a uno standard IEC diverso (KiB, MiB, GiB, TiB). Se questo è vero, vorrei sapere qual è il ragionamento alla base di questo cambiamento e l'impatto (se presente) di questo cambiamento, specialmente con applicazioni multipiattaforma o applicazioni eseguite con Wine.


3
Un byte è un byte. Cattivo esempio
Nathan Osman,

2
Per quanto ne so, l'utilizzo di KiB, MiB ... ecc. È già in atto in Ubuntu. Quindi "Ubuntu non sarà più .." dovrebbe essere "Ubuntu non è più .."
Weboide,

Risposte:


60

La risposta breve è sì, i prefissi cambiano. Ma non fa davvero la differenza.

Ragionamento

C'è sempre stata confusione perché unità di tipo decimale come KB, MB, GB sono state utilizzate con dati binari: KB significava 1024 byte, non 1000 byte come ci si potrebbe aspettare. E naturalmente molte persone in tutto il mondo usano i prefissi decimali reali nella loro vita quotidiana sotto il sistema metrico.

Gli ingegneri di rete e gli utenti di computer di lunga data sono ovviamente addestrati a comprendere la differenza, ma la confusione in corso ha comportato che le applicazioni fossero incoerenti nel loro utilizzo; un'applicazione potrebbe usare MB per significare 1.000.000 di byte (usando il prefisso decimale), mentre un'altra potrebbe significare 1.048.576 byte (usando l'interpretazione binaria).

Ciò ha portato Ubuntu alla fine ad adottare una nuova politica di unità .

urto

L'impatto è davvero solo un problema di visualizzazione. Le dimensioni dei file e la larghezza di banda della rete verranno visualizzate utilizzando i prefissi decimali, quindi un file da 5 KB sarà effettivamente di 5000 byte. Questo è in realtà in linea con ciò che molte (la maggior parte?) Si aspettano.

L'utilizzo della memoria e alcune utility di basso livello visualizzeranno le dimensioni utilizzando i prefissi binari (KiB, MiB, GiB, TiB). Ciò può causare un po 'di confusione iniziale, ma in realtà è migliore dello status quo in cui abbiamo un prefisso che significa due cose diverse.

Poiché Windows utilizza ancora il vecchio sistema ad hoc, un'applicazione Wine potrebbe visualizzare file di dimensioni leggermente diverse per lo stesso file. Tuttavia, almeno vedo comunque diverse dimensioni visualizzate a causa dei metodi di arrotondamento, quindi non sono convinto che sia un grosso problema.

Guarda anche:


2
Huh. Perché non rendere la politica usare solo 1 MB per significare 1024 in tutti i casi? Se le persone acquistano un'unità "2GB" (che in realtà è un'unità da 2GiB) e quindi la aprono in Ubuntu, verrà segnalata come 2,2 GB o giù di lì. Ho capito che usare sempre MB per significare 1.000 era sempre sbagliato, idem per KB, GB, ecc.
mlissner

Un'unità da 200 GB è un'azione da 200 GB non 200GiB
txwikinger il

2
@mlissner: in realtà, usare MB per indicare 1024 × 1024 byte è sempre stato sbagliato, anche se era di uso comune, ed è per questo che i nuovi prefissi basati su binari sono stati standardizzati 11 (!) anni fa. Quindi Ubuntu sta implementando solo uno standard IEC di 11 anni e uno standard ISO di 2 anni (ora noto come ISO / IEC 80000).
JanC

2
Non sono mai stato confuso fino a quando 1kB era 1024 byte.
Burli,

-1

È SOOOO ... SEMPLICE !!!

Qualche anno fa c'era ben poca confusione al riguardo. Perché la notazione

  • 1 KB = 1024 byte
  • 1 MB = 1024 KB

è stato insegnato, imparato e utilizzato in tutte le università e in quasi tutto il settore (software e hardware) in tutto il mondo, per molti anni.

La stupida idea di contare nella base 1000 (nemmeno nella base 10) è solo un altro sintomo della stupidità dei nostri tempi e della vita moderna.

Ciò che rende le cose molto peggiori è l'idea più stupida di provare a stabilire (e continuare a farlo) la vecchia notazione per le unità poco pratiche a 1000 basi. CHE HA CREATO TUTTA LA CONFUSIONE. Se solo avessero adottato la convenzione

  • 1 KiB = 1000 byte
  • 1 MiB = 1000 byte

allora ci sarebbe molta meno confusione e il problema sarebbe molto più piccolo.

Avrebbero dovuto provare a dimostrarlo

1KB = 1024 bytes
1MB = 1024 KB

and

1 Ikb or ikb or Kib = 1000 bytes
1 IMb or imb or Mib  = 10^6 bytes

Non è assolutamente necessario utilizzare unità base-1000. Probabilmente l'idea è nata in una mente testarda che diceva "oh, no, se chilo è 1000 e mega è 1.000.000, useremo chilo e mega in base 1000 per unità di informazione (base 2!)". Tutto ciò solo perché un giorno, ma è stato molto più tempo fa, qualcuno ha avuto la sfortunata idea (non così male, però) di chiamare i kilobyte (kb) un mucchio di 1024 byte. Se avesse scelto k2b e m2b e li avesse chiamati kitby byte e mitwo byte (o kookie byte , mookie byte e gookie byte), ad esempio, tutta questa idea ritardata di utilizzare la base 1000 per tutte le applicazioni e un intero sistema operativo e imporlo come il modo normale di parlare delle misure in HW e SW al peolpe, non accadrà, che peggiora le cose.


3
In realtà, lo stiamo rendendo più logico. Vedi, per esempio, usiamo km quando intendiamo 1000 metri. Perché dovrebbe essere diverso? Il motivo di k = 1024 è la prestazione e la semplicità. È davvero veloce spostare quei bit invece di fare divisioni reali. Oggi, tuttavia, ottenendo numeri sempre più grandi la discrepanza tra il 1024 ^ n e 1000 ^ n . Anche se non è stato un problema perché erano praticamente uguali, sta iniziando a essere davvero confuso.
Georg Schölly

1
è stato insegnato, imparato e utilizzato in tutte le università e in quasi tutto il settore (software e hardware) in tutto il mondo, per molti anni. No non lo era. Questo è un mito diffuso dai programmatori per giustificare la loro pigrizia. "megabyte" significa "1.000.000 di byte" negli anni '60 e "kilobyte" significa "1000 byte". Microsoft è principalmente responsabile delle unità senza senso e poco pratiche basate su 1024.
endolith

-2

È davvero confuso ciò che è accaduto riguardo ai cambiamenti nella designazione delle dimensioni nel 1998 e sarebbe stato molto più semplice se avessero semplicemente aggiunto un nuovo set di potenze di 10 come nuova designazione, ma purtroppo non lo hanno fatto perché il ragionamento alla il tempo era incentrato sulla correzione dell'etimologia della parola usata "Kilo", quindi a tutte le dimensioni originali basate su potenze di 2 (1024) furono dati tutti nuovi nomi e nuove denominazioni e quindi la nuova potenza di 10 numeri assunse l'etichetta originale pre-1998 nomi.

Quindi lascia che la confusione abbia inizio:

Prima del 1998, un Kilobyte significava 1024 byte ed era designato come K o KB.

Dopo il 1998, l'originale Kilobyte precedente al 1998 è stato ribattezzato Kibibyte e ha ricevuto la nuova designazione K o KiB ed è stato creato un nuovissimo post 1998 Kilobyte che è di 1000 byte e ha la designazione abbreviata KB in modo che oggi abbiamo quanto segue:

1 KB = 1000 byte (KB non può essere ridotto a K) 1 KiB = 1000 byte (KiB può essere ridotto a K)

Le designazioni sono state tutte modificate in modo che KB sia l'abbreviazione ufficiale che si riferisce all'attuale Kilobyte (1000) mentre K e KiB sono ufficialmente le designazioni abbreviate ufficiali per Kibibyte (1024).

Diventa particolarmente confuso perché la maggior parte di noi che era nei primi giorni molto prima del 1998 era abituato a chiamare Kilobyte come 1024 byte e scrivere KB o K come designazione abbreviata ma oggi è sbagliato e tutti noi che lo stiamo facendo in realtà si riferiscono a "Kibibytes" quando diciamo "Kilobyte" e spesso usiamo la designazione errata per gli standard mondiali ufficialmente inattivi stabiliti dalla IEC nel 1998, il che è un po 'confuso ma non sarebbe così male tranne che ora ci sono anche 18 anni dopo le persone che ancora non si rendono conto che K e KB NON sono uguali e sono totalmente diverse.

Quindi c'è davvero una differenza tra "K" (1024) e "KB" (1000)!

Per inciso, questo è anche il motivo per cui i dischi rigidi sembrano avere sempre meno spazio di quanto pubblicizzato, ma i produttori di dischi rigidi sono quelli che hanno ragione e usano gli standard corretti oggi quando scrivono "Terabyte" sulla confezione quando il la persona che acquista l'unità sta in realtà pensando in termini di Tebibyte e si aspetta uno spazio in quanto tale.

Per inciso, la differenza tra un'unità da 2 TB (Terabyte) e un'unità da 2 T o 2 TiB (Tebibyte) è un enorme enorme 199.023.255.552 byte più piccolo di quello che sarebbe un'unità da 2 T o 2 TiB ed è la differenza minore dell'ampiezza di poco più di 185 G o GiB (Gibibytes), che è ciò che la maggior parte delle persone ironicamente effettivamente pensa più spesso quando dicono "Gigabyte" anche se erroneamente.

Questa è una delle strane parti meno conosciute del FYI nel mondo dei computer che è una buona nota a piè di pagina da conoscere e spiega alcune delle strane discrepanze che molte persone oggi sono spesso inconsapevoli.

Molte persone stanno pensando e dicendo il nome "Kilobyte" (1000) quando in realtà stanno pensando all'unità "Kibibyte" (1024) e diventa più confuso quando le persone scrivono la scorciatoia in modo intercambiabile ma questo non è corretto, il moderno Kilobyte dovrebbe essere contrassegnato con "KB" e non dovrebbe essere "K" o "KiB" in nessun punto della documentazione o del programma che, come appena spiegato, si riferirebbe effettivamente a Kibibyte (1024).

Le designazioni abbreviate K (1024) e KB (1000) non sono più la stessa cosa e, nel caso di Kibibyte, è possibile utilizzare K o KiB ma non KB.

Questo è il tuo cervello, questo è il tuo cervello su Kibibytes - fritto ancora?

LOL


"Prima del 1998, un Kilobyte significava 1024 byte ed era designato come K o KB." Questo è un mito. Ad esempio, lo Shugart SA 400 possedeva 109.375 byte e fu commercializzato come "109,4 Kbyte" nel 1976 . Il CDC 9746 conteneva 60.000.000 di byte e fu commercializzato come "60 M byte" nel 1974.
Endolith,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.