Programmation système et réseau

Description

L’UF est décomposée en 3 parties :

Partie 1 : « Programmation système et multi-threading » (12,5h CM, 6,25h TD, 11h TP)
Le cours enseigne les concepts et les techniques liés à l’utilisation et à la manipulation sur une instance d’un système d’exploitation des mécanismes : 
de multi-programmation (processus, thread), 
de communication locale (IPC), 
de synchronisation de processus (signalisation, sémaphores, variables condition) 
d’ordonnancement. 
Une introduction au traitement parallèle est également fournie. L’ensemble est illustré par des TP de programmation multi-threadée utilisant des fonctions de synchronisation et d’ordonnancement.

Partie 2 : « Application Internet et Programmation socket » (6,25h CM, 5,5h TP)
La première partie du cours détaille les principales applications distribuées dans l’Internet : http, ftp, sftp, SMTP – POP3/IMAP4, Telnet, SSH + techniques de mutualisation/clusterisation, modèle P2P, applications multimédia, 
La deuxième partie présente l’interface de programmation par « socket » (API socket), technologie de base pour coder une application distribuée dans (en particulier) l’Internet
Deux séances de TP sont dédiées à la mise en œuvre (en langage C) des concepts associés à la programmation distribuée par socket UDP et TCP (via la programmation d’un générateur / récepteur de trafic paramétrable).

Partie 3 : « BE intégrateur » (13,75h TP + 3,75h TD)
Un bureau d’étude (BE) vient conclure l’UF. Son objectif est de concevoir et de développer en langage C un protocole de niveau Transport (niveau TCP) optimisé pour le transport de flux vidéo distribués en temps réel. L’optimisation consiste à développer un mécanisme de reprise des pertes à fiabilité partielle, permettant de tirer partie de la tolérance aux pertes des applications vidéo pour minimiser le délai de transit de paquets applicatifs. Le service offert est accessible par le biais d’une API dont la spécification des primitives de service est fournie, et qu’ont à développer les étudiants. La gestion de l’asynchronisme dans la communication entre l’application et  le service de Transport est également traitée, en liaison avec le cours de programmation système et multithreading. 

L’évaluation des objectifs est faite sur la base d’un rapport de projet intégrateur et d’une appréciation de l’implication des étudiants durant les séances de TP. Des examens écrits et/ou des QCM sont susceptibles de compléter la validation des compétences théoriques.

Objectifs

A la fin de ce module, l’étudiant devra avoir compris et pourra expliquer (principaux concepts) :
la programmation concurrente avec des threads
les interactions possibles avec les systèmes d’exploitation (principaux appels système)
les principales applications distribuées dans l’Internet : http, ftp, sftp, SMTP – POP3/IMAP4, Telnet, SSH + techniques de mutualisation/clusterisation, modèle P2P, applications multimédia
les notions fondamentales associées à la programmation d'applications distribuées dans l’Internet via l’API socket
l’utilisation de machines à états finies (MAE) pour la spécification de protocole

L’étudiant devra être capable :
- d’utiliser et de programmer un système d’exploitation sur des machines mono et multi processeurs (threads)
- d’utiliser l'API socket pour développer (en langage C) une application distribuée dans l’Internet de type client / serveur
- de spécifier sous forme de MAE et de programmer en langage C un protocole de niveau Transport optimisé pour le transfert d’une vidéo en temps réel
- de gérer l'asynchronisme dans la communication entre l’application et le service de Transport
- d'élaborer et de mettre en œuvre des scénarios expérimentaux (visant ici à prouver les bénéfices du protocole optimisé comparativement à un protocole classique de type TCP).

Pré-requis

Introduction aux systèmes d’exploitation (3e année MIC)
Introduction aux réseaux informatiques (3e année MIC)
Langage C (3e année MIC)
Notion d’assembleur (3ème année MIC)

Évaluation

L’évaluation des acquis d’apprentissage est réalisée en continu tout le long du semestre. En fonction des enseignements, elle peut prendre différentes formes : examen écrit, oral, compte-rendu, rapport écrit, évaluation par les pairs…

En bref

Crédits ECTS :

Nombre d’heures : 59.0

EN 1 Clic

ENT

Rejoindre
les équipes

Marchés publics

Soutenir l'excellence

Fondation
INSA
Taxe
apprentissage

INSA Toulouse
135 avenue de Rangueil
31077 Toulouse cedex 4
Tél : 05 61 55 95 13
Fax : 05 61 55 95 00

J'ai toujours été passionné par les avions. 

Après une rentrée en classe préparatoire, il réalise rapidement que ce modèle ne lui correspond pas pleinement. Il trouve alors à l'INSA un équilibre entre exigence académique et ouverture à d'autres centres d'intérêt.

J'aimais aussi lire, sortir, avoir une vie en dehors des études. 

Le choix du génie électrique s'impose ensuite naturellement. Pour celui qui rêve d'aéronautique, cette spécialité représente alors « le centre nerveux des avions ».

 

De la technologie au collectif

Diplômé, après des stages à Motorola, Jean-Marie Garigue rejoint Alcatel, où il travaille sur des systèmes de traitement du signal et de l'image pour satellites. Guidé par son goût pour les technologies, il poursuit ensuite son parcours chez Alcatel puis Thales, dans des domaines aussi variés que les radars, la cybersécurité, la navigation, l'observation optique ou les télécommunications spatiales.

