Я хотел бы найти все сегменты разделяемой памяти, используемые данным процессом. Мне особенно интересно выяснить shmid, поэтому я могу использовать его в вызовах shmctl().Список всех сегментов разделяемой памяти, используемых процессом в AIX5.3 +
В Solaris я бы просто прочитал/proc/$ PID/map, чтобы выяснить эту информацию (поле pr_shmid). Содержимое этого файла определяется struct prmap_t в sys/procfs.
AIX также имеет файл/proc/$ PID/map. Существует также struct prmap, но, к сожалению, отсутствует поле pr_shmid.
Любые идеи, как я могу достичь этого на AIX5.3 +?
Да, я боюсь, что я должен согласиться с этим решением. Я попытался выяснить, какие вызовы syscalls/library используются «ipcs -m», запустив его через «truss», но, к сожалению, «ipcs» - это setuid root в AIX ... –
кстати. чтобы выяснить, кто создал сегмент shm, мне нужно позвонить «ipcs -mp», –