Homepage  Il progetto dsy.it è l'unofficial support site dei corsi di laurea del Dipartimento di Scienze dell'Informazione e del Dipartimento di Informatica e Comunicazione della Statale di Milano. E' un servizio degli studenti per gli studenti, curato in modo no-profit da un gruppo di essi. I nostri servizi comprendono aree di discussione per ogni Corso di Laurea, un'area download per lo scambio file, una raccolta di link e un motore di ricerca, il supporto agli studenti lavoratori, il forum hosting per Professori e studenti, i blog, e molto altro...
In questa sezione è indicizzato in textonly il contenuto del nostro forum


.dsy:it. .dsy:it. Archive > Didattica > Corsi N - Z > Sistemi operativi I
 
domanda compitino
Clicca QUI per vedere il messaggio nel forum
susy
Ciao ragazzi, questa era una domanda del secondo compitino di sisop (che non ho passato, porca miseria se lo odio sto esame):
che cosa ritorna questa funzione:

return (pp - pages) << pgshift

sono andata a vedere nel file kern/pmaps.h ma non riesco a capire cosa fa!

Aiuti?

Cronovirus
Restituisce l'indirizzo fisico corrispondente al frame pp!
pp - pages : aritmetica dei puntatori, ottieni il NUMERO del frame a cui corrisponde pp
<< pgshift : moltiplica il numero precedentemente trovato per la dimensione di una pagina, così da avere un indirizzo fisico!

In conclusione era la funzione page2pa(struct PageInfo *pp).
È chiaro o ci sono dei dubbi? :)

susy
Gia è più chiaro, ma il frame di cosa? Perchè ricordo vagamente alcune delle risposte e riguardavano se non sbaglio la page directory e la page table o qualcosa del genere!

Cronovirus
La memoria è suddivisa in frame (o pagine) da 4K ciascuna: l'array pages rappresenta tali pagine (infatti è di dimensione npages, ovvero il numero totale di pagine fisiche presenti nel sistema).
Quindi facendo pp - pages hai il numero (progressivo) di pagina fisica a cui corrisponde pp.
Devi entrare nell'ottica che la struttura pages rappresenta i frame fisici e che questa è una funzione che ti permette di passare dalla struttura che rappresenta il frame fisico, al frame fisico reale!

P.s qui le page directory e le page table non c'entrano nulla!!

Powered by: vbHome (lite) v4.1 and vBulletin v2.3.1 - Copyright ©2000 - 2002, Jelsoft Enterprises Limited
Mantained by dsy crew (email) | Collabora con noi | Segnalaci un bug | Archive | Regolamento |Licenze | Thanks | Syndacate