ufrisk / MemProcFS

MemProcFS
GNU Affero General Public License v3.0
2.81k stars 352 forks source link

VmmReadScatterVirtual #227

Closed zxcvqwerasdf closed 9 months ago

zxcvqwerasdf commented 9 months ago
VOID VmmReadScatterVirtual(_In_ VMM_HANDLE H, _In_ PVMM_PROCESS pProcess, _Inout_updates_(cpMEMsVirt) PPMEM_SCATTER ppMEMsVirt, _In_ DWORD cpMEMsVirt, _In_ QWORD flags)
{
    if(cpMEMsVirt >= 2) {
        VmmReadScatterVirtual_New(H, pProcess, ppMEMsVirt, cpMEMsVirt, flags);
    } else {
        VmmReadScatterVirtual_Old(H, pProcess, ppMEMsVirt, cpMEMsVirt, flags);
    }
}

What is difference between VmmReadScatterVirtual_New and VmmReadScatterVirtual_Old?

ufrisk commented 9 months ago

old translates the virtual addresses to physical addresses one by one. new translates the virtual addresses to physical addresses in bulk.