Mitä välimuistitiedot ovat? Aiheuttaako se ongelmia, jos tyhjennämme välimuistitiedot?

Paras vastaus

Kiitos (monista) A2A: ista.

Välimuistissa olevat tiedot ovat joitain tiedot, joita tietokoneesi / puhelimesi / mikä tahansa kerran on työskennellyt erittäin kovasti (ladattu mahdollisesti hitaassa verkossa tai jouduttu käyttämään paljon keskusyksikköä tai joutunut jopa lukemaan levyltä). Se varastoidaan jonnekin nopeammin kuin mitä sen käyttämiseen / luomiseen käytettiin ensin. Joten jos levylläsi oleva tiedosto on välimuistissa, sitä ei ole välimuistissa levyllä, se on välimuistissa muistissa. Jos verkkotiedosto on välimuistissa, se voidaan tallentaa välimuistiin muistiin tai levylle (tai molemmille).

Tietokoneilla on paljon erilaisia ​​välimuisteja. Paljon . Jopa asiat, joita saatat ajatella ”nopeasti”, kuten tietokoneen RAM, ovat itse asiassa riittävän hitaita, jotta suorittimessasi on välimuisti RAM-arvoille. Ohjelmilla on usein useita välimuisteja eri asioille. Käyttöjärjestelmä tallentaa välimuistiin levytiedostot RAM-muistiin ja tarjoaa usein asioita, jotka tallentavat Web-sivut välimuistiin RAM-muistiin ja / tai levylle.

Välimuistissa olevien tietojen ”pitäisi” olla jotain, joka voidaan luoda tai hakea uudelleen. Joissakin tapauksissa se ei todellakaan voi, esimerkiksi jos sinulla on kuva Web-sivun välimuistista ja jostain syystä välimuisti tyhjennetään, kun sinulla ei ole verkkoa, et voi saada kuvaa takaisin ennen kuin verkko palaa … tai verkkosivu on saattanut muuttua, jolloin arvo ei voi koskaan tulla takaisin.

Jotkut välimuistit ovat rakentaneet menetelmiä estääksesi ne vanhentumasta (esimerkiksi jos verkkosivusto vaihtaa kuvaa joka päivä, et haluat tarkastella viime kuukausien kuvaa vain siksi, että se on “nopeampi”). Tämä on itse asiassa yksi vaikeimmista tietojenkäsittelytieteen ongelmista (välimuistin mitätöinti). Paljon ja paljon käytäntöjä on olemassa. Joitakin yleisimpiä ovat ”heitä vanhat tavarat”, ”kysy verkkosivustolta / tiedostojärjestelmästä / mitä tahansa, jos asia on muuttunut” ja henkilökohtainen suosikki ”kuka välittää”.

Joten ”teoriassa” heitto Välimuisti ei voi aiheuttaa ongelmaa … eikä myöskään voi korjata sitä. Välimuistin mitätöintikäytäntö voi olla väärä todellisessa maailmassa, ja vanhat tiedot ovat välimuistissa ja nyt vanhentuneita, välimuistin tyhjentäminen korjaa sen (woot!). Todellisessa maailmassa tiedot voivat myös olla ”vanhentuneita”, mutta niitä ei voi tällä hetkellä noutaa, joten välimuistin tyhjentäminen paljastaa ongelman (boo!).

Välimuistin tyhjentäminen aiheuttaa myös ongelman hitaammin, kun kerran välimuistissa olevat ja uudelleen tarvitsemasi asiat lasketaan / haetaan / mitä tahansa.

Vastaa

Tietokoneellasi 🙂

