[so] [curs 7] memory overcommitment vs memory thrashing
Andrei Epure
epure.andrei at gmail.com
Thu May 24 23:45:25 EEST 2012
Salut.
În cursul 7, la slide-ul 39 (Thrashing) este o explicație destul de
ambiguă și incompletă referitor la fenomenul de thrashing.
În primul rând, fenomenul de thrashing nu cred că apare când procesul
nu are destule pagini, ci tocmai când are mai multe pagini virtuale,
dar nu are destule pagini fizice (cadre/frames). Atunci apare
"thrashing"-ul, adică alternanța swap-in/swap-out datorită lipsei
spațiului fizic pentru maparea celui virtual.
În al doilea rând, atunci când un proces nu are destule pagini (cum
zice în slide-ul 39) și memoria virtuală este "overcommited"
(supra-angajată? supra-promisă?), adică numărul de pagini folosit de
procese depășește numărul de cadre, rata page-fault este ridicată
fiindcă intră alte procese care își încarcă paginile lor și, procesul
având puține pagini, este foarte posibil să-i fie înlocuite acele
puține pagini. Iar când se întoarce el pe procesor, trebuie să le
aducă înapoi. Dar asta nu mai e thrashing, fiindcă alții îi ocupă
paginile.
Thrashing-ul am înțeles că se referă la fenomenul în care un proces
își înlocuiește propriile pagini fiindcă nu are destule cadre alocate
în memorie cu care să se joace.
Aici [1](slides 12-17) este o prezentare în care sunt explicate mai pe
larg cele două fenomene:
- "memory overcommitment" - când procesele își înlocuiesc unele altora paginile
- "thrashing" - când procesele își înlocuiesc propriile pagini
Așa am înțeles eu. Vă rog dați feedback.
Mersi,
Andrei
[1] https://docs.google.com/open?id=17Rsg7vchvteGP1K2ARBw0xF3mlGWD9tqn7B3a9O0nYoYOMPggiWIG3a9hjC0
--
Andrei Epure, student
Facultatea de Automatică şi Calculatoare
Univ. Politehnica Bucureşti
More information about the so
mailing list