8Sep

Kako lahko velikost datoteke ni nič?

Vsi mi včasih naletimo na "situacijo" na naših računalnikih, ki nas popolnoma oskrbijo, kot je datoteka, ki ima velikost nič, ampak kako je to mogoče? Današnji SuperUser Q & Objava ima odgovore na zmedeno vprašanje bralca.

Današnje vprašanje &S sejo odgovora prihaja uporaba SuperUserja, ki je razdeljena na Stack Exchange, skupinsko spletno stran Q & A.

Vprašalnik

bralnik SuperUserja Eugene S želi vedeti, kako je velikost datoteke lahko enaka nič:

To je nekaj, na kar sem naletel in nisem mogel razmišljati o ustrezni razlagi.Če v računalniku ustvarim prazno datoteko *. txt in nato pogledam njegovo velikost, se prikaže velikost nič.Kako je to mogoče? Mislim tudi, če je datoteka samo prazna, mora imeti še vedno določeno velikost( tudi če je samo shraniti svoje ime).Kako je to mogoče razložiti?

Kako je mogoče, da ima datoteka velikost nič?

Odzivniki

SuperUser David Schwartz in Cort Ammon imajo odgovor za nas. Najprej, David Schwartz:

Možno je, ker res ni nobene datoteke. Obstaja samo imenik z imenom in lastnikom. Imenik vnosa je logično ločen od datoteke. Na primer, ista datoteka ima lahko več kot eno ime v več kot enem imeniku.

Na žalost se izrazna datoteka ne uporablja vedno za povsem isto stvar. Toda logika velikosti datoteke prihaja iz modela, kjer imenik v imeniku pripiše datoteko v imenik, nato pa se v imenik shranijo imena datotek in z njimi povezani meta podatki.

Sledi odgovor Cort Ammon:

Semantični pomen velikosti datoteke se razlikuje od tistega, ki ga uporabljate.

Obstaja veliko velikosti datotek, ki so smiselne. Najpogostejši in tisti, ki ga vidite tukaj, je število bajtov v datoteki.Če je datoteka prazna besedilna datoteka, lahko dejansko vsebuje nič bajtov. To število je pomembno za programerje, ker pogosto potrebujemo odpiranje datoteke, branje vseh podatkov in zapiranje. Moramo vedeti, koliko bajtov podatkov bo v datoteki, da bomo lahko načrtovali naprej.

Drug pomen izhaja iz načina, kako večina datotečnih sistemov shrani podatke. Večina datotečnih sistemov shrani podatke v blokih. Na primer, datotečni sistem lahko shrani podatke v 64 kB blokih, kar pomeni, da nikoli ne bo dodelilo ničesar, kar ni celo večkratnik od 64 kB.To zveni neučinkovito, vendar pa lahko knjigovodstvo precej preprostejše in pogosto preprostejše pomeni hitreje.

Tretji pomen, s katerim se vlečete, bi bil dejansko število bitov, potrebnih na trdem disku, da bi opisali prisotnost datoteke. To vključuje informacije, ki so običajno shranjene ločeno od datoteke. Na primer, v Linuxu je koncept imena datoteke shranjen v inode za imenik, ki vsebuje datoteko.[ Na podlagi vnosa iz drugih pripomb je to( tehnično) shranjeno v podatkovnem imeniku. Ko sem to napisal, sem razmišljal o primeru majhnega imenika. Podatki, manjši od 156 bajtov, se lahko shranijo neposredno v inode. ] To ni pogosto uporabljen pomen, ker je grobo težko ugotoviti, ne da bi vedel izjemno globoko notranjo delovanje vašega datotečnega sistema( na primer obračunavanje prostora, potrebnega za shranjevanje vseh dovoljenj v datoteki).Če pa imate trdega diska od 1.000.000 bajtov in želite izvedeti, kako velika se datoteka lahko prilega tem trdem disku, bo to zelo pomemben pomen!

Ali želite dodati nekaj pojasnila? Zvok v komentarjih.Želite prebrati več odgovorov od drugih uporabniških članov stack Exchange? Oglejte si celotno temo za razpravo tukaj.