välimuisti on laitteisto, joka tunnetaan myös nimellä SRAM (staattinen ram). Sen suorituskyky on erittäin hyvä. Tämä kuitenkin maksaa. Kirjaimellisesti. Kustannukset kuten monissa $$$: ssa, koska SRAM on myös erittäin kallis. Jos tietokoneemme koostuisivat kokonaan SRAM: sta, ne olisivat uskomattoman kalliita. Kuten niin paljon, ettei kenelläkään olisi varaa niihin. Joten voimme nähdä, miksi haluaisimme käyttää SRAMia (se toimii huomattavasti paremmin kuin DRAM tai levytila), mutta jos se on niin kallis, miksi käytämme sitä? Se on epäkäytännöllisyys kallista, eikö?

Kyllä. Jotkut älykkäät insinöörit ajattelivat kuitenkin kompromissia. Entä jos suurin osa tietokonearkkitehtuurista koostuisi edelleen DRAM-muistista ja levytilasta (jotta se olisi kohtuuhintainen), mutta jotta silti säilyttäisimme suorituskyvyn, joka pitää kuluttajat tyytyväisinä, mitä jos tarvitsisimme vain pienen palan SRAMia nopeuttamaan tietokoneen suorituskyky PALJON. Avainsana: ”pieni pala”

Joten missä käytetään LRU-välimuistia? No, sinänsä ei ole oikeastaan ​​nimeltään ”LRU-välimuisti”. Nykyaikaisissa välimuistissa, joita voit ajatella pieninä SRAM-paloina, ei ole loputonta tilaa tietojen säilyttämiseen, ja jos olet tyypillinen kuluttaja, joka selaa verkkoa, siirryt jatkuvasti verkkosivulta verkkosivulle, alustalta alustalle, tiedot tietokoneesi liikevaihto tulee olemaan erittäin suuri.

Joten miten voimme hyödyntää tätä SRAM: n ”pientä palaa”, kun tietojemme liikevaihto on yleensä niin suuri? Se, mitä teemme, on se, että päätämme, mitä tietoja todennäköisimmin käytämme uudelleen, ja yritämme parhaamme mukaan pitää nämä palat pienessä osassa SRAMia (välimuistimme), joten seuraavalla kerralla meidän on käytettävä yhteistä tietojesi, jonka tietokoneesi voi käyttää kyseisiin tietoihin erittäin nopeasti, koska niitä pidetään kyseisessä SRAM-osassa. Ja kuinka tarkalleen päätämme, mitä pidetään ja mitä ei pidetä? Juuri tästä tulee ”LRU-välimuistin” käsite. On olemassa monia erilaisia ​​välimuistin asetteluja, joita käytetään eri syistä (täysin assosiatiiviset, asetetut assosiatiiviset, suoraan kartoitetut jne.), Jokaisella on hyvät ja huonot puolensa, mutta eniten yleinen tapa, jolla käyttöjärjestelmäsi päättää, mitä tietoja SRAM: ssä pitää säilyttää ja mitä heittää, on tarkastella viimeksi käytettyjä tietoja. Onko järkevää oikein? Jos napsautit jotain ja napsautit sitä edellisenä päivänä, edellisenä päivänä ja sitä edellisenä päivänä jne. On luultavasti järkevää pitää kyseinen tieto SRAM: ssä, joten kun seuraavan kerran napsautat sitä, BOOM, se vetää sydämen lyöntiä. Mutta entä jokin verkkosivusto, jota napsautit kolme kuukautta sitten, etkä ole sen jälkeen?No, kun tietoliikevaihtosi kasvaa jatkuvasti, käyttöjärjestelmän on tietyssä vaiheessa määritettävä, mitä se tarvitsee potkaista SRAM: stä, ja sanotaan tätä verkkosivustoa, jota ei ole napsautettu kolmeen kuukauteen? Tämä on viimeisimmin käytetty tieto välimuistissamme, joten potkaistaan se.

Välimuisti on laite, joka tunnetaan nimellä SRAM ja jolla on erittäin hyvä suorituskyky. LRU-häätöalgoritmi on se, miten käyttöjärjestelmäsi päättää, mitkä tiedot pidetään ja poistetaan kallisarvoisesta SRAM: sta.

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *