Posts Topics Forums Images
Search videos from message boards Videos Search messages from microblogs Microblogs Search messages from imdb.com Imdb Search messages from yuku.com Yuku Search messages from lefora.com (free forums) Lefora
My account: Login | Sign Up
Loading... 

Thread: Is there anyone who can help me with ReadProcessMemory() ?

Started 1 month, 2 weeks ago by Zaccheus@Work
No idea how it does it, but does the OS need to do something similar when it reads/writes to/from the page file?
Site: CodeGuru Forums - A Developer.com Community for C++, C#, VB, Java and .NET Solutions  CodeGuru Forums - A Developer.com Community for C++, C#, VB, Java and .NET Solutions - site profile
Forum: C++ and WinAPI  C++ and WinAPI - forum profile
Total authors: 4 authors
Total thread posts: 7 posts
Thread activity: no new posts during last week
Domain info for: codeguru.com

Other posts in this thread:

Igor Vartanov replied 1 month, 2 weeks ago
Just a hint: VMM (Virtual Memory Manager) is a Windows kernel component responsible for all kind of operations with or related to virtual address spaces. As long as this is about kernel's very private mechanisms, frankly, I doubt anybody here is aware of decent details beyond what Windows Internals provides.

Igor Vartanov replied 1 month, 2 weeks ago
Quote: Originally Posted by EnthusiasticNewbie In the function, Does it create a thread to search into other process memory ? Well, why would it do? What's so special in a thread that would help "to search into other process memory"? The whole thing seems to me way too simpler. The ReadProcessMemory call ...

EnthusiasticNewbie replied 1 month, 2 weeks ago
U always help me thanks! The reason I was curious of such mechanism was that to read from or write to other process memory, To do so, one process should know the address space of others but even in processor itself can't know about the address spaces of others that is not running currently. I heard only something in CPU resolves virtual addresses to physical addresss using address to page...

Igor Vartanov replied 1 month, 2 weeks ago
You definitely have to refer to Russinovich's Windows Internals , where you can find those sacral page tables and CR3 registers... Funny thing, I recommend this reading second time this week. BTW, I do not understand your confusing about context switching. Are you as well confused about dispatcher being able to switch between scheduled and preempted thread contexts? It definitely ...

Randor replied 1 month, 2 weeks ago
Hi, A quick summary of what happens when you call ReadProcessMemory(): 1.) ReadProcessMemory Calls NtReadVirtualMemory in NTDLL.DLL 2.) NtReadVirtualMemory passes through the SYSENTER/2Eh callgate and KeServiceDescriptorTable handler. 3.) ntoskrnl.exe calls ZwReadVirtualMemory for your application. 4.) ZwReadVirtualMemory reads the process memory and writes it into the buffer you ...

EnthusiasticNewbie replied 1 month, 1 week ago
Thank you guys ! I feel very thanksful to your replys! and I think I have to read Windows Internals as you guys recommended thanks again have a good time ! P.S I have one more question.. As I asked, Is there any kernel mode method or command to access physical memory directly ? Igor asked if I'm confused of context switching but It's not that I'm confused of that.. Losing...

 

Top contributing authors

Name
Posts
Igor Vartanov
3
user's latest post:
Is there anyone who can help me...
Published (2009-11-12 16:47:00)
You definitely have to refer to Russinovich's Windows Internals , where you can find those sacral page tables and CR3 registers... Funny thing, I recommend this reading second time this week. BTW, I do not understand your confusing about context switching. Are you as well confused about dispatcher being able to switch between scheduled and preempted thread contexts? It definitely manipulates with CR3 content but never loses the control......
EnthusiasticNewbie
2
user's latest post:
Is there anyone who can help me...
Published (2009-11-15 07:29:00)
Thank you guys ! I feel very thanksful to your replys! and I think I have to read Windows Internals as you guys recommended thanks again have a good time ! P.S I have one more question.. As I asked, Is there any kernel mode method or command to access physical memory directly ? Igor asked if I'm confused of context switching but It's not that I'm confused of that.. Losing control over the thread meant that it may happen when it...
Zaccheus@Work
1
user's latest post:
Is there anyone who can help me...
Published (2009-11-11 11:47:00)
No idea how it does it, but does the OS need to do something similar when it reads/writes to/from the page file?
Randor
1
user's latest post:
Is there anyone who can help me...
Published (2009-11-13 16:30:00)
Hi, A quick summary of what happens when you call ReadProcessMemory(): 1.) ReadProcessMemory Calls NtReadVirtualMemory in NTDLL.DLL 2.) NtReadVirtualMemory passes through the SYSENTER/2Eh callgate and KeServiceDescriptorTable handler. 3.) ntoskrnl.exe calls ZwReadVirtualMemory for your application. 4.) ZwReadVirtualMemory reads the process memory and writes it into the buffer you supplied. I don't know how ZwReadVirtualMemory is...

Related threads on "CodeGuru Forums - A Developer.com Community for C++, C#, VB, Java and .NET Solutions":

Related threads on other sites:

Thread profile page for "Is there anyone who can help me with ReadProcessMemory() ?" on http://www.codeguru.com. This report page is a snippet summary view from a single thread "Is there anyone who can help me with ReadProcessMemory() ?", located on the Message Board at http://www.codeguru.com. This thread profile page shows the thread statistics for: Total Authors, Total Thread Posts, and Thread Activity