Hello Michael,
Hum, it depends if we follow Posix or SysV. In both case, if the system
is compliant with
POSIX or SysV, the portability is normally guarantee. But, we need to
test to verify.
Now, there is a difference between POSIX and SysV regarding the
semaphore needed to protect
the Shared Memory space. In SysV, when a process crash, the system will
release the semaphore
if SEM_UNDO flag has been set. This guarantee that the system will not
block even if a process
crash once acquired the lock. In POSIX, there is not similar feature.
So, in POSIX, you must
add your own supervision/monitoring system to keep the whole system safe
even in case of crash.
Regards
Olivier
Le 02/03/2015 14:50, Michael H Lambert a écrit :
On 2 Mar 2015, at 02:18, David Lamparter <[email protected]> wrote:
NB: I'm not against SHM, but I do think SHM is more difficult to get
right, and it's not an automatic performance win. I did some thinking
about a shared memory RCU-based replacement for ZAPI, but never had the
time to try that. It probably *does* help moving Quagga towards
supporting multiple threads in the individual daemons.
How difficult is it to do SHM portably? That could be the decider.
Michael
_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev
_______________________________________________
Quagga-dev mailing list
[email protected]
https://lists.quagga.net/mailman/listinfo/quagga-dev