Во время работы над приложением для Android я пытаюсь прочитать содержимое карты страниц (все необходимые привилегии предоставлены). Я использую C++ в студии Android.
fd можно открыть успешно, но любая попытка использовать read() приводит к «недопустимому аргументу». Возвращаемое значение равно -1.
Кто-нибудь сталкивался с подобными проблемами или знает, что может вызвать проблему?
Проблема в том, что невозможно использовать чтение по fd.
Я бы хотел для чтения байтов "size(uint64_t)" из "fd" по смещению "offset".
Код: Выделить всё
void* ptr = malloc(4096);
printf("ptr: %p\n", ptr);
pid_t pid = getpid();
size_t N_CHARS = 512;
char *str = (char*)malloc(sizeof(char)*N_CHARS);
fflush(stdout);
snprintf(str, N_CHARS, "./va2pa %d %p", pid, ptr);
std::stringstream ss;
ss
Источник: [url]https://stackoverflow.com/questions/78150064/read-error-invalid-argument-read-return-1[/url]
Мобильная версия