Beste svaret
Til å begynne med er alle de andre svarene gode.
Jeg vil bare legge til det for disk leser og skriver den minste enheten er disksektoren. disksektorer er mest sannsynlig 4096 byte hver for harddisker. (de kan gjøres så små som 512 byte, men moderne systemer vil kaste altfor mye i den størrelsen) Så en enkelt fil hvis den er mindre enn 1 sektor vil fortsatt sekvestre hele sektoren og få de gjenværende byte skrevet null. De fleste diskpartisjonsskjemaer gjør at filer tar opp en hel sektor eller flere hele sektorer uansett hvor små de er.
Så 100 filer på mindre enn 1 kB tar ikke opp 100 kB, men 4 MB. Det er sykt. Men en enorm videofil på 2 GB vil ta 2 GB pluss en del av 4 kB og ha nuller som fyller ut den siste sektoren. Med mindre filen ikke kan legges på disken i påfølgende sektorer, kan den ta opp mye mer enn det på grunn av fragmentering.
Den blå delen av dette bildet er en geometrisk sektor og den røde er et spor. C er disksektoren (4096 byte). Tettheten av data er mer på innsiden fordi utsiden av platen spinner raskere enn enn de indre sektorene. Nå får dette bildet sektoren til å se enorm ut, men i virkeligheten kan en 2 TB HD ha ~ 4 milliarder disk sektorer.
Alt dette er for det meste automatisk, brukerne har ikke noe å si for hvordan disken gjør sine ting. Moderne operativsystemer har utviklet filsystemer som BSDs UFS2 og Linux nye Btrfs og Sun Microsystems ZFS for å gjenopprette ubrukt slapp plass i sektorer for bruk og til og med gjøre variabel blokkstørrelse.
Men for de fleste tar hver fil opp noen flere 4Kbytes og fyller den siste med nuller etter slutten av filen.
Så ja, det er to forskjellige systemer Giga og Giba, pluss at det er den fudge-faktoren som produsenter bruker til reklame og salg.
I internasjonalt E lektroteknisk C utelatelse (IEC, egentlig elektroteknisk … sheesh 1908 ringer og vil ha ordet tilbake ..) setter standarden for binær dataenheter.
Du vil fremdeles finne KB og MB og noen ganger til og med GB i gamle tekster. De betyr multipler på 1024. Men sjekk matematikken og se om 1000 eller 1024 gir mer mening.
Forresten, Windows lyver. Løgn, løgn, løgn omtrent størrelsen på filene og hvor mye tom disk som er igjen. Tro aldri på deres lager Explorer.exe-tall. Få et tredjeparts diskprogram med godt rykte for å gjøre størrelseskontroller og diskanalyse.
Svar
Strengt tatt 1TB = 1000 GB nøyaktig. I det minste siden slutten av 90-tallet da ISO-komiteen standardiserte metriske prefiks som ble brukt i datamaskiner. Det du ser, er imidlertid den inkonsekvente (og uriktige) tendensen til mange systemer på datamaskiner som bruker TB, til å faktisk bety TiB og GB til faktisk å bety GiB.
Hva er forskjellen? Og hvorfor er det til og med der?
Forskjellen er et prefiks Gi / Ti / Mi / ki / etc. betyr at det fungerer i krefter på 2. F.eks. 1 ki = 1024, 1Mi = 1024 ki = 1024 x 1024 = 1048576. Fortsatt videre til Gi, Ti, Pi, etc. i samme mønster. Mens ak er nøyaktig 1000 og 1 M = 1000k = 1000000, etc. i et lignende mønster.
Årsaken til at datamaskiner bruker disse alternativene for kraft-av-to, er at datamaskiner gjør matte ved hjelp av base-2 (binær) i stedet for vår menneskelige måte å telle i base-10 (desimal). Og i binær 1000 er faktisk ikke et «rundt» tall. Det etterlater rester ved deling og behov bærer når man multipliserer. Betydning hvis datamaskinen utførte alle beregningene for minne / disktilgang på disse, ville det trengt å gjøre mer kompliserte matematikker og dermed kjøre saktere.
Hvis den holdt seg til skinne deler i teller i kraft av to, multipliser og del blir en enkel «flytting av siffer» -operasjonen. I likhet med å multiplisere og dele med 10 er veldig enkelt å gjøre i desimal, multiplisere og dele med 2 (eller hvilken som helst styrke på to) er like enkelt i binær – bare legg til flere 0 til slutten eller fjern noen sifre fra slutten. / p>
Du ser vanligvis dette problemet på diskstasjoner. Produsenten bruker den “riktige” måten å oppgi disken på (si) 1 GB. Og den inneholder faktisk 1000 000 000 byte. Men operativsystemet viser de som GiB, det forventer 1GiB = 1024 MiB = 1024 x 1024 kiB = 1024 x 1024 x 1024 byte = 1073 741824 byte. Men siden disken inneholder mindre enn dette, må du jobbe omvendt:
1 000 000 000 byte / 1024 = 976562,5 kiB = 953,674… MiB = 0,931… GiB.
Samme boks gjøres for å TB / TiB som i de fleste disker i disse dager. Det er bare en ekstra 1024 faktor å multiplisere eller dele med.