Sikerült elmélyednem a Garmin GPS-ek eddig fekete dobozként ismert memóriájának szerkezetében, megfejtettem egy régóta nyitott kérdést, illetve lett két jó hírem és egy rossz.
A memória foglaltsága című érték (általában vízszintes hasáb % kijelzéssel) azt mondja meg, hogy menni terület foglalt abból a közös flash memóriából, amelybe a kikapcsolás után is megmaradó értékeket teszi. Azért zavaró, mert a 3000 pontnál nagyobb ACTIVE LOG-gal rendelkező típusokon az ACTIVE LOG nem ezen a területen van, így annak foglaltsága nem számít bele ebbe a százalékba. Az útpontok, tárolt trackek, útvonalak teszik ki a legnagyobb részét, mégpedig különböző mértékben. Egy útpont típustól függően 24-50 byte, egy tárolt trackpont 10 byte, útvonal talám még kevesebb is. Fogalomzavart az jelenthet továbbá, hogy hiába van még %-ban hely a memóriában, ha az útpontok, trackek és trackpontok száma abszolút számmal is korlátozott. Méginkább hülyeség, hogy a közös memória méretét erős felfelé kerekítéssel állították be, tehát ha valaki veszi a fáradságot és minden létező tárat megtölt, akkor se éri el 100%-ot.
A jó hírek ezzel kapcsolatosak: ezen memória terhére megnövelhető az ACTIVE LOG. Ez a GPSMAP 76S esetében látványos lesz, 16000 pont helyett 24000 lesz, plusz a felülírás. A hülye memóriakezelés miatt 24 vagy 28 ezer az abszolút maximum, amit a típusok többsége tudhat, lehet hogy egyes újabbak 32-ig is elmennek, azokat még tanulmányoznom kell.
A másik jó hír az, hogy talán esély nyílik a 3000-es és kisebb trackmemóriák növelésére, mert ha jól sejtem, akkor a közös memória terhére (esetleg a méretének növelésével) fér még oda adat.
A rossz hír az, hogy az útpontok számának változtatása bizonyos korlátok miatt gyakorlatilag lehetetlen vagy legalábbis embertelen erőfeszítéseket kívánna. Van pl. egy 1000*2 bájtos memóriahely, ahol útpontonként egy 2 bájtos értéket tárol, majd közvetlenül utána az útpontok darabszámát. Ahhoz, hogy ebből több lehessen, az egészet át kellene rendezni, de ezekre a helyekre számtalan helyről mutatnak pointerek, ráadásul néha nem is pontos címmel, hanem sokszor pár bájttal elé, amihez a konkrét címzéskor még hozzáad. Nem tudom továbbá, hol van szabad memória, ahová át lehetne pakolni a nagyobb táblázatot, illetve az 1000-es érték se került elő, amivel összehasonlítja az aktuális útpontok számát tároláskor.[ előzmény: (15908) Kolesár, 2007.04.02 18:43:11] |