/ / Czy ktoś używa netlink dla IPC? - linux, ipc, netlink

Czy ktoś używa netlink dla IPC? - linux, ipc, netlink

Planuję używać netlink do komunikacjimiędzy dwoma procesami użytkownika. Jednym z powodów, dla których jest tak wybredny w stosunku do netlink, jest - Większość przetwarzania jednego z procesów w końcu trafi do przestrzeni jądra, a komunikacja oparta na netlinkach może być użyta w takim stanie (miejmy nadzieję).

Podejście, które podejmuję, to zdefiniowanie nowegoOgólna rodzina Netlink (będę musiał napisać moduł jądra tylko po to, aby obsługiwać tę rodzinę - jak to obecnie wygląda). To jest w porządku, przyglądałem się przykładowemu kodowi, w którym jądro zasadniczo przesyła wiadomości między różnymi procesami i nie wykonuje żadnej pracy - rzeczywista populacja tych komunikatów jest obsługiwana przez procesy.

Moje pytanie brzmi - czy ktoś używa netlink w podobny sposób w jakimkolwiek projekcie? Także - czy powyższe podejście ma sens?

Przeczytałem o propozycji dotyczącej DBUS opartego na netlink. Ale nie znalazłem żadnego wdrożenia tego, co jest najbliższe moim wymaganiom.

Dzięki.

Odpowiedzi:

5 dla odpowiedzi № 1

To czego szukasz NETLINK_USERSOCK jeśli chcesz komunikować się między procesami przestrzeni użytkownika.

Dokumentacja Netlink jest niestety bardzo rzadka. To może trochę pomóc: Kto może dać mi najnowsze próbki programowania netlink?

Po prostu upewnij się, że nl_pid jest niezerowe i pasuje do tego, który użytkownik jest powiązany z „ed” i że wysyłasz unicast.