ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
Gyorsítótár - Wikipédia

Gyorsítótár

A Wikipédiából, a szabad enciklopédiából.

A gyorsítótár vagy cache (ejtsd: „kes”) francia eredetű kifejezés (jelentése: „rejtekhely”, „rejtett”), a számítástechnikában az átmeneti információtároló elemeket jelenti, melyek célja az információ-hozzáférés gyorsítása. A gyorsítás egyszerűen azon alapul, hogy a gyorsítótár gyorsabb tárolóelem, mint a hozzá kapcsolt, gyorsítandó működésű elemek, így ha ezen területek tartalma korábban már bekerült a gyorsítótárba (mert már valaki/valami hivatkozott rá korábban), az ilyen adatokat nem a lassú működésű területről, hanem a gyors cache tárolóból lehet előhívni.

Tartalomjegyzék

[szerkesztés] Típusai

[szerkesztés] Memória

Külső gyorsítótár IC-k egy 486-os PC alaplapon.
Külső gyorsítótár IC-k egy 486-os PC alaplapon.

A hardveres gyorsítótár technikai megvalósítása sokkal drágább, mint a hagyományos memóriaelemek. Ez a magyarázata annak, hogy miért nem dobjuk ki a lassú memóriákat, és használjuk helyettük rögtön csak a gyorsítótárat. Ha ezt tennénk, az nagyon megemelné a számítógépek árát.

Gyorsítótárazásra leginkább akkor van szükség, ha a számítógép két alkatrészének adatkezelési sebessége számottevően (pl. nagyságrendekkel) eltér, és a lassabb alkatrész így a maga szintjére „húzza le” azt az elemet, ami egyébként villámgyorsan működne. Ez a helyzet pl. a CPU és a központi memória esetében: az utóbbi sokkal lomhább, akár 5×-20× is lassabban működhet, mint a CPU. Ilyen esetekben a két lassú alkatrész közé egy cache egységet iktatnak, így a gyors egység először a gyors cacheból próbálja elérni a szükséges adatot, és csak aztán a lassú egységből.

[szerkesztés] Háttértárolók

Nemcsak hardverszinten, például a CPU és a memória közötti gyorsítótárazásról lehet tehát beszélni (bár ez egy igen tipikus példa): a merevlemez is rendelkezhet gyorsítótárral, ami a lassú elérésű lemezről (például átlagosan 40 ms alatt) leolvasható adatokat egy a diskbe épített cache memóriában tárolja (mely például 0.1 ms alatti elérési sebességgel rendelkezik).

[szerkesztés] Egyéb gyorsítótárak

