[vbox-dev] Managing CR3 on guest O.S.

Francesco Di Paolo negroni_85 at hotmail.it
Sat Jul 23 14:02:03 GMT 2011


Hello there,
i'd like some hints in regards how the CR3 register is handled. From what i've learned, it seems that VirtualBox, everytime a guest O.S. try to write on CR3. generates a #GP and 
uses a function 


	
	
	
	EMInterpretCRxWrite() that calls emUpdateCRx() which modifies the VCpu. In particular, in regards to CR3, it sets the new value(with 


	
	
	
	CPUMSetGuestCR3
 )and does a flush calling PGMFlushTLB() that remap the CR3 with the function MapCR3(). Now, i  think that VirtualBox has to do the setup of the new page table right? And, in order to catch all the exceptions, it has to write protect it or am i wrong?and if it is so,can anyone address me to the source code that does these??i would appreciate

 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.virtualbox.org/pipermail/vbox-dev/attachments/20110723/35b324a3/attachment.html>


More information about the vbox-dev mailing list