从特定地址调用 mmap
Calling mmap from specific address
如何从特定地址(0x6A6F7444)读取mmap函数?
我试过了:
mmap(0x6A6F7444, 100, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0)
但它不起作用。编译说:
warning: passing argument 1 of ‘munmap’ makes pointer from integer without a cast [-Wint-conversion]
#include <stdint.h> // for uintptr_t
uintptr_t addr = 0x6A6F7444;
mmap((void *)addr, 100, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
将禁用警告。
为了 mmap
使用您的地址,它需要 MAP_FIXED
标志,请参阅 man mmap
了解完整详情。
如何从特定地址(0x6A6F7444)读取mmap函数? 我试过了:
mmap(0x6A6F7444, 100, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0)
但它不起作用。编译说:
warning: passing argument 1 of ‘munmap’ makes pointer from integer without a cast [-Wint-conversion]
#include <stdint.h> // for uintptr_t
uintptr_t addr = 0x6A6F7444;
mmap((void *)addr, 100, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
将禁用警告。
为了 mmap
使用您的地址,它需要 MAP_FIXED
标志,请参阅 man mmap
了解完整详情。