a.Procesul page stealer

[ ]
Procesul page stealer este un proces al nucleului care evacueaz din memorie paginile care nu fac parte mult timp din setul de lucru al unui proces. Nucleul creaz procesul page stealer pe timpul initializrii sistemului ?i-l apeleaz pe toat durata de via a sistemului, la nevoie. El examineaz fiecare regiune activ, care nu este blocat, trecnd peste regiunile blocate, deoarece se a?teapt verificarea lor n urmtorul pas ?i incrementeaz apoi cmpul age al tuturor paginilor valide. Nucleul blocheaz o regiune cnd un proces produce o ntrerupere a unei pagini din regiune, astfel nct procesul page stealer nu poate evacua pagina care a generat ntreruperea.
Pentru o pagin din memorie exist dou stri: pagina a fost ncrcat recent ?i nu este nc potrivit pentru swapping, sau pagina este posibil a fi evacuat ?i este disponibil pentru reasigurarea la alte apgini virtuale. Prima stare arat c un proces a referit recent pagina, ea fiind deci n setul su de lucru. Unele ma?ini seteaz bitul reference cnd se refer o pagin, ns metodele software pot suplini lipsa acestei faciliti hardware. Procesul page stealer pune pe 0 bitul reference al paginilkor referite ?i reine cte examinri au fost fcute de la ultima referire a paginii. Deci prima stare const in cteva substri corespunztoare numrului de treceri pe care le face procesul page stealer pn cnd pagina devine posibil a fi evacuat (vezi figura 9.18). Cnd acest numr dep?e?te o valoare de prag, nucleul trece pagina n cea de-a doua stare, pregtit pentru evacuare. Perioada maxim care poate trece pn cnd pagina devine potrivit pentru a fi evacuat este dependent de implementare, ?i este limitat de numrul de bii disponibil n intrarea din pagina din tabela de pagin.
Dac dou sau mai multe procese folosesc n comun o regiune, ele actualizeaz biii de referin ai aceluiasi set de intrri din tabela de pagin. n acest fel, paginile pot fi pri ale seturilor de lucru ale mai multor procese, dar acest fapt nu are importan pentru procesele page stealer.

:

Network | | | | | | | | | | | | | | | - | | | | | | | | | | | | | | | | | | | | | () | | | | | | | | | | | | | | | | () | Assembler | Basic, VB | Pascal | , ++ |