Senior
Quels sont les types d'interaction interprocessus (IPC) ?
sobes.tech IA
Réponse de l'IA
L'interaction interprocessus (IPC) est la façon d'échanger des données entre différents processus dans un système d'exploitation. Les principaux types d'IPC :
- Canaux (Pipes) — permettent de transmettre des données en flux d'un processus à un autre.
- Sockets — assurent l'échange de données via le réseau ou localement (sockets de domaine Unix).
- Mémoire partagée (Shared Memory) — une zone de mémoire est allouée, accessible par plusieurs processus pour la lecture et l'écriture.
- Sémaphores — utilisés pour synchroniser l'accès aux ressources partagées.
- Files de messages (Message Queues) — les processus échangent des messages via une file.
- Signaux — notifications asynchrones d'événements.
En Go, pour l'IPC, on utilise souvent des canaux (channels) pour l'interaction entre goroutines, et pour l'interaction entre processus — sockets, fichiers ou appels système enveloppés dans des paquets. Par exemple, on peut utiliser le paquet net pour les sockets TCP/Unix ou os pour travailler avec des fichiers et des signaux.