Получение информации о смапированных страницах памяти процесса
#include <sys/procfs.h>#define DCMD_PROC_PAGEDATA __DIOF( _DCMD_PROC, __PROC_SUBCMD_PROCFS + 20, procfs_mapinfo )
/proc/PID/as
).DCMD_PROC_PAGEDATA
.NULL
или указатель на массив структур procfs_mapinfo.0
или размер массива структур procfs_mapinfo, полученный с помсощью sizeof().int
, где может быть сохранено число сегментов.Команда используется в сочетании с вызовом devctl(), а все перечисленные аргументы являются его типовыми параметрами. Команда позволяет получить информацию о смапированных страницах памяти процесса, ассоциированного с filedes, что соответствует памяти, присоединенной к адресному пространству с помощью mmap().
Если требуются получение специфичных для сегмента атрибутов, следует использовать команду DCMD_PROC_MAPINFO.
Отсутствуют.
Заполненный массив структур procfs_mapinfo и общее число заполненных в нем элементов dev_info_ptr.
Получение числа сегментов, с указанием аргумента NULL:
devctl( fd, DCMD_PROC_PAGEDATA, NULL, 0, &n );
Выделение достаточного буфера для массива структур procfs_mapinfo под каждый сегмент и запрос информации о них:
my_buffer = (procfs_mapinfo *)malloc( sizeof( procfs_mapinfo ) * n );if ( my_buffer == NULL ){/* Not enough memory. */}devctl( fd, DCMD_PROC_PAGEDATA, my_buffer, sizeof( procfs_mapinfo ) * n, &dummy );
pthread_join(), MsgReply(), InterruptWait(), MsgDeliverEvent(), MsgReceive(), MsgSend(), MsgSendPulse(), nanosleep(), procfs_mapinfo, pthread_cancel(), pthread_cond_wait(), pthread_create(), pthread_exit(), pthread_mutex_lock(), sigaction(), struct sigaction, SignalAction(), SignalKill(), sigsuspend(), sigwaitinfo(), SyncSemWait(), ThreadCreate()
Предыдущий раздел: перейти