b.Structuri de date p-ru demand paging

Сделай свою wap-шпаргалку =) попробуй конструктор сайтов http://www.panweb.com/


Nucleul conюine 4 structuri de date majore pentru a asigura funcюiile de gestiune a memoriei la nivel scгzut ?i paginarea la cerere: intrгrile din tabela de paginг (page table entries), descriptorii de bloc disc, tabela pfdata (page frame data table) ?i tabela de folosire a spaюiului de swap (swap use table). Nucleul alocг spaюiu pentru tabela pfdata o singurг datг pe durata de viaюг a sistemului, dar pentru celelalte structuri alocг pagini de memorie dinamic. O regiune conюine tabele de paginг pentru a accesa memoria fizicг. Fiecare intrare a unei tabele de paginг conюine adresa fizicг a paginii, biюii de protecюie care indicг dacг procesul poate citi, scrie sau executa pagina ?i urmгtoarele cвmpuri de biюi pentru asigurarea paginгrii la cerere:
*valid ? validare (Nucleul modificг bitul valid pentru a indica legalitatea conюinutului unei pagini, dar aceasta nu оnseamnг cг, atunci cвnd acest bit indicг ilegalitatea conюinutului unei pagini, este ilegalг ?i referirea paginii respective);
*reference - referinюг (indicг dacг un proces a referit recent o paginг);
*modify ? modificare (indicг dacг un proces a modificat recent conюinutul unei pagini);
*copy on write - copie la cerere (utilizat оn apelul sistem fork, indicг faptul cг nucleul
trebuie sг creeze o nouг copie a paginii atunci cвnd procesul оi modificг conюinutul);
*age ? timp (nucleul manipuleazг setul de biюi age pentru a indica cвt timp o paginг a
fгcut parte din setul de lucru al unui proces).
Fiecare intrare оn tabela de paginг este asociatг cu un descriptor de bloc disc, care descrie copia pe disc a paginii virtuale. Conюinutul unei pagini virtuale se poate gгsi оntr-un anumit bloc din zona de swap, оntr-un fi?ier executabil sau nu se poate gгsi pe un dispozitiv de swap. Dacг pagina se gгse?te оntr-o zonг de swap, descriptorul de bloc disc conюine numгrul dispozitivului logic ?i numгrul blocului care conюine pagina respectivг. Dacг pagina este conюinutг оntr-un fi?ier executabil, descriptorul de bloc disc conюine numгrul blocului logic din fi?ier care conюine pagina;