Nsy103 3 communication inter processus

Linux ?? Principes et ProgrammationCommunication inter-processus Tubes IPC MSQ SHM CNAM NSY Yann GAUTHERON Extraits http fr wikipedia org LINUX Programmation système et réseau Jo? lle DELACROIX Unix communications internes C Crochepeyre http www cnam fr CCommunication interne UNIX Communication Interne exec Fichiers Signaux Tubes Doors Solaris IPC Communication Inter Processus ?? MSQ Files de messages ?? SHM Mémoire partagée Communication Externe Sockets Moyens divers et variés pour échanges de données avec d'autres machines CCommunication interne UNIX exec Commande Unix sous Shell et main usr bin prog a b c main argc argv anvp Paramètres d ? appel ?? à l'exécution de main argc argv envp on récupère argc le nombre de paramètres du ème paramètre argv l'adresse d'un tableau d ? adresses de cha? nes de caractères sous Unix la première cha? ne est le nom du programme ??prog ? envp l'adresse d ? un tableau d ? adresses de cha? nes de caractères donnant les valeurs des variables Shell CCommunication interne UNIX exec Interface ?? main argc argv envp ?? int argc ?? char argv envp argc nombre d ? éléments du tableau d ? adresses pointé par argv argv pointe sur le tableau qui contient les adresses des paramètres d ? appel envp pointe sur le tableau qui contient les adresses des variables d ? environnement CCommunication interne UNIX exec Exemple d ? appel ?? usr bin prog par par par par avec variables d ? environnement TERM vt HOME usr moi La commande est composée de paramètres main argc argv envp après exécution ?? argc ?? argv adresse tableau contenant ??prog ? ??par ? ??par ? ??par ? ??par ? ?? envp adresse tableau contenant ??TERM vt ? ? HOME usr moi ? CCommunication interne UNIX Exemple de programme C A ?chage des paramètres d'appel du programme lui-même main int argc char argv char envp int k for k k CCommunication interne UNIX La variable d'environnement Unix environ La variable 'environ' sous Unix est un pointeur sur un tableau de pointeurs vers les cha? nes de caractères des variables d'environnement Exemple extern char environ main int k for k k if environ k printf environnement d n k environ k else break exit CCommunication interne UNIX Les tubes ou PIPE Deux types ?? tube anonyme ?? tube nommé Moyen de communication entre deux processus s ? exécutant sur une même machine Fichiers particuliers SGF Gérés par le noyau File de données en mémoire FIFO Lectures destructrices ? ? CLes Tubes Les tubes anonymes Structure sans nom Communication entre deux processus Deux descripteurs lecture et écriture Deux pointeurs automatiques lecture et écriture ?? pointeur de lecture sur le er caractère non lu ?? pointeur d ? écriture sur le er emplacement vide Processus de même ?liation CLes Tubes Les tubes anonymes CLes Tubes Les tubes anonymes Principe de base père- ?ls ?? pipe création du tube par le père ?? fork création du processus ?ls ?? héritage de l ? ouverture du tube ?chier exec ?? Passage

  • 29
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise
Partager
  • Détails
  • Publié le Mai 31, 2022
  • Catégorie Management
  • Langue French
  • Taille du fichier 70.7kB