1 / 16

Mälu vabastamine LRU ja FIFO-ga

Mälu vabastamine LRU ja FIFO-ga. Mart Kaldoja 001163 LDW. Mälu vabastamine. Kõiki asju ei saa mälus hoida, sellepärast kasutame virtuaalmälu, mis on odavam ja suurem Mälus vaja hoida ainult hetkel täidetavat programmi ja hetkel vaja minevat infot. Mälu vabastamine.

dom
Télécharger la présentation

Mälu vabastamine LRU ja FIFO-ga

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Mälu vabastamine LRU ja FIFO-ga Mart Kaldoja 001163LDW

  2. Mälu vabastamine • Kõiki asju ei saa mälus hoida, sellepärast kasutame virtuaalmälu, mis on odavam ja suurem • Mälus vaja hoida ainult hetkel täidetavat programmi ja hetkel vaja minevat infot

  3. Mälu vabastamine • Vaja on parimat algoritmi mälu vabastamiseks • Parim algortim võtaks vähe aega (kõik vajalik oleks kogu aeg mälus)

  4. Mälu vabastamise algoritmid • Random - vabastamine toimub täiesti juhuslikult • FIFO - First In First Out - eemaldatakse esimesena sisse pandu • LIFO - Last In First Out - nagu FIFO, ainult eemaldatakse hoopis viimasena sisse pandu

  5. Mälu vabastamise algoritmid • LRU - Least Recently Used - eemaldatakse viimati vähem kasutatu • Veel mitmeid erinevaid, näiteks loendamisel põhinev LFU (Least Frequently Used), kus eemaldatakse vähim kasutatu

  6. Algoritmid täpsemalt • Vaatleme kahe algoritmi tööd lähemalt • FIFO • LRU • Miks need? • kõige tuntumad, kasutatakse nii cache'imise juures kui ka virtuaal mälus • lihtsalt arusaadavad ja ka reaalselt rakendatavad

  7. Näited • Sisendina kasutame: 71200135610340 • Raami (frame) suurusena kasutame 4-a • Raami suurus määrab ära, mitu lehekülge saab hoida korraga mälus

  8. FIFO Sisend: 7 1 2 0 0 1 3 5 6 1 0 3 4 0

  9. FIFO kirjeldus • Loeme üle lehe vead (page fault), ehk mitu korda juhtus, et mälus polnud vajalikku asja. Vigade arvust tuleneb ka palju läheb meil aega. • Esimesed 4 numbrit paneme sisse (7120) • 0 on juba olemas • 1 on juba olemas

  10. FIFO kirjeldus • eemaldame 7 ja lisame 3 (+1 viga) • eemaldame 1 ja lisame 5 (+1 viga) • eemaldame 2 ja lisame 6 (+1 viga) • eemaldame 0 ja lisame 1 (+1 viga)

  11. FIFO kirjeldus • eemaldame 3 ja lisame 0 (+1 viga) • eemaldame 5 ja lisame 3 (+1 viga) • eemaldame 6 ja lisame 4 (+1 viga) • 0 on juba olemas • Kokku: 7 viga

  12. LRU Sisend: 7 1 2 0 0 1 3 5 6 1 0 3 4 0

  13. LRU kirjeldus • Loeme üle lehe vead (page fault), ehk mitu korda juhtus, et mälus polnud vajalikku asja. Vigade arvust tuleneb ka palju läheb meil aega. • Esimesed 4 numbrit paneme sisse (7120) • 0 on juba olemas • 1 on juba olemas

  14. LRU kirjeldus • eemaldame 7 ja lisame 3 (+1 viga) • eemaldame 2 ja lisame 5 (+1 viga) • eemaldame 0 ja lisame 6 (+1 viga) • 1 on juba olemas

  15. LRU kirjeldus • eemaldame 3 ja lisame 0 (+1 viga) • eemaldame 5 ja lisame 3 (+1 viga) • eemaldame 6 ja lisame 4 (+1 viga) • 0 on juba olemas • Kokku: 6 viga

  16. Analüüs • FIFO on lihtsam • Nagu näha on LRU effektiivsem üldiselt • LRU erinevalt FIFO-st ei kannata Belady anomaalia all (Belady's Anomaly) • Belady Anomaalia - mida rohkem on raame (frame), seda rohkem on lehe vigu (page faults)

More Related