Ciaoo a tutti.
Ho un problema per quanto riguarda la creazione di una e piu' liste linkate su shared memory; e devo utilizzare il multiprocesso System V (niente thread!)
All'inizio avevo pensato: " E che ci vuole, il processo padre crea una lista nella sua area heap, i cui nodi contengono gli indirizzi delle shm. Quindi i processi figli possono semplicemente fare pop e push sulla lista con le usuali malloc e free". TUTTO SBAGLIATO!
I processi figli hanno tutti una copia della memoria del processo padre, e quindi lavorano tutti su liste diverse! Infatti ogni volta per ogni processo sembra che la lista non sia mai stata toccata :p
Quindi in tutto questo...come posso creare una lista "linkata" in memoria condivisa, dato che non hanno senso malloc/free?
Io avevo pensato (male) di sostituire a malloc shmget e a free shmctl(remove), ma purtroppo solo il processo padre puo' creare le shm per i processi figli e NON viceversa.