Salve, mi sto cimentando nello studio della teoria dei sistemi operativi e attualmente sto studiando gli algoritmi di sostituzione delle pagine basati sul working set dei processi, avendo da prima studiando l'algoritmo di aging, come evoluzione del NFU, mi chiedo se sia utilizzabile anche come algoritmo working set oriented; il numero di bit che compone il contatore di ogni pagina è pari al numero di cicli di clock che definiscono il working set dei processi stessi.
Definendo quindi il working set come le pagine indirizzate da un processo negli ultimi k cicli di clock.
Una pagina cui contatore e a 0 sarà una pagina non appartenente al working set, in caso di assenza di pagine non appartenenti allora verrà presa la pagina con il contatore più piccolo ovvero quella meno utilizzata o cui accesso da parte del processo non è recente; Prendendo a prescindere quindi la pagina cui contatore è più piccolo (identico all'aging)
Se per esempio k, ovvero il numero del cicli di clock che definisce il working, è pari a 4 data la seguente configurazione:
La mia domanda quindi è la seguente:
È possibile utilizzare l'aging come algoritmo working set oriented, c'è qualcosa che mi sfugge in caso negativo?
Definendo quindi il working set come le pagine indirizzate da un processo negli ultimi k cicli di clock.
Una pagina cui contatore e a 0 sarà una pagina non appartenente al working set, in caso di assenza di pagine non appartenenti allora verrà presa la pagina con il contatore più piccolo ovvero quella meno utilizzata o cui accesso da parte del processo non è recente; Prendendo a prescindere quindi la pagina cui contatore è più piccolo (identico all'aging)
Se per esempio k, ovvero il numero del cicli di clock che definisce il working, è pari a 4 data la seguente configurazione:
Codice:
1° 2° 3° 4° 5° 6°
A, B, C A,C D, A C, D E
|------------|------------|------------|------------|------------|------------|
|--------------------------------------------------| ^page fault
working set
Contatore a 4 bit;
A | B | C | D | E
1° 8h 8h 8h 0h 0h
2° Ch 4h Ch 0h 0h
3° Eh 2h 6h 8h 0h
4° 7h 1h Bh Ch 0h
5° 3h 0h 5h 6h 8h
Risulta quindi che la pagina B è da sfrattare in quanto non appartiene al working set del processo, ed è così.
È possibile utilizzare l'aging come algoritmo working set oriented, c'è qualcosa che mi sfugge in caso negativo?