hvad fanden er en Kibibyte?

ud over at være noget penurious har vores grundlægger Steve en velkendt forkærlighed for at være pedantisk. Hvis han brister ind i udviklingsområdet og begynder at grille folk, bliver selv erfarne ingeniører ofte forvirret, når de først stillede spørgsmålet: “Kilobytes eller kibibytes?”.

kibibytes

selvom du ikke har hørt udtrykket, er du sandsynligvis i det mindste bekendt med konceptet. En “kibibyte” er lig med 1024 eller 2^10 bytes. Enkel nok, men er ikke en “kilobyte” også 1024 bytes? Godt, det er, nogle gange. Som defineret af det internationale enhedssystem henviser præfikset “kilo” til 1000 eller 10^3. De fleste lagerproducenter måler og mærker kapacitet i base 10 (1 kilobyte = 1000 bytes; 1 megabyte = 1000 kilobytes; 1 gigabyte = 1000 megabyte; 1 terabyte = 1000 gigabyte). RAM-leverandører og de fleste operativsystemer bruger dog base 2 (1 kilobyte = 1024 bytes; 1 megabyte = 1024 kilobyte; 1 gigabyte = 1024 megabyte; 1 terabyte = 1024 gigabyte). (En bemærkelsesværdig undtagelse fra dette er macOS, som har brugt base 10 siden OS 10.6.) Så for at vide, hvad der præcist menes med “gigabyte”, skal du kende den sammenhæng, hvori ordet bruges. Hvis du taler om rå harddiskkapacitet, er en gigabyte 1000000000 bytes. Hvis du taler om filsystemet oven på harddisken, betyder gigabyte 1073741824 bytes.

forvirret endnu? Dette er grunden til, at “kibibyte” er vigtig; “kilo” (og “giga” osv.) er tvetydigt, når det bruges til at betyde både 1000 og 1024, så et nyt sæt binære præfikser blev oprettet af IEC i 1998 for at begrænse forvirringen. Andre præfikser inkluderer “mebi”, “gibi”, “tebi” og “pebi” for at erstatte henholdsvis “mega”, “giga”, “tera” og “peta”. (Der er flere præfikser til større mængder, men hvis du virkelig tror, du har brug for dem, kan du selv slå dem op.)

så det er alt fint og dandy, men er det virkelig så stort af en aftale? Betyder en forskel på 24 bytes pr. kilobyte virkelig noget? Lad os overveje et drev, der annonceres som 2 terabyte (2 gange 10^12 bytes) kapacitet. Jeg har en formateret som et VMFS-volumen i mit VM-laboratorium. Efter formatering rapporterer VM 2000112582656 bytes kapacitet (nysgerrig mere end 2 terabyte, men jeg vil ikke klage over at få flere bytes end annonceret). Lad os se, hvordan dette adskiller sig, når det vises af LogicMonitor som terabyte (som udtrykket bruges af lagringsleverandører) og tebibytes:

2000112582656 / 1000 / 1000 / 1000 / 1000 = 2.00 terabyte

graf

2000112582656 / 1024 / 1024 / 1024 / 1024 = 1.82 tebibytes
 skærmbillede-2017-01-20-at-10-57-44-am

den kloge læser kan bemærke, at der faktisk ikke er nogen forskel mellem 2.000 terabyte og 1.819 tebibytes, og de ville være korrekte. Medmindre du bruger en Mac, rapporterer dit operativsystem og filhåndtering sandsynligvis kapacitet og Filstørrelse i tebibytes. Notationen vil ikke nødvendigvis gøre det indlysende. For eksempel ville DF-kommandoen på linuk rapportere 1,8 T, mens vinduer Stifinder ville rapportere 1,82 TB. Vinduer bruger JEDEC-standarden i stedet for IEC, så mens værdien er lig med tebibytes, vil den stadig blive mærket som “terabyte”. JEDEC-standarden betragter 1 kilobyte som lig med 1024 bytes. I dette tilfælde er der en ~180 gigabyte eller gibibyte uoverensstemmelse. Hvis du tilslutter dit skinnende nye 2 terabyte-drev, kan du blive skuffet, når dit operativsystem rapporterer det som kun 1,8 terabyte. Samme ord, men forskellig betydning i de forskellige sammenhænge.

Hvad har alt dette at gøre med LogicMonitor? Nå, hvis du definerer en graf i LogicMonitor, som standard vil det skalere dine grafede værdier ved hjælp af base 10 kilobyte. Hvis du graf 2000112582656 bytes, din graf i LogicMonitor vil vise 2.00 T, når du mouseover linjen. Dette er dog ikke ideelt, da du vil have dit overvågningsværktøj til at vise det på samme måde som dit operativsystem gør ved hjælp af base 2 kibibytes (1,82 T). Heldigt for dig (og os), det er en mulighed! Hver grafdefinition i LogicMonitor har mulighed for at skalere efter enheder på 1024; alt hvad du skal gøre er at markere afkrydsningsfeltet og sørge for at konvertere dine værdier til bytes. LogicMonitor vil håndtere resten.

et sidste problem kan være generer dig; hvorfor LogicMonitor standard til skalering af enheder af 1000 hvis de fleste operativsystemer skala lagerenheder af 1024? Svaret er, at på trods af hvad din lageradministrator kan fortælle dig, er overvågning ikke kun opbevaring og serverovervågning. Sekund, HTTP-anmodninger pr. sekund, latenstid, dybden af KVM – køer, antallet af objekter i en cache-skalaer ved hjælp af base 10. Det er kun for filsystemer og hukommelse, at du skal kontrollere indstillingen “scale by 1024”.

hvis alle operativsystemer vedtog rapporteringsstandarden i tebibytes og gibibytes, ville det fjerne forvirringen. Men indtil da skal du huske, at præfikset “giga” betyder en ting, når du taler om hukommelses-og filsystemer, og en anden ting, når du taler om alt andet.

tror du, at du fik et underligt blik fra dine sysadmin-kolleger, når du nævner “kibibyte”? Prøv at spørge dit Netværksteam om”gibibits”.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.