![]() |
Модераторы: xvr |
![]() ![]() ![]() |
|
r3r08 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 8.10.2008 Репутация: нет Всего: нет |
Есть такая задача: получить процесс, который в последний раз присоединялся к разделяемой области памяти.
Знаю,что функция для получения этого процесса: shm_lpid , но как написать саму программу не знаю, может у кого хотя бы примеры по данной теме есть? |
|||
|
||||
svlary |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: 4 Всего: 4 |
Наверное, Вы слегка перепутали :
man 5 ipc |
|||
|
||||
r3r08 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 8.10.2008 Репутация: нет Всего: нет |
ну может и перепутал, но все равно не понятно как написать саму программу...
|
|||
|
||||
svlary |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 207 Регистрация: 8.9.2009 Репутация: 4 Всего: 4 |
Насколько я понимаю, работа с общей памятью идет точно так же, как с другими общими ресурсами : 1) С помощью ftok(...) получаем КЛЮЧ 2) По ключу, вызвав shmget(...) получаем ID сегмента общей памяти 3) Вызвав в любой момент shmctl( <ID сегмента>, IPC_STAT, <Адрес структуры struct shmid_ds>) получим копию данных ядра, описывающих этот сегмет. 4) Взяв поле shm_lpid этой структуры получим интересующую Вас информацию |
|||
|
||||
r3r08 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 40 Регистрация: 8.10.2008 Репутация: нет Всего: нет |
спасибо)
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С/С++: Программирование под Unix/Linux" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, xvr. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Программирование под Unix/Linux | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |