19.05.2013 Views

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

Facoltà di Ingegneria Tesi di laurea ANALISI DELLE TECNOLOGIE ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

nested page table (NPT) per tradurre gli in<strong>di</strong>rizzi fisici del guest in in<strong>di</strong>rizzi fisici <strong>di</strong> sistema, e<br />

lascia al guest il controllo completo sulle sue page tables; a <strong>di</strong>fferenza dello shadow paging,<br />

una volta che le NPT vengono riempite, l’hypervisor non deve intercettare ed emulare le<br />

mo<strong>di</strong>fiche della gPT da parte del guest.<br />

Sia il guest che l’hypervisor hanno la propria copia del processor state che riguarda il paging<br />

(come i registri CR3, CR0, CR4); la gPT mappa gli in<strong>di</strong>rizzi virtuali guest in in<strong>di</strong>rizzi fisici<br />

guest, mentre la nPT mappa gli in<strong>di</strong>rizzi fisici guest in in<strong>di</strong>rizzi fisici <strong>di</strong> sistema.<br />

Guest e nested page tables sono impostate dal guest e dall’hypervisor rispettivamente; quando<br />

una guest tenta <strong>di</strong> accedere alla memoria usando un in<strong>di</strong>rizzo virtuale, il page walker effettua<br />

un cammino bi-<strong>di</strong>mensionale usando la gPT e la nPT per tradurre gli in<strong>di</strong>rizzi.<br />

Figura 3.9: nested paging<br />

Nella figura è descritto il funzionamento del Nested Paging con un in<strong>di</strong>rizzo a 64 bit.<br />

Consideriamo il caso <strong>di</strong> un accesso da parte del guest all’in<strong>di</strong>rizzo virtuale V [20]:<br />

l’hardware utilizza l’in<strong>di</strong>rizzo nel registro CR3 per in<strong>di</strong>viduare il primo livello della<br />

page table guest; CR3 contiene un in<strong>di</strong>rizzo fisico guest, che deve essere tradotto in<br />

in<strong>di</strong>rizzo fisico host: si percorre la nested page table per ottenere un puntatore fisico<br />

60

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!