#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define BUFFER_SIZE (1024 * 1024 * 1024) int main(int, char**) { // waste a bunch of memory void* src = malloc(BUFFER_SIZE); for (size_t i = 0; i < BUFFER_SIZE; i++) { ((char*)src)[i] = (char)i; } void* dst = malloc(BUFFER_SIZE); memcpy(dst, src, BUFFER_SIZE); uint64_t pss; // should always return true std::string pid_path = android::base::StringPrintf("/proc/%d/smaps", getpid()); while (android::meminfo::SmapsOrRollupPssFromFile(pid_path, &pss)) ; return 0; }