mmap на / proc / pid / mem

Кто-нибудь преуспел в mmap ' файл / proc / pid / mem с ядром Linux 2.6? Я получаю ошибку ENODEV (Нет такого устройства). Мой вызов выглядит так:

char * map = mmap(NULL, PAGE_SIZE, PROT_READ, MAP_SHARED, mem_fd, offset);

И я убедился, просмотрев файл / proc / pid / maps во время отладки, что, когда выполнение достигает этого вызова, смещение имеет значение вершины стека минус PAGE_SIZE. Я также проверил с помощью ptrace, что mmap устанавливает для errno значение ENODEV.

10
задан Andrew Grimm 6 October 2011 в 22:54
поделиться