Memóriakártyák töredezettségmentesítése
- botond
- Adminisztrátor
- Hozzászólások: 6811
- Csatlakozott: 2009-01-06 kedd 11:09:08
- Készüléktípus: Huawei P20 Pro
- Nem: Férfi
- Tartózkodási hely: Veszprém
- Has thanked: 25 times
- Been thanked: 58 times
- Kapcsolat:
Re: Memóriakártyák töredezettségmentesítése
SaGa59:
Amiket most legutóbb leírtál, az való igaz, így van.
Még én is emléxem az ISA BUS-os világra, meg a párhuzamos port programozásra(LED-es futófény, stb) Szép idők voltak azok...
De visszakanyarodva az eredeti témára, sztem a gyakorlati tapasztalatok, és eredmények száma nyer az elméletekkel szemben.
Amiket most legutóbb leírtál, az való igaz, így van.
Még én is emléxem az ISA BUS-os világra, meg a párhuzamos port programozásra(LED-es futófény, stb) Szép idők voltak azok...
De visszakanyarodva az eredeti témára, sztem a gyakorlati tapasztalatok, és eredmények száma nyer az elméletekkel szemben.
- Macika
- 6. szint
- Hozzászólások: 8928
- Csatlakozott: 2009-05-01 pén. 11:47:34
- Készüléktípus: Huawei P30 Pro 8 256
- Nem: Férfi
- Tartózkodási hely: Budapest
- Has thanked: 321 times
- Been thanked: 605 times
Re: Memóriakártyák töredezettségmentesítése
Az a baj, hogy az elméletek objektív, FIZIKAI - hogy úgy mondjam - törvényekkel alátámaszthatóak.botond írta:De visszakanyarodva az eredeti témára, sztem a gyakorlati tapasztalatok, és eredmények száma nyer az elméletekkel szemben.
A gyakorlati tapasztalatok pedig 90%-ban szubjektivitáson alapulnak...
-
- Újonc
- Hozzászólások: 43
- Csatlakozott: 2009-06-19 pén. 20:54:16
- Készüléktípus: 5800
- Has thanked: 0
- Been thanked: 0
Re: Memóriakártyák töredezettségmentesítése
Igen. Ott a kulcsmondat az egyik szövegem végén: mindenre és mindennek az ellenkezőjére is lehet példát találni.Macika írta:Az a baj, hogy az elméletek objektív, FIZIKAI - hogy úgy mondjam - törvényekkel alátámaszthatóak.botond írta:De visszakanyarodva az eredeti témára, sztem a gyakorlati tapasztalatok, és eredmények száma nyer az elméletekkel szemben.
A gyakorlati tapasztalatok pedig 90%-ban szubjektivitáson alapulnak...
Mindenesetre ez a kérdés igen könnyen eldönthető.
Kell valaki, akinek lassan bootol a telefonja. Mérje meg, stopperrel, mennyi a PIN-kód bekéréséig eltelt idő a bekapcsoló gomb megnyomásától számítva.
Ha megvan, vegye ki a zsugát, és tegye be egy kártyaolvasóba és dugja egy pc-be. Írja föl az adatait (méret, fájlok darabszáma, elfoglalt byte-ok pontos száma.
Defragolja.
Ne töröljön semmit, csak defragoljon. Ha esetleg a defrag ellenőrző része hisztizik a hibák miatt, kérjen egy logot tőle, hogy mit is módosított.
Ismét kérje le az adatokat és hasonlítsa össze. A fájlok számában, a szabad és elfoglalt terület méretében nem szabad változásnak lennie, ha van, akkor valami törlődött vagy hozzáadódott a folyamat során és ez félrevezető lehet...
Tegye vissza, és mérje le a boot időt ismét, stopperrel.
Ha van különbség úgy, hogy a kártyán nem volt semmilyen hiba, csak a defragolást kellett elvégezni, akkor azoknak van igaza, akik szerint segít. Ha a defragoló program elvégezte még egy halom bennfelejtett fájlmaradék eltüntetését is, vagy kijavított pár "szektorhibát", akkor nem nekik van igazuk...
Ennyi...
--
SaGa
- plunk
- Kiemelt 4. szint
- Hozzászólások: 1345
- Csatlakozott: 2009-01-12 hétf. 20:55:32
- Készüléktípus: Sony Z3c [Lollipop]
- Tartózkodási hely: Tűzfal megett
- Has thanked: 0
- Been thanked: 2 times
Re: Memóriakártyák töredezettségmentesítése
Érdekes téma. Egyből ki is próbáltam a töredezettségmentesítést, de idáig nem vettem észre gyorsabb bootolást. Persze kb 2 hetente szoktam teljesen kikapcsolni és hagyok neki jópár percet, hogy kérdezze a PIN-t. A töredezettségmentesítés hiba nélkül lezajlott a 2 gigás kártyán. Ha előbb figyeltem volna akkor szívesen lemértem volna a változásokat.
Szignózási segédlet
Phoenix Internal Service Software 2009.17.0.38220
Otthon sose frissíts a jelenleginél kisebb szoftververzióra!
Phoenix Internal Service Software 2009.17.0.38220
Otthon sose frissíts a jelenleginél kisebb szoftververzióra!
- MrAngelo
- Kiemelt 5. szint
- Hozzászólások: 2972
- Csatlakozott: 2009-01-13 kedd 10:26:07
- Készüléktípus: LG G4 + Sony Xperia Tab Z
- Nem: Férfi
- Tartózkodási hely: Veszprém
- Has thanked: 52 times
- Been thanked: 86 times
Re: Memóriakártyák töredezettségmentesítése
Ez így ebben a formában nem igaz!SaGa59 írta:Ha van különbség úgy, hogy a kártyán nem volt semmilyen hiba, csak a defragolást kellett elvégezni, akkor azoknak van igaza, akik szerint segít. Ha a defragoló program elvégezte még egy halom bennfelejtett fájlmaradék eltüntetését is, vagy kijavított pár "szektorhibát", akkor nem nekik van igazuk...
Én például nem állítottam azt, hogy nem töröl semmit, csak azt, hogy segít. Ha töröl, ha nem. És eddig nekem csak olyan dolgokat törölhetett amik szügségtelenek tehát minden program megy rendesen a művelet után is és nem hiányoltam fileokat.
- Doky586
- 3. szint
- Hozzászólások: 581
- Csatlakozott: 2009-01-15 csüt. 19:58:11
- Has thanked: 19 times
- Been thanked: 47 times
Re: Memóriakártyák töredezettségmentesítése
Sziasztok !
Tudtommal a memóriakártyák nem használnak (ma még) adatszétszórást (amit SaGa59 írt), azaz ha pl. egy 10GB-os flashkártya 1000x írható akkor egy 1GB-os filet felírni majd letörölni majd megintfelírni... stb azt 1000x tehetünk meg. Ha ismernék ezen adatszétszórást akkor ezt 10˙0000 szer tehetnénk meg. Inkább a gyártók a flash újraírási ciklusok számát növelhették az elmúlt évek alatt.
SSD-k esetén a jelenleg használt eszközök sem ismerik ezen szétszórt módot, a SanDisk is csak az idén jelentette be All Bit Line néven amit majd az ezután megjelenő eszközeibe fog beépíteni.. Ezen SSD-k belső processzora gyorsabb órajelet használna mint a csatolófelület fizikai sebessége, így a címzésből se következne lassulás, és gondolom az oprendszer felé is ezen SSD-ken mindig minden úgy lenne riportolva mintha minden fregmentálatlan volna, így nyilván defremnentálni sem lehet majd őket..
Tudtommal a memóriakártyák nem használnak (ma még) adatszétszórást (amit SaGa59 írt), azaz ha pl. egy 10GB-os flashkártya 1000x írható akkor egy 1GB-os filet felírni majd letörölni majd megintfelírni... stb azt 1000x tehetünk meg. Ha ismernék ezen adatszétszórást akkor ezt 10˙0000 szer tehetnénk meg. Inkább a gyártók a flash újraírási ciklusok számát növelhették az elmúlt évek alatt.
SSD-k esetén a jelenleg használt eszközök sem ismerik ezen szétszórt módot, a SanDisk is csak az idén jelentette be All Bit Line néven amit majd az ezután megjelenő eszközeibe fog beépíteni.. Ezen SSD-k belső processzora gyorsabb órajelet használna mint a csatolófelület fizikai sebessége, így a címzésből se következne lassulás, és gondolom az oprendszer felé is ezen SSD-ken mindig minden úgy lenne riportolva mintha minden fregmentálatlan volna, így nyilván defremnentálni sem lehet majd őket..
- szabi113
- 2. szint
- Hozzászólások: 446
- Csatlakozott: 2009-01-15 csüt. 02:02:46
- Készüléktípus: Xperia Z2 + iPod Touch 2G
- Has thanked: 89 times
- Been thanked: 16 times
- Kapcsolat:
Re: Memóriakártyák töredezettségmentesítése
Na, szép kis vitát robbantottam ki
Ez már nekem magas amit itt írkáltok, de ez az én hibám. Aztán csak békésen!
Ez már nekem magas amit itt írkáltok, de ez az én hibám. Aztán csak békésen!
2002 óta (7650)Symbian fanatikus, de sajna lemaradtunk, így: Xperia Z2 (5.1.1), + 128GB µSD
- MrAngelo
- Kiemelt 5. szint
- Hozzászólások: 2972
- Csatlakozott: 2009-01-13 kedd 10:26:07
- Készüléktípus: LG G4 + Sony Xperia Tab Z
- Nem: Férfi
- Tartózkodási hely: Veszprém
- Has thanked: 52 times
- Been thanked: 86 times
- botond
- Adminisztrátor
- Hozzászólások: 6811
- Csatlakozott: 2009-01-06 kedd 11:09:08
- Készüléktípus: Huawei P20 Pro
- Nem: Férfi
- Tartózkodási hely: Veszprém
- Has thanked: 25 times
- Been thanked: 58 times
- Kapcsolat:
Re: Memóriakártyák töredezettségmentesítése
Bezony, nincs itt semmi gond, ez egy egészséges vita.
Érdekes kérdés merült fel ebben.
Még annyit hozzátennék, hogy a defragolás nálam eddíg sosem törölt szükséges adatokat, se vinyón, se memóriahordozókon.
Emlékszem a 3650-esemen, amikor ez egyáltalán eszembe jutott, vaciláltam rajta rendesen, nem mertem megcsinálni, mondom, mi van, ha elszállnak a cuccaim róla, mondom mégse vinyó, stb.
Aztán mély levegő, és elindítottam. Akkor még win98-am volt, és abban a töredezettségmentesítő kijelzése látványosabb volt, mert ugyen nem csak a "vonalkód" volt, mint az XP-ben, hanem egy jó hosszú listázható box, sok kis négyzettel, tehát gyakorlatilag jobban látható volt maga a folyamat, hogy hol tart.
Aztán amikor megcsináltam, mondom magamban, na bumm, legfeljebb újratelepítgetek mindent. De szépen beindult, és ott, azon a telón látványos javulási eredménnyel.
A mostani telóknál már jóval kissebb jelentősége van, mert gyorsabbak, stb, így "emberi" időben talán nem is mérhető már a különbség.
De a régieknél, ott bőven észrevehető volt a különbség.
Érdekes kérdés merült fel ebben.
Még annyit hozzátennék, hogy a defragolás nálam eddíg sosem törölt szükséges adatokat, se vinyón, se memóriahordozókon.
Emlékszem a 3650-esemen, amikor ez egyáltalán eszembe jutott, vaciláltam rajta rendesen, nem mertem megcsinálni, mondom, mi van, ha elszállnak a cuccaim róla, mondom mégse vinyó, stb.
Aztán mély levegő, és elindítottam. Akkor még win98-am volt, és abban a töredezettségmentesítő kijelzése látványosabb volt, mert ugyen nem csak a "vonalkód" volt, mint az XP-ben, hanem egy jó hosszú listázható box, sok kis négyzettel, tehát gyakorlatilag jobban látható volt maga a folyamat, hogy hol tart.
Aztán amikor megcsináltam, mondom magamban, na bumm, legfeljebb újratelepítgetek mindent. De szépen beindult, és ott, azon a telón látványos javulási eredménnyel.
A mostani telóknál már jóval kissebb jelentősége van, mert gyorsabbak, stb, így "emberi" időben talán nem is mérhető már a különbség.
De a régieknél, ott bőven észrevehető volt a különbség.
-
- Újonc
- Hozzászólások: 43
- Csatlakozott: 2009-06-19 pén. 20:54:16
- Készüléktípus: 5800
- Has thanked: 0
- Been thanked: 0
Re: Memóriakártyák töredezettségmentesítése
Bocs, a hét végén más elfoglaltságom volt, de folytatnám a "TIT"-et, mert úgy látom még mindig rengeteg a félreértés...
1: a defrag során nem tünik/nem tűnhet el semmilyen értékes adat, azaz egyetlen sértetlen és egész fájl sem. Ettől még a defrag eljárás során, az első lépésben, amikor a chkdsk fut és végzi a "szemétgyüjtést" felszabadíthat egy csomó helyet, ahol a rosszul sikeredett (félig létrejött, ám lezáratlan, vagy nem teljesen törölt) fájlok maradékai laknak. Miután ezektől is megszabadult a diszk, valóban "gyorsulhat" a boot, de nem azért, mert rendezettek a fájlok, hanem azért, mert nem kell neki felesleges, hiányos adatokat turkálni, ellenőrizni...
2:
Valaki felvetette, hogy a rendszerszinten nézzük a kártyát, akkor lehetnek plusz órajelciklusok a rendezetlen állapotban, mert többet kell olvasni. Nos ez tévedés.
Igaz, a Wiki nem teljesen releváns, mert sok marhaság is megjelenik benne, de itt egy idézet:
"Defragmentation tools are used on hard disks to optimize the file system access speed. On an SD card, this is unnecessary, as any block can be accessed as fast as any other. Doing this will wear the card out slightly, as a limited number of writes can be made before failure."
A forrása: http://en.wikipedia.org/wiki/Secure_Digital_card
Nézzük a részleteket...
A RAM jellegű memóriák (bármilyenek) általában "táblázatos" formában léteznek. Nem bitenként, hanem bizonyos méretű "szavanként" rendeződnek. A tipikus, PC-ben használatos RAM.ok a processzorhoz igazodva 8-16-32-64-128 bites szerveződésűek. Spéci nagysebességű videokártyákban már van 512 bites szervezés is. Úgy kell felfogni, mint egy excel táblát, aminek az oszlopszáma annyi, amennyi a biteké, a sorok száma meg annyi, ahányra szükség van a teljes kapacitás eléréséhez.
Pl egy 1 MB, 16 bites RAM az 16 oszlop, 512 sor. Egy bit eléréshez először megcímezzük a megfelelő sort (RAS ciklus). Amikor ez megvan, a teljes sor tartalma átmásolódik egyetlen órajel alatt az "olvasási pufferbe", ami pont akkora, mint egy sor a RAM-ban, és az oszlop címzési ciklusban (CAS) kiválasztjuk a minket érdeklő bitet. A PC-kben párhuzamosan olvas be a proci vagy a DMA egy komplett sort, így gyakorlatilag minden bitet rátol a neki megfelelő adatbusz sinre... Ez a leegyszerűsített vázlat...
Nézzünk egy SD kártyát. A 8 GB-s SD kártya csak FAT32 módban tud dolgozni (ez egyéb flash jellegű RAM-ok másra is képesek, mert más a szervezésük, ott 512 byte-os a blokk, vagy még kisebb, de cserébe a kapaciás is kisebb. Általában.), nem véletlenül. Ahhoz, hogy ekkora tárkapacitása legyen és megfelelő tempóban dolgozzon, a belső szervezése 4 kb-os, azaz 16375 bites sorokból áll. Amikor az oprendszer fájlrendszer kezelője elkér egy clustert a kártyától, az egy ekkora blokkot tud kiadni magából. Teszi ezt "soros" módon, mert általában 1 db adatsin van. Ha USB olvasóval használjuk, nem is kell több, amikor benne van a telefonban, akkor 4-et használ párhuzamosan, azaz 4 bitenként jön ki az adat a kártyából.
A FAT32 legkisebb, egyben kezelt blokkja a cluster, jelen esetben 4 kB. Ez annyit jelent, hogy ha egy fájl 1 byte-os, akkor is 4 kB-nyi helyet foglal. A maradék 4kb-1byte méretű terület tartalma lényegtelen, de az is be kell olvasnia a rendszernek, mert ilyen a szervezése. Ha Novell szerver lenne, akkor képes volna a clusterekben fennmaradt üres helyet is kihasználni, némi teljesítménycsökkenés árán, de a telefonokban nem ilyen rendszer dolgozik. Meg az NV nem is FAT jellegű, így hagyjuk. A cluster, a 4 kB minden körülmények között egy fizikai blokkba kerül akkor is, amikor fragmentált egy diszk. A fájlok fragmentálódása annyit jelent, hogy ezek a 4 kB-os blokkok nem sorban, egymás után helyezkednek el, hanem egymástól távol, szétszórva, azaz a következő blokk beolvasásához újra kell pozicionálni az olvasófejet, ami időbe telik...
Mivel bármely sor kicímzése a rendszerben pontosan ugyanannyi időbe telik, mindegy, hogy a legelső vagy a "legbelső", bármely clustert pontosan ugyanannyi idő alatt képes kitolni magából a kártya. Tehát, ha a fájl fizikailag a 26-27-28-dik clustert foglalja, a beolvasása pont annyi időbe telik, mintha a 26-1234-8766 clusterebken lenne...
3: a random szétszórás lehet, hogy még nincs a boltokban (én úgy tudtam, hogy igen, de lehet, hogy rosszul), annyira nem bonyolult, ráadásul az téves, hogy egy ilyen módon kezelt kártya tartalma a defrag számára mindig "egyben" látszik. Mivel a defrag nem "látja " a tényleges tartalmat, csak azt, amit a kártya belső vezérlője mutat kifele, fogalma sincs arról, hogy a tényleges elhelyezkedés nem egyezik azzal, ami ő lát.
A fájlrendszer kezelő kizárólag a FAT-ból (ez egy tábázat) és a directory clusterekben található leírásokból gondolja azt, hogy tudja, milyen állapotban vannak a fájljai. Már a modern IDE vagy SCSI diszkeken sem teljes a fizikai megfelelés, pláne ha néhány tartalékszektort is igénybe vett már a lemez.
Ahhoz, hogy a random jelleget elfedje a kártya, összesen egy táblázatra van szükség. A táblázatnak egyetlen oszlopa és annyi sora van, ahány clustert tartalmaz a kártya. A táblázat minden egyes cellájában ez az infó áll, hogy az adott sorszámú cluster pillanatnyilag épp melyik "fizikai" sorban lakik. Aki kívülről nézi a rendszert, és lekéri a 4. clustert, az meg fogja kapni akkor is, ha az ténylegesen a 26544. "sorban" van valójában.
Ahhoz, hogy ennek tényleges haszna legyen, kell még egy táblázat, aminek két oszlopa van és annyi sora, ahány Clustert tartalmaz a kártya. Az első mező értékét minden egyes írásnál növeljük eggyel (induláskor 0), a másodikba meg egy flaget teszünk, ami azt jelzi, hogy az adott "sor" tartalma épp érvényes, vagy a blokk "üres". Ha a számláló elér egy beállított értéket (mondjuk 10), akkor keresünk egy olyan sort, aminek a tartalma épp "üres", és a számláló kisebb, mint 10. Az aktuális írást ebbe a clusterbe végezzük el, az eredeti cluster "üres jelzőjét" beállítjuk, hisz az ott tárolt adatra nincs szükség, épp most írtuk ki egy másik blokkba. Az előző táblázat tartalmát is módosítani kell, hogy az indexünk a megfelelő "sorra" mutasson. Ne a régire, hanem az újra. Ezek a funkciók akár "drótozva" is lehetnek, még csak processzor sem kell hozzájuk, megfelelően összerakott kapusorozattal megoldhatóak, bár egy pic jellegű cuccal valóban kényelmesebb megoldani...
Amíg a "diszk" nincs tele, mindig lesz olyan "üres" blokk, amit fel lehet használni. Ha tele van, ez már nehéz, de ha a gyártó belerak a kártyába 1%-nyi olyan "blokkot" amit a kártya kívülről nem enged elérni, ezeket szabadon felhasználhatja ilyenkor. Gyanítom van is ilyesmi bennük, már csak azért is, mert a biteket tároló alkatrészek is kidőlhetnek a sorból és ha valamelyik blokkban egy ilyen van, valahogy ki kell zárni azt a munkából és helyettesíteni egy használhatóval.
Mindettől függetlenül még mindig kíváncsi vagyok egy mérés eredményére a fentebb vázoltak szerint...
--
SaGa
1: a defrag során nem tünik/nem tűnhet el semmilyen értékes adat, azaz egyetlen sértetlen és egész fájl sem. Ettől még a defrag eljárás során, az első lépésben, amikor a chkdsk fut és végzi a "szemétgyüjtést" felszabadíthat egy csomó helyet, ahol a rosszul sikeredett (félig létrejött, ám lezáratlan, vagy nem teljesen törölt) fájlok maradékai laknak. Miután ezektől is megszabadult a diszk, valóban "gyorsulhat" a boot, de nem azért, mert rendezettek a fájlok, hanem azért, mert nem kell neki felesleges, hiányos adatokat turkálni, ellenőrizni...
2:
Valaki felvetette, hogy a rendszerszinten nézzük a kártyát, akkor lehetnek plusz órajelciklusok a rendezetlen állapotban, mert többet kell olvasni. Nos ez tévedés.
Igaz, a Wiki nem teljesen releváns, mert sok marhaság is megjelenik benne, de itt egy idézet:
"Defragmentation tools are used on hard disks to optimize the file system access speed. On an SD card, this is unnecessary, as any block can be accessed as fast as any other. Doing this will wear the card out slightly, as a limited number of writes can be made before failure."
A forrása: http://en.wikipedia.org/wiki/Secure_Digital_card
Nézzük a részleteket...
A RAM jellegű memóriák (bármilyenek) általában "táblázatos" formában léteznek. Nem bitenként, hanem bizonyos méretű "szavanként" rendeződnek. A tipikus, PC-ben használatos RAM.ok a processzorhoz igazodva 8-16-32-64-128 bites szerveződésűek. Spéci nagysebességű videokártyákban már van 512 bites szervezés is. Úgy kell felfogni, mint egy excel táblát, aminek az oszlopszáma annyi, amennyi a biteké, a sorok száma meg annyi, ahányra szükség van a teljes kapacitás eléréséhez.
Pl egy 1 MB, 16 bites RAM az 16 oszlop, 512 sor. Egy bit eléréshez először megcímezzük a megfelelő sort (RAS ciklus). Amikor ez megvan, a teljes sor tartalma átmásolódik egyetlen órajel alatt az "olvasási pufferbe", ami pont akkora, mint egy sor a RAM-ban, és az oszlop címzési ciklusban (CAS) kiválasztjuk a minket érdeklő bitet. A PC-kben párhuzamosan olvas be a proci vagy a DMA egy komplett sort, így gyakorlatilag minden bitet rátol a neki megfelelő adatbusz sinre... Ez a leegyszerűsített vázlat...
Nézzünk egy SD kártyát. A 8 GB-s SD kártya csak FAT32 módban tud dolgozni (ez egyéb flash jellegű RAM-ok másra is képesek, mert más a szervezésük, ott 512 byte-os a blokk, vagy még kisebb, de cserébe a kapaciás is kisebb. Általában.), nem véletlenül. Ahhoz, hogy ekkora tárkapacitása legyen és megfelelő tempóban dolgozzon, a belső szervezése 4 kb-os, azaz 16375 bites sorokból áll. Amikor az oprendszer fájlrendszer kezelője elkér egy clustert a kártyától, az egy ekkora blokkot tud kiadni magából. Teszi ezt "soros" módon, mert általában 1 db adatsin van. Ha USB olvasóval használjuk, nem is kell több, amikor benne van a telefonban, akkor 4-et használ párhuzamosan, azaz 4 bitenként jön ki az adat a kártyából.
A FAT32 legkisebb, egyben kezelt blokkja a cluster, jelen esetben 4 kB. Ez annyit jelent, hogy ha egy fájl 1 byte-os, akkor is 4 kB-nyi helyet foglal. A maradék 4kb-1byte méretű terület tartalma lényegtelen, de az is be kell olvasnia a rendszernek, mert ilyen a szervezése. Ha Novell szerver lenne, akkor képes volna a clusterekben fennmaradt üres helyet is kihasználni, némi teljesítménycsökkenés árán, de a telefonokban nem ilyen rendszer dolgozik. Meg az NV nem is FAT jellegű, így hagyjuk. A cluster, a 4 kB minden körülmények között egy fizikai blokkba kerül akkor is, amikor fragmentált egy diszk. A fájlok fragmentálódása annyit jelent, hogy ezek a 4 kB-os blokkok nem sorban, egymás után helyezkednek el, hanem egymástól távol, szétszórva, azaz a következő blokk beolvasásához újra kell pozicionálni az olvasófejet, ami időbe telik...
Mivel bármely sor kicímzése a rendszerben pontosan ugyanannyi időbe telik, mindegy, hogy a legelső vagy a "legbelső", bármely clustert pontosan ugyanannyi idő alatt képes kitolni magából a kártya. Tehát, ha a fájl fizikailag a 26-27-28-dik clustert foglalja, a beolvasása pont annyi időbe telik, mintha a 26-1234-8766 clusterebken lenne...
3: a random szétszórás lehet, hogy még nincs a boltokban (én úgy tudtam, hogy igen, de lehet, hogy rosszul), annyira nem bonyolult, ráadásul az téves, hogy egy ilyen módon kezelt kártya tartalma a defrag számára mindig "egyben" látszik. Mivel a defrag nem "látja " a tényleges tartalmat, csak azt, amit a kártya belső vezérlője mutat kifele, fogalma sincs arról, hogy a tényleges elhelyezkedés nem egyezik azzal, ami ő lát.
A fájlrendszer kezelő kizárólag a FAT-ból (ez egy tábázat) és a directory clusterekben található leírásokból gondolja azt, hogy tudja, milyen állapotban vannak a fájljai. Már a modern IDE vagy SCSI diszkeken sem teljes a fizikai megfelelés, pláne ha néhány tartalékszektort is igénybe vett már a lemez.
Ahhoz, hogy a random jelleget elfedje a kártya, összesen egy táblázatra van szükség. A táblázatnak egyetlen oszlopa és annyi sora van, ahány clustert tartalmaz a kártya. A táblázat minden egyes cellájában ez az infó áll, hogy az adott sorszámú cluster pillanatnyilag épp melyik "fizikai" sorban lakik. Aki kívülről nézi a rendszert, és lekéri a 4. clustert, az meg fogja kapni akkor is, ha az ténylegesen a 26544. "sorban" van valójában.
Ahhoz, hogy ennek tényleges haszna legyen, kell még egy táblázat, aminek két oszlopa van és annyi sora, ahány Clustert tartalmaz a kártya. Az első mező értékét minden egyes írásnál növeljük eggyel (induláskor 0), a másodikba meg egy flaget teszünk, ami azt jelzi, hogy az adott "sor" tartalma épp érvényes, vagy a blokk "üres". Ha a számláló elér egy beállított értéket (mondjuk 10), akkor keresünk egy olyan sort, aminek a tartalma épp "üres", és a számláló kisebb, mint 10. Az aktuális írást ebbe a clusterbe végezzük el, az eredeti cluster "üres jelzőjét" beállítjuk, hisz az ott tárolt adatra nincs szükség, épp most írtuk ki egy másik blokkba. Az előző táblázat tartalmát is módosítani kell, hogy az indexünk a megfelelő "sorra" mutasson. Ne a régire, hanem az újra. Ezek a funkciók akár "drótozva" is lehetnek, még csak processzor sem kell hozzájuk, megfelelően összerakott kapusorozattal megoldhatóak, bár egy pic jellegű cuccal valóban kényelmesebb megoldani...
Amíg a "diszk" nincs tele, mindig lesz olyan "üres" blokk, amit fel lehet használni. Ha tele van, ez már nehéz, de ha a gyártó belerak a kártyába 1%-nyi olyan "blokkot" amit a kártya kívülről nem enged elérni, ezeket szabadon felhasználhatja ilyenkor. Gyanítom van is ilyesmi bennük, már csak azért is, mert a biteket tároló alkatrészek is kidőlhetnek a sorból és ha valamelyik blokkban egy ilyen van, valahogy ki kell zárni azt a munkából és helyettesíteni egy használhatóval.
Mindettől függetlenül még mindig kíváncsi vagyok egy mérés eredményére a fentebb vázoltak szerint...
--
SaGa
A hozzászólást 1 alkalommal szerkesztették, utoljára SaGa59 2009-07-06 hétf. 10:21:03-kor.