Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6
In occasione del proprio Snapdragon Summit Qualcomm annuncia i due nuovi chip per dispositivi mobile di fascia alta che entreranno nel mercato nel corso del 2027: tanta potenza a disposizione per elaborazioni di intelligenza artificiale sempre più complesse
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole!
Hogwarts arriva in fascia media grazie a realme, con una special edition che unisce la Quadra Light-Sensing Color-changing Tech, un baule in stile Hogwarts Express pieno di collezionabili e una scheda tecnica sostanzialmente identica al 16 Pro di partenza: ecco cosa cambia davvero, come si comporta nell'uso quotidiano e quanto vale in base al prezzo di 699,99 euro
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-07-2011, 16:00   #1
Negroni
Junior Member
 
Iscritto dal: May 2009
Messaggi: 17
Paginazione e protezione della tabella delle pagine

ciao a tutti,
avrei dei dubbi riguardo la gestione della memoria(nel caso non fosse un topic coerente..mi sapreste indicare dove postare la discussione?).
Il mio problema riguarda la protezione della tabella delle pagine. Entrando nello specifico, in una page table ogni entry presenta vari bit tra cui quello di R/W. Se non viene settato, questo rende la entry,e quindi la pagina, read-only,altrimenti, se settato, viene abilitata la possibilità di scrittutra sulla pagina. Ciò che turba i miei sonni Smiley è la protezione della page table in toto. Cosa dovrei settare per proteggere tutta la tabella delle pagine?dovrei modificare il bit di R/W della page page directory entry che punta a quella tabella?ma a quel punto, non devo proteggere in scrittura anche la page directory entry?e se si(ma anche se non fosse così)come si fà?e per proteggere tutta la page directory?c'entra qualcosa il write protection del registro di processore CR0?
grazie in anticipo
Negroni è offline   Rispondi citando il messaggio o parte di esso
Old 28-07-2011, 18:11   #2
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
vabbè che siamo tutti del campo, ma contestualizzare un minimo? ti stai scrivendo un OS tutto tuo?
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2011, 09:04   #3
Negroni
Junior Member
 
Iscritto dal: May 2009
Messaggi: 17
perdonami...hai perfettamente ragione !!!stò cercando di capire come funziona la gestione della memoria su VirtualBox. Ora, da quello che ho appreso, questo SW, per mantenere consistenti le tabelle delle pagine del guest O.S. e le shadow page tables(tabelle delle pagine mantenute dall'hypervisor) rende le guest PT read only in modo che qualsiasi tentativo in scrittura del guest venga trappato tramite un #PF. Quello che però non sò è come si fà a proteggere tutta una page table, mi spiego:se modifico il bit R/W della page table entry vado a proteggere in scrittura la pagina puntata dalla entry. E per proteggere tutta la tabella delle pagine che dovrei fare?settare il bit R/W della page DIrectory entry???ma a questo punto dovrei proteggere in scrittura anche la page directory(altrimenti il guest ci potrebbe accedere e modificare ad esempio i bit di R/W della entry e quindi vanificare il tutto). E la page directory come si protegge? Alla fine è una tabella puntata da CR3 che contiene nient'altro il suo indirizzo. Come faccio a dire che è protetta? Ecco perchè ho chiesto del settaggio del bit di Write Protection del registro CR0, perchè a mio parere in questo modo metto in write protection tutta la memoria per la macchina virtuale e proteggo anche le page table. Ho cercato di essere il più chiaro possibile...spero di esserci riuscito
Negroni è offline   Rispondi citando il messaggio o parte di esso
Old 10-08-2011, 13:38   #4
Z80Fan
Senior Member
 
L'Avatar di Z80Fan
 
Iscritto dal: Sep 2009
Messaggi: 638
Quote:
Originariamente inviato da Negroni Guarda i messaggi
Ora, da quello che ho appreso, questo SW, per mantenere consistenti le tabelle delle pagine del guest O.S. e le shadow page tables(tabelle delle pagine mantenute dall'hypervisor) rende le guest PT read only in modo che qualsiasi tentativo in scrittura del guest venga trappato tramite un #PF.
Secondo me stai cercando nel posto sbagliato.

Proprio come hai detto te, quando il guest cerca di accedere ai descrittori delle pagine in scrittura, si genera un Page Fault.
Ora, premetto che non so come funziona VirtualBox, ma sono quasi, al 99% sicuro che è in questo modo; preparati a un po' di Inception .

Il guest viene eseguito in un ambiente limitato, cioè nella user mode dell'host. Questo ambiente è uno spazio virtuale, gestito dall'host. Le tabelle di paginazione del guest sono memorizzate in pagine dell'host, che vengono protette dall'host, attraverso le tabelle di paginazione dell'host.

Quindi, quando il guest cerca di accedere alle SUE tabelle di paginazione (del guest), viene generato un page fault nella pagina dell'HOST, perchè è la pagina dell'HOST che è protetta da scrittura. Il guest non se ne accorge del fault, e non deve, perchè nella realtà, quando accede alle sue tabelle, può scrivere tranquillamente (sempre che siano verificate altre condizioni che per questo discorso non sono rilevanti).

Quindi, ricapitolando, ci sono 2 serie di tabelle di paginazione: quelle in uso dal processore reale della macchina Host (gestite dal sistema operativo dell'host), e quelle del sistema guest. L'hypervisor impedisce al guest di accedere alle tabelle del guest, impostando i bit di R/W nelle tabelle dell'Host. Il guest non si accorge di tutto questo.

Scusa le ripetizioni ma le ho messe per evitare qualsiasi equivoco, spero di essere stato chiaro.
__________________
| Il mio "OS" (thread su HWU) | |
Z80Fan è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Qualcomm annuncia la nuova generazione di SoC Snapdragon 8 Elite Gen 6 Qualcomm annuncia la nuova generazione di SoC Sn...
realme 16 Pro Harry Potter Edition: il nuovo midrange ha uno stemma di Hogwarts che cambia colore al sole! realme 16 Pro Harry Potter Edition: il nuovo mid...
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
ESA e Mistral hanno stretto un accordo p...
AstroForge presenta Autonomy-1: un satel...
Neutralizzata da Microsoft EvilTokens, l...
Porsche mette alla prova i Tesla Superch...
Roborock Saros 20 Flow Complete arriva i...
Basta un comando digitato nel terminale ...
La corsa alla superintelligenza è...
Le memorie cinesi sfidano sé stes...
Dash cam 4K con doppia telecamera, GPS, ...
Qwen 4: Alibaba conferma l'addestramento...
Super El Niño, allarme globale: 451.000 ...
Toyota, 400.000 robot in fabbrica senza ...
Hanno bucato l'FBI e ora dettano le cond...
Standard sì, licenze no: la linea di Ope...
Guida all'acquisto: quale smartphone HON...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:13.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v