fájlgyorsítás

fájlgyorsítás

Alapértelmezés szerint a Windows gyorstárazza adatállomány adatok beolvasása lemezről, és írt nekik. Ez azt jelenti, hogy a fájl adatait olvassa műveleteket végeznek a területen a rendszer memória, más néven a rendszer cache fájlt, és nem a fizikai lemez. Ennek megfelelően, az írási művelet az adatok írását a fájlrendszer cache fájl nincs a lemezen, és az ilyen típusú cache nevezik a write-back cache. Gyorsítótárral vezérlése a „file”.

Gyorsítótárral zajlik irányítása alatt menedzser cache (gyorsítótár-kezelő). amely folyamatosan működik, amíg a Windows. fájl a rendszerben tárolt adatok cache fájlok lemezre íródnak, meghatározott időközönként az operációs rendszer és a memória által korábban használt ezen fájladat megjelent - ezt nevezzük egy csepp a meghajtóba (kipirulás) cache. Policy késés felvételi adatokat egy fájlba, és tárolja azokat a cache, amíg a cache nem fog a lemezre kiírni, az úgynevezett késleltetett bevitellel, és benne van a vezérlő cache egy meghatározott időintervallumban. Az az időtartam, amelynek során a fájl adatblokkot lemezre kiírni, amely részben az időt, hogy megmarad a cache és az időt, amikor az adatok utolsó megnyitásának egy olvasási művelet. Ez biztosítja, hogy a fájl adatait, hogy gyakran olvasni, továbbra is rendelkezésre áll a rendszerben cache, a maximális számú ideiglenes fájlokat.

Ez fájlgyorsítás folyamatot szemlélteti az alábbi ábra.

Nagyobb teljesítmény érték bemenet - kimenet (I / O) javasolt adatok cache fájl adatait függ a blokk méretét kijelölt olvasásra vagy írásra. Amikor olvasni és írni a nagy blokkok fájl adatai sokkal jobb olvasni a lemezről, és írjon a lemezre kell arról, hogy nézd meg az I / O művelet. Speed ​​input - output (I / O) adatait kell egyre csökken, mivel a művelet zajlik I / O a maga nemében.

Ezekben az esetekben a cache kikapcsolható. Ez úgy történik, amikor a fájl megnyitásakor, segítségével az átviteli FILE_FLAG_NO_BUFFERING zászló. az értéket a paraméter dwFlagsAndAttributes CreateFile funkciót. Amikor caching van tiltva, minden olvas és ír, hogy megkapja a hozzáférést a fizikai lemez. Azonban a metaadatfájlt is tárolásra kerülnek. Öblítse át a metaadatokat használja a FlushFileBuffers.

A gyakoriság, amellyel a célba a lemez fontos figyelembe venni olyan tényező, amely egyensúlyt teremt a teljesítmény a rendszer megbízhatóságát. Ha a rendszer öblítések túl gyakran esik a lemezen van kitéve nagyszámú írási műveletek, amelyek jelentősen ronthatja a rendszer teljesítményét. Ha a rendszer nem törli a cache lemezre elég gyakran, úgy válik egyre valószínűbb, amelyben vagy a rendszer memória kimerül a cache, vagy hirtelen rendszerhiba (mint csökkent a számítógép tápellátás) fog történni, mielőtt a visszaállítás történik. Az utóbbi esetben, a tárolt adatok elvesznek.

Annak érdekében, hogy a megfelelő számú csepp szekvencia cache lemezre, a gyorsítótár-kezelő létrehoz minden második folyamat, az úgynevezett késleltetett bejegyzést. Késleltetett belépési kezeli egynyolcados viszont oldalakat, amelyek az utóbbi időben nem kerültek lemezre kiírásra kell írni a lemezre. Ezt a folyamatot folyamatosan újraértékeli az adatmennyiséget a lemezre optimalizálása érdekében a teljes rendszer teljesítményét, és ha meg kell írni több adatot, hogy hozza létre több adat. Halasztott bejegyzések nem öblítjük ideiglenes fájlokat, mert azt feltételezik, hogy el kell távolítani az alkalmazás vagy a rendszer.

Egyes programok, például egy víruskeresőt, megkövetelik a felvételi műveletet azonnal a lemezre kiírni; A Windows ezt a képességet egy write-through caching co (egyidejű felvétel az adatok a cache és memória). Az eljárás lehetővé teszi, hogy a write-through caching co említett input / output műveleteket (I / O), átadva FILE_FLAG_WRITE_THROUGH doboz, ha hívnak CreateFile funkciót. Engedélyezett gyorsítótárral co write-through adatok továbbra is írva, hogy a cache, de a gyorsítótár-kezelő azonnal rögzíti az adatokat a lemezen, hanem ki őket a késedelem a lusta író. A folyamat is, hogy elveszíti a fájlt, ha kinyitják, a hívó FlushFileBuffers funkciót.

Metaadatok fájlrendszer mindig tároljuk. Emiatt, hogy mentse a változtatásokat a metaadatok a lemezen, a fájl vagy ki kell öblíteni a lemezre, vagy nyitott egy zászló FILE_FLAG_WRITE_THROUGH.