0% ont trouvé ce document utile (0 vote)
5 vues2 pages

Serveur Multiprocesseurs en Temps Réel

Transféré par

dmnbiblio
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues2 pages

Serveur Multiprocesseurs en Temps Réel

Transféré par

dmnbiblio
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

DMI Génie Logiciel - S5

C OURS DU S YST ÈME E MBARQU É ET T EMPS R ÉEL


DL N°1
Création d’un serveur multiprocesseurs en mode flot de données(Stream) et paquet de
données(Datagramme)

1 but — la commande shell


— la valeur renvoyer par la commande system
Maitriser les principes de la communication par data-
4. de signaler au serveur maı̂tre qu’il a fini d’exécuter
gramme et flot de données entre processus.
une commande et qu’il peut en traiter une autre

2 Introduction 4 Le serveur maitre


Le but est de proposer à un processus client d’exécuter
c’est le serveur (demon lui aussi) qui offre le service mul-
une liste de commandes shell, toutes indépendantes les
tiprocesseurs” sur Unix en mode data-gramme ou flot de
unes des autres, sur plusieurs machines. La répartition
données aux client.
des commandes sur ces machines doit être transparente
répartit le travail sur plusieurs serveurs esclaves. le ser-
veur maitre donne ainsi l’impression d’être multiproces- A son lancement, on doit lui fournir la liste des serveurs
seurs”. esclaves qu’il peut utiliser. La liste des serveurs esclaves
est un fichier dont les lignes ont le format suivant :
Ce système se compose donc de <nom machine serveur esclave> <numéro de port
— un serveur maı̂tre esclave>
— N serveurs esclaves (pour ce DL choisizzez B etl que
3 ≤ N ≤ 5)
Pour chaque client qui lui demande ce service, son rôle
est :
3 Un serveur esclave 1. de recevoir le nom d’un fichier de commandes. Ceci
peut être vu comme l’initialisation d’une demande de
ce type de serveur est un demon (boucle sans fin) et offre service par un client.
un service dans le domaine Unix en mode Data-gramme.
son rôle est : 2. de transférer le contenu de ce fichier sur sa machine
hôte.
1. de recevoir un data-gramme resp. flot de données du
serveur maı̂tre contenant : 3. de déléguer l’exécution des commandes contenues
— la commande shell à exécuter (on suppose que la dans le ficher sur les serveurs esclaves dont la liste est
longueur de la commande ne peut excéder la taille passée en paramètre. l’exécution de ces commandes
d’un paquet Unix) se fera donc en parallèle sur les machines des serveurs
— l’adresse du client qui a envoyé cette commande esclaves.
2. d’éxecuter la commande sur sa machine. On pourra se
servir de la commande system qui exécute une com- 5 Un client
mande et renvoie :
— −1 sii la commande n’a pas pu s’exécuter C’est le processus qui est client du service Unix en mode
— > 0 si la commande s’est ma exécutée data-gramme ou flot de données du serveur maı̂tre. Il doit
— 0 si tout s’est bien passé donc respecter le protocole suivant :
(faire man system pour plus d’informations sur — Envoyer le nom du fichier de commandes au serveur
le compte ou sur le fonctionnement de cette com- maı̂tre
mande) — Lui transférer ensuite le contenu du fichier de com-
3. de renvoyer le compte rendu de l’exécution de cette mandes
commande au client. — Attendre le compte rendu de l’exécution de chaque
ce compte rendu est un data gramme contenant : commande pour vérifier si elle s’est bien déroulé.

1
DMI Génie Logiciel - S5

6 Synopsis

7 Rapport

Votre rapport sur ce DL devra comporter :


1. Une justification de choix de conception de vos programme, c’est à dire une analyse du problème et un explication de
votre solution.
2. Les structure de data-gramme et flot de données utilisées
3. Les fichier sources des processus ” client ”, ” serveur maı̂tre ” et ” serveur esclave”.

Vous aimerez peut-être aussi