VAToPA
a demo for x86/x64's paging memory management learning, convert a virtual address from ring3 to physical address in ring0
Install / Use
/learn @AzureGreen/VAToPAREADME
VAToPA
Introduction
VAToPA is a demo for x86/x64's paging memory management learning. I conver a virtual address from ring3 to physical address in ring0, after that, I have roughly understand the paging memory management!
In x86 architecture, PAE paging mode is widely used now, you can watch it as the following picture:

And in x64 architecture, IA-32e paging mode is used, you can watch it as the following picture:

Supported Platforms
- x86 and x64 Windows 7
Reference Project(s)
-
x86/x64体系探索及编程 -
VATOPA
-
https://github.com/slivermeteor/VATOPA/
After view his code, I learned from the function MmMapIoSpace to map physical address to a virtual address that I can visit in my driver.
- BlackBone
- https://github.com/DarthTon/Blackbone/tree/master/src/BlackBoneDrv
Some macro definition i referenced from it such as GetPxeAddress, of course, I have made some changes. These macro can also find in wrk source code(MmGetPhysicalAddress).
Related Skills
proje
Interactive vocabulary learning platform with smart flashcards and spaced repetition for effective language acquisition.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
fullstack-developer
Full-Stack Developer Role Role Definition CONCEPT: Full-stack developer expertise ARCHITECTURE: Covers both frontend and backend development BEST_PRACTICE: Comprehensive web applicat
last30days-skill
18.5kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
