Re: is mach_vm_region confused or am I?
On 14 Apr 2012, at 09:55, comex wrote:
On Fri, Apr 13, 2012 at 9:47 PM, Gerriet M. Denkmann <gerriet@mdenkmann.de> wrote:
Doing: pid_t pid = ... (of any 64-Bit process) vm_map_t target_task = task_for_pid( pid ...) mach_vm_address_t address = ... mach_vm_size_t size mach_vm_region( target_task, &address, &size, VM_REGION_TOP_INFO ...)
I get: size = 0x1000 (i.e. one page) top.shared_pages_resident = 2
When I do proc_regionfilename( pid, address, ... ) I get: "/usr/lib/dyld".
Is mach_vm_region not to be trusted? Am I misunderstanding something?
What address are you using?
I am using mach_vm_region() to iterate through all memory regions. The address in question varies of course, but is not far below SHARED_REGION_BASE_X86_64.
What does vmmap say about that address?
vmmap does NOT show top.shared_pages_resident. It just shows extended.pages_resident. For Xcode I get: vmmap -interleaved -resident <pid of Xcode>: [...] __DATA 00007fff68ef6000-00007fff68ef7000 [ 4K 4K] rw-/rwx SM=ZER /usr/lib/dyld __DATA 00007fff68ef7000-00007fff68ef8000 [ 4K 4K] rw-/rwx SM=COW /usr/lib/dyld [...] But mach_vm_region( VM_REGION_TOP_INFO) has: top.shared_pages_resident = 2 for both these regions. Kind regards, Gerriet. _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.... This email sent to site_archiver@lists.apple.com
participants (1)
-
Gerriet M. Denkmann