8Sep

Jak může být velikost souboru nula?

click fraud protection

Všichni občas narazíme na "situaci" v našich počítačích, která nás zanechává zcela zmateně, jako je soubor, který má velikost nula, ale jak je to možné?Dnešní příspěvek SuperUser Q & A má odpovědi na zmatenou otázku čtenáře.

dnešní otázka &Odpověď na zasedání se k nám dostala s laskavým svolením SuperUser - podřízenou výměnou Stack Exchange, skupině webů Q & A založených na komunitě.

Otázka Otázka

SuperUser čtečka Eugene S chce vědět, jak velikost souboru může být nula:

To je něco, co jsem narazil do a nemohl přemýšlet o správném vysvětlení.Pokud vytvořím prázdný soubor *. txt v počítači a pak se podívám na jeho velikost, zobrazí se velikost nuly. Jak je to možné?Myslím tím, že i když je samotný soubor prázdný, musí mít ještě nějakou velikost( dokonce i když má jen uložit vlastní jméno).Jak lze to vysvětlit?

Jak je možné, aby soubor měl velikost nula?

Odpovědí odpovědí David Schwartz a Cort Ammon odpovídají za odpověď

SuperUser. První, David Schwartz:

instagram viewer

Je to možné, protože ve skutečnosti neexistuje žádný soubor. Existuje pouze položka adresáře s jménem a vlastníkem. Položka adresáře je logicky odlišná od souboru. Například stejný soubor může mít více než jeden název ve více než jednom adresáři.

Bohužel soubor pojmů není vždy používán tím, že znamená přesně totéž.Logika velikosti souboru však pochází z modelu, kde položka adresáře přiřadí soubor do adresáře, jsou v adresáři uloženy názvy souborů a související metadata.

Následuje odpověď od Cort Ammon:

Sémantický význam velikosti souboru se liší od významu, který používáte.

Existuje mnoho souborů, které mají smysl. Nejběžnější a ten, který zde vidíte, je počet bajtů v souboru. Pokud je soubor prázdný textový soubor, může skutečně obsahovat nulové bajty. Toto číslo je důležité pro programátory, protože často potřebujeme otevřít soubor, přečíst všechna data a zavřít jej. Musíme vědět, kolik bajtů dat bude v souboru, abychom mohli naplánovat.

Další význam vyplývá ze způsobu, jakým většina souborových systémů ukládá data. Většina systémů souborů ukládá data do bloků.Souborový systém může například ukládat data na blocích 64 kB, což znamená, že nikdy nepřidělí nic, který není sudý násobek 64 kB.To zní neúčinně, ale může to udělat účetnictví mnohem jednodušší a často jednodušší znamená rychlejší.

Třetí význam, na který se táhnete, by byl skutečný počet bitů požadovaných na pevném disku, aby popsal přítomnost souboru. To zahrnuje informace obvykle uložené odděleně od souboru. Například v Linuxu je koncept názvu souboru uložen v inode pro adresář obsahující soubor.[ Na základě údajů z jiných připomínek je toto( technicky) uloženo v datech adresáře. Když jsem to napsal, přemýšlel jsem o malém adresáři.Údaje menší než 156 bytů mohou být uloženy přímo v inode. ] Toto není běžně používaný význam, protože je obtížně určitelný, aniž byste věděli, že je extrémně hluboké vnitřní uspořádání vašeho souborového systému( například účetní prostor potřebný k ukládání všech oprávnění k souboru).Pokud však máte pevný disk o velikosti 1 000 000 bajtů a chcete vědět, jak velký soubor se může vejít na tento pevný disk, bude to pro vás velmi důležitý význam!

Musíte něco přidat k vysvětlení?Zní to v komentářích. Chcete se dozvědět více odpovědí od ostatních uživatelů technologie Stack Exchange? Podívejte se na celý diskusní příspěvek zde.