[Volgograd] shm

kordv kordv на vng.com.ru
Пт Окт 10 17:38:27 MSD 2003


Serge S. Fukanchik wrote:
> Дмитрий Коржевский писал мне ранее:
> 
>>А /tmp у тебя смонтирован?
> 
> У меня нет такого раздела.
> 
> 
>>Если смонтирован, то покажи как, а то прога создаёт и убивает в нем 
>>файлики вида shm_read_flow32401
> 
> Скорее всего при помощи библиотечной функции ftok, почитай про нее man, она
> используется для генерации уникальных ключей для shmget.
> 
> 
>>Глядел ltrace'ом, в начале не заметил, что перед vfork'ом она по 
>>какой-то причине вызывает shmdt.
>>Теперь осталось понять, почему она это делает.
> 
> Может быть что-то не так с файлами для ftok?
> 
Для ftok создаётся файлик, но другой.


ЗЫ
  Наверно придётся связываться с разработчиками.
  Они перенесли программу с Solaris'а и, по видимому, считают, что 
разделяемая область памяти
  удаляется только после shmctl(key, 0, 0); (может и в Линуксе раньше 
так было?)
  Реально программа запускает два дитёнка: один читает данные, другой 
записывает
  (на каждый формат чтения и записи есть соответствующий бинарник).
  Кажется запускалка настраивает разделяемую область для детей, а ей 
самой она не нужна.



-- 
  Akkord
  V-LUG team




Подробная информация о списке рассылки Volgograd