Szoftverek tekintetében még szintén számtalan helyen beszélhetünk gyorsítótárról és gyorsítótár-funkciókról, ahol maga a gyorsítótár szó nem ritkán már egész szoftvert vagy több szoftver együttműködéseként létrejövő rendszert jelent. Szoftverek által használt gyorsítótárak tipikus példái a webböngészők által használt „virtuális” gyorsítótárak: amikor böngészőnkkel néhány weboldalt „visszalapozunk”, akkor azok a böngészőprogram által a merevlemezen fenntartott területről jönnek elő, ott tárolódnak (például a Microsoft Windows XP operációs rendszerek Internet Explorer böngészői esetében ez a

gyökérkönyvtár\Documents and Settings\Felhasználónév\Local Settings\Temporary Internet Files

nevű mappa. Ez azért jó, mert egy távoli webhelyről általában sokkal lassabban lehet egy weblapot letölteni, mint a merevlemezről.

[szerkesztés] Technikai adatok

A gyorsítótárakat jellemző főbb adatok az

  • elérési idő (tc), mértékegység: ns (nanoszekundum)
  • átlagos találati arány (h), mértékegység: % (százalék) azt mutatja meg, hogy ha a központi memória egy területéről adatot hívunk meg, azt az esetek hány százalékában lehet már a gyorsítótárból is meghívni. Természetesen minél nagyobb ez az arány, annál jobban működik a gyorsítótár, hiszen annál többször elegendő az utóbbi gyors működésű egységből az adatot hívni, nem pedig a lassú központi operatív tárból.
  • az átlagos elérési idő (ta), mértékegység: ns (nanoszekundum), melyet a
 t_{a} = ht_{c}+\left( 1-h\right) \left( t_{c}+t_{m}\right) = t_{c}-ht_{m}+t_{m}

képlettel számolunk, ahol tm a lassabb, gyorsítandó (memória)egység elérési ideje.

  • a relatív elérési idő (r), mértékegység: ns (nanoszekundum) azt mutatja, hányszorosa a gyorsítandó egység elérési ideje a gyorsítótár elérési idejének:
    r=\frac{t_m}{t_c}
  • a hatékonysági mutató (gc), mértékegység: % (százalék) azt mutatja, mennyivel növekszik a gyorsítótárazott egység teljesítménye egy gyorsítás nélküli ugyanolyan egységéhez képest; ezt a mutatót a
    \frac{1}{1+r\left( 1-h\right)} = \frac{t_{c}}{t_{a}+t_{m}}
    képlettel számoljuk.

Egy tipikus memória cache jellemzői:

  • 64 Mbájt memóriához általában 64 kbájt cache jár;
  • a központi memóriánál 20× gyorsabb;
  • mérete pedig annak 1/1000-e;
  • az átlagos cache találati arány több mint 90%-os.

[szerkesztés] A memória gyorsítótárak csoportosítása a memórialeképzés módja szerint

A központi memóriát gyorsító hardveres cache memóriákat működésük szerint csoportosíthatjuk aszerint, hogy konkrétan hogyan valósítják meg az adatátvitelt és adattárolást.

[szerkesztés] A teljesen asszociatív cache

A teljesen asszociatív cache (FUC = Fully Associative Cache) esetén a gyorsítandó memóriaegység beolvasott blokkjának tartalma átkerülhet a gyorsítótár bármelyik blokkjának területére. A beolvasott blokk bárhova elhelyezhető, bármelyik sorba. Az elhelyezés sorát helyettesítési algoritmus határozza meg. Amikor a processzor egy adatot keres a cache-ben, akkor a memóriabeli cím felső 28 bitjét összehasonlítja a cache-beli blokkszámokkal az összes sorban egyidejűleg. Ha sikeres a keresés, akkor kijelöli az adott sorbeli byte-ot, ha sikertelen, akkor a memóriában keresi.

előnye: rugalmas betöltés, de a visszakereséshez annyi áramkör szükséges, ahány találati sor van, egyúttal jó találati arány jellemzi;
hátránya: szükséges helyettesítési eljárás;

[szerkesztés] A közvetlen (direkt) leképzésű cache

  • A közvetlen (direkt) leképzésű cache (DMC = Direct Mapping Cache) esetén a gyorsítandó memóriaegység beolvasott blokkja a cache meghatározott blokkjára kerülhet csak. A blokk helyét a cache-ben a blokksorszám alsó 8 bitje határozza meg. Ebben a megoldásban a blokk csak abba a sorba kerülhet, amelyet a sorindexe meghatároz. A cache-ben a 16 adatbyte mellett a lapsorszám 20 bites mint "tag", valamint a jelzőbitek kerülnek tárolásra. Kereséskor a memóriacímből előálított sorindex alapján keresi a sort, majd a felső 20 bitet összehasonlítja a cache-beli lapsorszámmal.
előnye: rövidebb tag, gyors keresés és olcsóság jellemzi;
hátránya: merevség és alacsony találati arány;

[szerkesztés] A csoport-asszociatív cache

  • A csoport-asszociatív cache (SAC = Set Associative Cache) esetén a gyorsítandó memóriaegység egy-egy blokkja a gyorsítótár egy blokkcsoportjára képeződhet. E típus átmenet az előző két típus között, mivel adott blokk csak egy adott blokkcsoportra képeződhet, de ezen belül a blokkcsoport bármely blokkjára, vagyis olyan ez, mintha teljesen asszociatív cache-memóriák halmazával lenne dolgunk, melyek egymáshoz képest azonban közvetlen leképzéssel működnek. A cache nagyobb, n csoportokra van osztva, amelyek önmagukban teljesen asszociatívak, azaz a csoporton belül bárhova kerülhet az adatblokk. 22 bit lapsorszám, 23-28 bit csoportsorszám (alsó 6 bit) 16 adatbyte, 2 jelzőbit. Kereséskor a memóriabeli címből képzett csoportindex alapján kijelöli a csoportot, majd a felső 22 bit alapján a cache-beli lapsorszámot.
Áramköre: 4 párhuzamos összehasonlítású, egyben rugalmas, közvetlen leképezésű. Kis számú összehasonlítás és az áramkör viszonylag gyorsasága jellemzi.

[szerkesztés] A szektor leképzésű cache

  • A szektor leképzésű cache (SMC = Sector Mapping Cache) ritkábban használt megoldás, melynél a beolvasott memóriablokk szintén egy-egy blokkcsoportra képeződik, de az előző esethez képest épp fordítva, a beolvasott blokk tetszőleges blokkcsoportra képeződhet, azon belül azonban csak meghatározott blokkra. Azaz az ilyen gyorsítótár úgy működik, mintha közvetlen leképezésű cache-memóriák halmazával lenne dolgunk, melyek egymáshoz képest azonban asszociatív módon működnek. A processzor a csoport helyét jelöli ki asszociatív módon, és azon belül a blokk helye a lapon belüli elhelyezkedésének megfelelően kötött.

[szerkesztés] Külső hivatkozások


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -