Подтвердить что ты не робот

Как проверить, читается ли адрес в приложении linux userspace

Для целей отладки мне нужно проверить указатель, чтобы увидеть, указывает ли он на допустимую читаемую страницу. В настоящее время я просматриваю /proc/ [pid]/maps, чтобы увидеть, правильно ли отображается адрес, но это кажется немного затянутым. Есть ли способ лучше? Спасибо.

4b9b3361

Ответ 1

Каноническим способом является использование системного вызова write() для чтения со страницы (запись в дескриптор файла фиктивного pipe()). Вместо -1 он вернет -1 с errno == EFAULT если буфер, переданный для write() не читается.