Following are couple of functions used for reading/writing:

- Context::loadvirt  - Load max 64bit data from given virtual address
- Context::loadphys - Load max 64bit data from given physical address
- Context::storemask_virt - Store max 64bit data to given virtual address
and it uses mask to write selected bytes
- Context::copy_from_user - Load instructions from given virtual address
(only used for instructions)

All VM's memory is handled by QEMU and simulator uses QEMU's API's to
read/write to VM's RAM, IO and MMIO.

- Avadh

On Tue, Nov 29, 2011 at 4:03 PM, DRAM Ninjas <[email protected]> wrote:

> It reads QEMU's memory. I believe it doesn't write to QEMU's memory since
> QEMU will do that on its own.
>
> As far as reading the memory, I think it uses Context::copy_from_user() in
> ptlsim/sim/ptl-qemu.cpp:662
>
> On Tue, Nov 29, 2011 at 5:54 PM, Ching-Tsun Chou <[email protected]
> > wrote:
>
>> Does the PTLsim part of MARSS have its own memory (i.e., RAM), or it uses
>> QEMU's memory?
>>
>> Where is the PTLsim code that actually reads and writes that memory?
>>
>> Thanks in advance!
>> - Ching Tsun
>>
>>
>> _______________________________________________
>> http://www.marss86.org
>> Marss86-Devel mailing list
>> [email protected]
>> https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel
>>
>>
>
> _______________________________________________
> http://www.marss86.org
> Marss86-Devel mailing list
> [email protected]
> https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel
>
>
_______________________________________________
http://www.marss86.org
Marss86-Devel mailing list
[email protected]
https://www.cs.binghamton.edu/mailman/listinfo/marss86-devel

Reply via email to