Homepage » hogyan kell » Miért van nagy különbség a méret és a méret között a lemezen?

    Miért van nagy különbség a méret és a méret között a lemezen?

    A legtöbb esetben a "Méret" és a "Méret a lemezen" értékek nagyon közel állnak az egyezéshez, ha egy mappát vagy a fájl méretét ellenőrzik, de mi van, ha a kettő között hatalmas eltérés van? A mai SuperUser Q&A hozzászólás a zavaró problémára adott választ vizsgálja.

    A mai Kérdések és válaszok munkamenet a Jóvagyon - a Stack Exchange alosztályának, a közösség által vezérelt Q&A webhelyek csoportjának köszönhetően..

    A kérdés

    A SuperUser olvasó thelastblack azt akarja tudni, hogy miért van ilyen hatalmas különbség a "Méret" és a "Méret lemezen" között a telefon SD-kártyáján lévő mappák között:

    Amint az alábbiakban látható, a mappa „Mérete” és a „Méret lemezen” mezők között nagy különbség van. Miért van az, hogy?

    Tudom, hogy a Windows rendszeren lévő elosztási egységek miatt a "Méret lemezen" egy kicsit több, mint "Méret", de miért van ilyen nagy különbség? Lehet, hogy a nagy számú fájl miatt van?

    BTW, ez a mappa az Android telefonom SD kártyáján található. Ezen belül a térképek alkalmazás tárolja a gyorsítótárazott térképeket, és az alkalmazás térképeit a Google Térképből kapja meg.

    A képernyőképet nézve a „Méret” és a „Méret a lemezen” határozottan ellentétes, így mi történt itt?

    A válasz

    A SuperUser közreműködő, Bobnak a választ kapja:

    Feltételezem, hogy itt használja a FAT / FAT32 fájlrendszert, mivel ezt említi egy SD kártya. Az NTFS és az exFAT hasonlóan viselkedik az allokációs egységek tekintetében. Más fájlrendszerek eltérőek lehetnek, de a Windows egyébként nem támogatottak.

    Ha sok kis fájlja van, ez minden bizonnyal lehetséges. Ezt fontold meg:

    • 50 000 fájl
    • 32 KB-os fürtméret (allokációs egységek), ami a FAT32 maximális értéke

    Oké, most a minimális az elfogadott hely 50 000 * 32 000 = 1,6 GB (SI előtagok használata, nem pedig bináris, a matematika egyszerűsítése érdekében). A lemezen lévő minden fájl mindig az elosztási egység méretének többszöröse - és itt feltételezzük, hogy minden fájl valóban elég kicsi ahhoz, hogy egy egységbe illeszkedjen, néhány (elvesztett) hely maradjon.

    Ha mindegyik fájl átlagosan 2 KB, akkor körülbelül 100 MB-ot kaphat, de 15x-et is pazarol (30 KB / fájl) átlagosan az elosztási egység mérete miatt.

    Mélységű magyarázat

    Miért történik ez? Nos, a FAT32 fájlrendszernek nyomon kell követnie az egyes fájlok tárolásának helyét. Ha minden egyes bájt listát tartana, a táblázat (mint egy címjegyzék) ugyanolyan sebességgel nőne, mint az adatok - és sok helyet pazarolnak. Tehát mit használnak a „kiosztási egységek” használatára, más néven a „klaszter méret” néven. A kötet ezekre a kiosztási egységekre oszlik, és a fájlrendszert illetően nem osztható fel - ezek a legkisebb blokkok, amiket meg tudnak oldani. Olyan, mint egy házszámod, de a postásod nem érdekli, hogy hány hálószoba van benne, vagy ott él.

    Szóval mi történik, ha van egy nagyon kicsi fájlod? Nos, a fájlrendszer nem érdekli, hogy a fájl 0 KB, 2 KB, vagy akár 15 KB, a legkisebb helyet adja - a fenti példában ez 32 KB. A fájl csak kis mennyiségben használja ezt a helyet, és a többit alapvetően elvesztik, de még mindig a fájlhoz tartozik - olyan, mint egy olyan hálószobában, amelyet szabadon hagy..

    Miért vannak különböző elosztási egységméretek? Nos, ez kompromisszum lesz a nagyobb asztalok (címjegyzék, például azt mondja, hogy Johnnak egy háza van a 123 Fake Street, 124 Fake Street, 666 Sátán Lane stb.) Között, vagy minden egyes egység (ház) elvesztegetett helye . Ha nagyobb fájlja van, akkor érdemes nagyobb elosztóegységeket használni - mert egy fájl nem kap új egységet (házat), amíg az összes többi nincs kitöltve. Ha sok apró fájlod van, akkor igen nagy táblázatot (címjegyzéket) fogsz kapni, így akár kis egységek is (házak).

    A nagy elosztási egységek általában sok helyet pazarolnak, ha sok kis fájlja van. Általában nincs jó ok arra, hogy az általános használatnál 4 KB-nál magasabb legyen.

    szilánkosodás?

    A töredezettség tekintetében a töredezettségnek nem szabad ilyen helyet pazarolni. A nagy fájlok töredezettek lehetnek, azaz szétválaszthatók több allokációs egységre, de minden egységet a következő indítás előtt kell kitölteni. A töredezettségmentesítés egy kis helyet takaríthat meg az elosztási táblákban, de ez nem az Ön konkrét problémája.

    Lehetséges megoldások

    Amint azt a gladiator2345 javasolta, az egyetlen valódi lehetőséged ebben a pillanatban az, hogy élj vele vagy formázzuk kisebb elosztóegységekkel.

    Lehet, hogy kártyáját FAT16 formátumban formázza, amely kisebb méretű asztali mérettel rendelkezik, és ennélfogva sokkal nagyobb elosztási egységekre van szükség ahhoz, hogy nagyobb kötetet lehessen kezelni (2 GB felső határ 32 KB allokációs egységgel). Forrás Braiam jóvoltából. Ebben az esetben a FAT32-nek biztonságosan kell formáznia.


    Van valami, amit hozzá kell adni a magyarázathoz? Kikapcsolja a megjegyzéseket. Szeretne további válaszokat olvasni más tech-savvy Stack Exchange felhasználóktól? Nézze meg a teljes beszélgetés szálát itt.