Hlavní navigace

Názor ke zprávičce Microsoft vytvořil stabilizátor zrychlených videí od Sten - Ad za každý soubor strčí malé prázdné místo...

  • Aktualita je stará, nové názory již nelze přidávat.
  • 15. 8. 2014 13:13

    Sten (neregistrovaný)

    Ad za každý soubor strčí malé prázdné místo a nový soubor alokuje hned za tím - to je samozřejmě nesmysl. NTFS provádí při zápisu souboru pre-alokaci mnohonásobku velikosti požadovaného místa (dvoj- až šestnáctinásobku, tak to alespoň bylo ve WinXP).

    Ano, prealokuje dvojnásobek délky prvního zápisu, což je typicky jedna alokační jednotka, a ty následné prealokace už nepůjdou udělat bez fragmentace, pokud mezitím jiná aplikace vytvoří jiný soubor, protože NTFS jej „chytře“ šoupne hned za ten první soubor. Navíc tu prealokaci provádí tak, že může být v až 128 fragmentech. WTF?

    Btw. proč MS vydává dokumenty jako EXE? Pak se ani nelze divit, že uživatelé Windows ochotně spouštějí podobné „dokumenty“ z e-mailů.

    Rovnoměrně rozkládat soubory po disku vede k tomu, že se velmi rychle zbavíte všech opravdu velkých kusů volného místa, takže větší soubory pak skončí jako řezanka.

    Myslím, že se shodneme, že mít 20 MiB soubor v 10 fragmentech je z hlediska výkonu problém, ale mít 20 GiB soubor v 10 fragmentech je prkotina, těch deset seeků už vás moc zdržovat nebude.

    Navíc pokud zkusíte číst soubory zapsané cca ve stejném čase (tedy nejspíš používané dohromady), bude disk divoce seekovat.

    To samozřejmě lze optimalizovat jen pro takovou sadu souborů (a pro jednu aplikaci), jak to ostatně alokátor ext* dělá.

    MFT je sice jeden soubor, ale není nezbytně souvislý - i když se o to NTFS snaží. Podobně totiž pokud máte metadata roztroušená po celém disku, tak navigace mezi adresáři povede ke spoustě seekování. A to si uvědomte, že díky skvělému unixovému zvyku ukládat konfiguraci do souborů místo do DB máte například konfiguraci LibreOffice 4 v 96 adresářích(!). Fakt je chcete mít po disku roztroušené náhodně? To se pak nedivte, že vám čtení té konfigurace trvá daleko déle než na Windows (nemluvě o srovnání s Registry).

    V ext4 se žádná spousta seekování nekoná, metadata jsou buď v tabulce inodů nebo přímo v adresáři. Adresáře jsou pak indexované, takže v nich lze velmi rychle vyhledávat, a protože LibreOffice vytváří ty adresáře najednou, tak budou blízko u sebe.

    Napsat dobrý FS alokátor je někde mezi vědou a černou magií, a každá zvolená strategie je kompromis. Například to rovnoměrné rozkládání souborů po disku vám dá o něco nižší fragmentaci při menším zaplnění FS, ale o to větší fragmentaci pokud FS zaplníte víc. MS k tomu přistupuje odpovědně, sbírá v rámci různých data o tom jak zákazníci FS opravdu používají, a na základě toho optimalizuje.

    Zajímavé, MS k tomu přistupuje odpověděně a NTFS fragmentuje jak o život, zatímco vývojáři open source si to splácají doma a funguje jim to mnohem lépe.

    Ad tenhle textový správce souborů - a nebyla náhodou řeč o utilitách dodávaných s OS? Srovnávejte srovnatelné: utilitu dodanou s OS proti jiné utilitě dodané s OS, a GUI proti GUI.

    V UNIXech není problém používat v GUI konzolové nástroje i s myší, copy&paste či drag&drop úplně stejně jako jiné GUI aplikace, takže nevidím důvod je oddělovat. Že to ve Windows neumíte, neznamená, že to neumí nikdo jiný.