Au fil des années, se renforce cette idée que la performance technique seule ne suffit pas.

La performance technique a besoin de la performance collective pour conserver une longueur d'avance. 

Cette conviction l'amène vers le management de projets puis vers des fonctions de direction. Dans une famille d'enseignants où l'accomplissement collectif comptait davantage que les titres, il voit dans ces responsabilités une occasion d'agir sur la transformation des organisations, leur compétitivité et leur avenir.

Ces responsabilités nourrissent également chez lui un véritable sens entrepreneurial. Au fil de sa carrière, il a vu des entreprises prospérer, se transformer ou parfois disparaître faute d'avoir su anticiper les évolutions de leur marché. Pour lui, l'ingénieur a donc aussi un rôle à jouer dans la capacité des organisations à innover, à se réinventer et à préparer l'avenir.

Après plus de vingt ans chez Thales Alésia Space, il choisit de découvrir un nouvel univers en rejoignant la division avionique de Thales, en tant que responsable de l’ingénierie des équipements, avant d'intégrer Airbus en 2020. Une étape importante pour celui qui se dit particulièrement attaché à la dimension européenne du groupe et à son ancrage territorial.

Diversité, ouverture et sens pratique

Malgré un parcours qui l'a conduit vers de hautes responsabilités industrielles, Jean-Marie Garigue reste profondément attaché au modèle de formation de l'INSA. Il en retient d'abord la diversité. « J'ai eu beaucoup de plaisir à découvrir l'international, à côtoyer des étudiants tunisiens, norvégiens et bien d'autres. Cela ouvre les horizons. »

Cette expérience lui paraît aujourd'hui essentielle dans des entreprises mondiales comme Airbus, où la diversité des parcours nourrit la qualité des décisions.
Il souligne également la force du modèle des sciences appliquées. Les travaux pratiques, les projets et le contact avec le terrain développent un sens concret de la résolution de problèmes qu'il continue de valoriser chez les jeunes ingénieurs.
Mais, à ses yeux, l'INSA forme surtout des ingénieurs capables d'aller au-delà de la technique.

Comprendre le monde pour agir

Jean-Marie Garigue insiste sur l'importance des humanités dans la formation. Elles développent la capacité à analyser, argumenter et dialoguer avec des acteurs très différents. « Les ingénieurs doivent être capables de s'intégrer dans leur environnement et de comprendre le monde dans lequel ils agissent. »

Lecteur d'histoire des sciences et de conquête spatiale, il considère qu'aucune innovation ne peut être pensée indépendamment de son contexte économique, social, environnemental ou géopolitique. Cette compréhension des écosystèmes est devenue selon lui une compétence essentielle. Les entreprises, les technologies et les territoires n'évoluent jamais isolément ; leur performance dépend de leur capacité à interagir avec leur environnement et à aller chercher de l'intelligence à l'extérieur.

Très attaché à sa région d'origine, le Lot, il y voit également une manière de rester connecté aux réalités humaines qui doivent entourer l'innovation.

À cela s'ajoutent d'autres marqueurs du modèle INSA auxquels il reste très attaché : les activités associatives et la pratique sportive obligatoire. « Le sport, la culture, les passions personnelles participent aussi à la formation de l'ingénieur et du développement de sa curiosité. Les entreprises ont besoin de profils ouverts sur le monde, pas seulement de spécialistes enfermés dans leur domaine. »

Former les ingénieurs de demain

Face aux défis contemporains, Jean-Marie Garigue estime que le rôle de l'ingénieur est particulièrement stratégique. Transition climatique, intelligence artificielle, souveraineté technologique ou tensions géopolitiques imposent une approche toujours plus globale des problèmes.

Les compétences scientifiques demeurent fondamentales, mais elles doivent désormais s'accompagner d'autres qualités : apprendre en permanence, exercer son esprit critique, comprendre des écosystèmes complexes et fédérer des équipes.
« Le rôle de l'ingénieur se déplace progressivement de la technique pure vers la capacité à agréger des savoirs, interagir avec différents acteurs et construire une vision. »

Des premiers satellites aux systèmes spatiaux d'Airbus, son parcours illustre une conviction forgée au fil des années : les ingénieurs de demain devront maîtriser les technologies autant que les écosystèmes dans lesquels ils évoluent.

Logo Communauté d'universités et établissements de Toulouse
Logo HR Excellence in research
Logo Bienvenue En France

Dans un souci d'alléger le texte et sans aucune discrimination de genre, l'emploi du genre masculin est utilisé à titre épicène.

INSA Toulouse
Résumé de la politique de confidentialité

Ce site utilise des cookies afin que nous puissions vous fournir la meilleure expérience utilisateur possible. Les informations sur les cookies sont stockées dans votre navigateur et remplissent des fonctions telles que vous reconnaître lorsque vous revenez sur notre site Web et aider notre équipe à comprendre les sections du site que vous trouvez les plus intéressantes et utiles.
En cliquant sur "Accepter", vous acceptez l'utilisation de cookies en provenance de ce site ainsi que notre politique de protection des données personnelles.