Получение физического адреса из виртуального

Тема в разделе "WASM.NT.KERNEL", создана пользователем dimaxus, 19 янв 2012.

  1. dimaxus

    dimaxus New Member

    Публикаций:
    0
    Регистрация:
    16 янв 2012
    Сообщения:
    1
    kd> !process 0 0 explorer.exe
    PROCESS ca4ea950 SessionId: 2 Cid: 0d64 Peb: 7ffff000 ParentCid: 0d24
    DirBase: 3ed423c0 ObjectTable: dbae7e00 HandleCount: 730.
    Image: explorer.exe

    В DirBase должны последние 12 бит быть нулями, а тут нет?

    даже если в DirBase 3ed423c0 -> 3ed42, просто отбросить последние 1,5 байта и

    kd> .process ca4ea950
    Implicit process is now ca4ea950
    WARNING: .cache forcedecodeuser is not enabled
    kd> x kernel32!CreateProcessW
    766d202d kernel32!CreateProcessW = <no type information>
    kd> !vtop 3ed42 kernel32!CreateProcessW
    X86VtoP: Virt 00000000, pagedir 3ed42
    X86VtoP: PAE PDPE 3ed42 - 7469686372612074
    X86VtoP: PAE PDE 3`72612000 read error 0x8007001E
    Virtual address 0 translation fails, error 0x8007001E

    почему-то с ошибкой, может кто растолкует?
     
  2. shchetinin

    shchetinin Member

    Публикаций:
    0
    Регистрация:
    27 май 2011
    Сообщения:
    715
    Может в этом дело ?