Vous êtes sur la page 1sur 12

Examen 2ime session 2007-2008 page 1 NFP 214 - Systmes rpartis

IPST-CNAM Sans document


Systmes rpartis Dure : 2 heures
NFP 214 Enseignants : LAFORGUE Jacques
Mardi 24 Juin 2008

2ime Session NFP 214

CORRECTION
(COURS)

1. QCM (60 points)


Mode d'emploi :

Ce sujet est un QCM dont les questions sont de 3 natures :


les questions 2 propositions: dans ce cas une seule des 2 propositions est bonne.
 +1 pour la rponse bonne
 1 pour la rponse fausse
les questions 3 propositions dont 1 seule proposition est bonne
 + 1 pour la rponse bonne
 pour chaque rponse fausse
les questions 3 propositions dont 1 seule proposition est fausse
 + pour chaque rponse bonne
 1 pour la rponse fausse

Il s'agit de faire une croix dans les cases de droite en face des propositions.

On peut remarquer que cocher toutes les propositions d'une question revient ne rien cocher
du tout (gal 0) et rpondre au hasard est une trs mauvaise stratgie.

Si vous devez raturer une croix, faites-le correctement afin qu'il n'y ait aucune ambigut.

N'oubliez pas d'inscrire en en-tte du QCM, votre nom et prnom.

Vous avez droit 10% de points ngatifs sans pnalit.

page 1
Examen 1re session 2007-2008 page 2 NFP 214 - Systmes rpartis

NOM: PRENOM:

Un bus CORBA est : Q1


1 une marque de vhicule de transport scolaire
2 un moyen logiciel de stockage et de transport de l'information dans une application rpartie X
Plus srieusement.

Un systme rparti est (condition ncessaire mais pas suffisante) : Q2


1 un systme informatique dans lequel les donnes sont rparties diffrents endroits d'un rseau X
informatique
2 un systme informatique dans lequel les donnes sont centralises dans une base de donnes et
utilises de manires distantes.

Les moyens actuels et modernes de dveloppement d'un systme rparti utilisent les notions de la Q3
programmation objet
1 OUI X
2 NON

Les composants d'un systme rparti s'excutent, gnralement, d'une manire asynchrone Q4
1 OUI
2 NON X

La synchronisation de l'appel d'une mthode distante est indispensable pour centraliser une donne Q5
dans un systme rparti compos de plusieurs objets distribus
1 OUI
2 NON X

La protection aux intrusions extrieures d'un systme rparti est bien matrise par les ORB du march Q6
1 OUI
2 NON X

Le service de nommage dans un systme distribu CORBA : Q7


1 permet de rendre transparent, pour les clients, la localisation des objets distribus sur le rseau X
2 sert d'intermdiaire de communication entre les clients et les serveurs
3 centralise les changes de donnes via les sockets entre tous les objets distribus du rseau

En CORBA, le rsultat de la rsolution d'un IOR est un objet CORBA Q8


1 OUI X
2 NON

En CORBA, la rfrence d'un objet CORBA est srialisable Q9


1 OUI X
2 NON

page 2
Examen 1re session 2007-2008 page 3 NFP 214 - Systmes rpartis

Q 10

1 Ce schma montre que l'IHM et son Applicatif associ communiquent via des mthodes
distantes
2 Ce schma montre que l'interface AppXXXInt contient la description des mthodes que
l'applicatif a le droit d'appeler
3 Ce schma montre que l'IHM utilise les mthodes d'un applicatif pour raliser les traitements X
mtiers demands par l'utilisateur

Le rle du POA dans une architecture CORBA est notamment de : Q 11


1 centraliser le traitement des requtes clientes X
2 crer, modifier, supprimer un servant X
3 dlocaliser un servant d'une machine une autre

En CORBA, un servant est un objet distribu Q 12


1 OUI X
2 NON

En RMI, un objet distribu Q 13


1 est un objet qui hrite de RemoteObject
2 est un objet qui implmente une interface de mthode distante X
3 est un objet qui encapsule un objet qui assure la communication

Le langage JAVA assure la srialisation de ces donnes en utilisant la rflexivit du langage Q 14


1 OUI X
2 NON

En CORBA, il est indispensable de passer par un service de nommage pour utiliser les mthodes dun Q 15
objet distant
1 OUI
2 NON X

page 3
Examen 1re session 2007-2008 page 4 NFP 214 - Systmes rpartis

Le rle de l "interface" Java est essentiel dans la conception dapplication compose dune partie Q 16
reprsentation (IHM) et dune partie applicative (mtier). Pourquoi ?
1 Pour faciliter le portage de l'IHM dans diffrents environnements informatiques X
2 Pour rendre indpendant le composant logiciel IHM des moyens de communication (Socket, X
CORBA, RMI, Http, ...)
3 Pour imposer une communication distante entre l'IHM et l'Applicatif

Q 17

Ce schma vu dans le cadre de latelier 16 (Architectures n Tiers) dcrit les dpendances des
composants d'un systme informatique
1 Lapplicatif utilise linterface AppXXXInt afin de communiquer avec lIHM
2 LIHM cre un objet distribu (IhmXXXClient cre IhmXXRmiImp qui son tour cre
AppXXODInt qui est un objet distribu)
3 Lobjet distribu AppXXXOD cre et encapsule lapplicatif X

Les principes de communication distante dans un systme distribu peuvent tre : Q 18


1 un client reoit une copie de lobjet distribu distant
2 un client reoit une interface de lobjet distribu distant X
3 un client reoit un pointeur sur lobjet distribu distant

L'adaptateur en Java RMI est un process qui s'excute en dehors de toute JVM Q 19
1 OUI
2 NON X

On peut excuter plusieurs adaptateurs sur une mme machine Q 20


1 OUI X
2 NON

En CORBA, un idl est un fichier crit dans le langage IDL spcifi par lOMG Q 21
1 OUI X
2 NON

Un IDL peut contenir la dfinition de plusieurs interfaces Q 22


1 OUI X
2 NON

page 4
Examen 1re session 2007-2008 page 5 NFP 214 - Systmes rpartis

En Java RMI, linstruction lookup : Q 23


1 retourne un stub X
2 retourne un skeleton

En Java RMI, linstruction bind : Q 24


1 permet de crer un objet distribu
2 permet d'enregistrer un objet distribu dans un adaptateur X
3 alloue un port de communication pour l'objet distribu

En CORBA, un service de nommage est utilis par : Q 25


1 uniquement les servants qui ont t enregistrs (bind) dans le service de nommage
2 uniquement les servants de la machine sur lequel le service de nommage a t excut
3 uniquement les servants dun mme VLAN (rseau) X

L'IOR d'un objet CORBA est un objet Java prdfini permettant de se connecter un objet distribu Q 26
1 OUI
2 NON X

L'IOR contient les informations de connexion (localisation rseau) d'un objet distribu Q 27
1 OUI X
2 NON

Le Factory est un servant permettant de crer un objet distribu sur sollicitation distante Q 28
1 OUI X
2 NON

Un bon systme rparti est un systme rpartie qui semble centralis mais dont ces composants ne le Q 29
sont pas
1 OUI X
2 NON

L'en-tte de dclaration d'une mthode main d'une classe JAVA peut-tre: Q 30


1 static public void main(String args[]) X
2 static public void main(int nb_args, String args[])
3 void main(int nb_args, String args[])

L'instruction JAVA permettant de lever une exception est: Q 31


1 throws Exception;
2 throw new Exception("Erreur"); X
3 catch (Exception e)
{
System.out.println("Erreur");
}

Dans une architecture distribu, un objet distribu peut-il utiliser les services d'un autre objet distribu? Q 32
1 OUI X
2 NON

page 5
Examen 1re session 2007-2008 page 6 NFP 214 - Systmes rpartis

Choisir le(s) code(s) correct(s) de la mthode main de GrilleOD.java qui cre l'objet distribu GRILLE Q 33
1 String hostRegistry = args[0];
String portRegistry = Integer.parseInt(args[1]);
urlRegistry="rmi://"+hostRegistry+":"+portRegistry+"/";
Naming.rebind(urlRegistry+"GRILLE");
2 String hostRegistry = args[0];
String portRegistry = Integer.parseInt(args[1]);
Naming.rebind(new GrilleOD(20,20, hostRegistry, portRegistry));
3 String hostRegistry = args[0]; X
String portRegistry = Integer.parseInt(args[1]);
urlRegistry="rmi://"+hostRegistry+":"+portRegistry+"/";
Naming.rebind(urlRegistry+"GRILLE", new GrilleOD(20,20,urlRegistry));

Toutes les mthodes distantes d'un objet distribu Q 34


1 doivent appartenir la mme interface
2 peuvent appartenir plusieurs interfaces X
3 doivent toutes tre implmentes dans le mme objet distribu X

Un ORB du march, permet de crer un objet distribu distance Q 35


1 OUI
2 NON X

CORBA est un logiciel Q 36


1 OUI
2 NON X

Un ORB est une implmentation de CORBA Q 37


1 OUI X
2 NON

Le rle du ORB est de Q 38


1 scuriser les changes de donnes entre les services
2 rpartir les services et les donnes X
3 rendre transparent la localisation des services X

Les composants d'un ORB sont : Q 39


1 un serveur, un client et une interface d'change
2 des APIs, un annuaire et un IDL X

La srialisation est utilis dans les ORB Q 40


1 OUI X
2 NON

La srialisation permet d'crire un objet dans : Q 41


1 un fichier X
2 un socket X
3 une base de donne

La synchronisation des threads entre les objets distribus est indispensable dans un systme rparti Q 42
1 OUI
2 NON X

page 6
Examen 1re session 2007-2008 page 7 NFP 214 - Systmes rpartis

Une mthode distante d'un serveur qui est utilise par plusieurs clients doit tre synchronise Q 43
1 OUI
2 NON X

La synchronisation outrance des mthodes distantes de tous les objets distribus d'un systme rparti, Q 44
nuit la performance globale du systme informatique
1 OUI X
2 NON

La communication Web entre un client et un serveur utilise un ORB pour faire l'interface entre Q 45
1 le client lger d'un navigateur et le serveur Http
2 le serveur Http et les servlets
3 les servlets et les services du systme d'information X

A cause des temps de communication entre les composants d'un systme rparti, il est souvent Q 46
extrmement difficile de connatre l'tat exacte des donnes rparties dans les diffrents services
1 OUI X
2 NON

Des ORB diffrents ne peuvent pas communiquer entre eux Q 47


1 OUI
2 NON X

On peut passer en paramtre d'une mthode distante, un objet distribu afin que le client puisse Q 48
l'utiliser pour utiliser les mthodes distantes de cette objet distribu
1 OUI
2 NON X

En Java RMI, l'instruction lookup retourne (dans le stub), entre autre, le port utilis par l'objet distribu Q 49
pour le traitement des requtes afin que le client crivent ses requtes sur ce port.
1 OUI X
2 NON

En Java RMI, un objet distribu est un serveur de socket dont le port est dtermin par dfaut par la Q 50
classe UnicastRemoteObject
1 OUI X
2 NON

Le Factory est un lment qui permet de factoriser la conception des objets distribus Q 51
1 OUI
2 NON X

Les avantages d'un systme rpartis sont : Q 52


1 un systme rparti est adapt pour donner une qualit de service identique tant local que distant X
2 un systme rparti d'une grande entreprise industrielle est plus mme d'tre scuris qu'un
systme non rparti.
3 dans un systme rparti, il est envisageable de continuer un service mme dgrad X

page 7
Examen 1re session 2007-2008 page 8 NFP 214 - Systmes rpartis

Soit la dclaration de la classe suivante : Q 53


public class MonThread extends Thread
{
public void run()
{
// traitement du thread
}
}

Pour crer le thread et l'excuter, il faut faire les instructions suivantes:


1 Runnable p = new Runnable ();
MonThread q = new Thread(p);
q.start();
2 MonThread p = new MonThread (); X
p.start();
3 MonThread p = (MonThread)(new Thread());
p.start()

Un objet pass en paramtre d'une mthode distante est reu par l'appelant : Q 54
1 sous la forme d'un nouvel objet qui est une copie du paramtre X
2 sous la forme d'une rfrence du paramtre

En CORBA, il est obligatoire d'enregistrer les servants (objets distribus) dans un annuaire (service de Q 55
nommage)
1 OUI
2 NON X

Soit, un IDL qui contient une interface de nom InterfaceDeviseOD. Cette interface gnre une classe Q 56
utilise pour crer, par hritage, les servants. Le nom de cette classe est :
1 InterfaceDeviseODOperations
2 InterfaceDeviseODPOA X
3 InterfaceDeviseODHolder

La rfrence d'un objet CORBA contient l'IOR du servant associ Q 57


1 OUI X
2 NON

page 8
Examen 1re session 2007-2008 page 9 NFP 214 - Systmes rpartis

L'architecture distribue suivante est correcte. Le sens de la flche correspond l'appel d'une mthode Q 58
distante (exemple: OD2-> OD3 : OD2 appelle une mthode distante de OD3). La machine A a un
adaptateur dans lequel OD1 et OD2 se sont enregistrs. La machine B a un adaptateur dans le quel
OD3 et OD4 se sont enregistrs.
MACHINE A MACHINE B

OD1 OD2 OD1 OD2


OD1 OD2 OD3 OD4

Adaptateur A Adaptateur B

1 Le nom de l'objet OD1 doit tre diffrent de celui de OD3


2 Le nom de l'objet OD1 doit tre diffrent de celui de OD2 X
3 Si l'adaptateur A est en panne, je peux enregistrer OD1 et OD2 dans l'adaptateur B.

Soit deux machines A et B, on cre sur A un objet distribu OA, on cre sur B un objet distribu OB. Q 59
Les deux objets distribus s'appellent mutuellement des mthodes distantes. Il est possible de :
1 on cre un seul adaptateur sur A, et OA et OB s'enregistrent dans cet adaptateur
2 on cre un adaptateur sur A, un autre sur B, et OA s'enregistre dans l'adaptateur de A, et OB X
s'enregistre dans l'adaptateur de B
3 on cre deux adaptateurs sur A, et OA s'enregistre dans l'un et OB dans l'autre

En RMI, l'interface d'un objet distribu dfinit Q 60


1 les prototypes de toutes les mthodes de l'objet distribu
2 les prototypes des mthodes distantes de l'objet distribu X

page 9
Examen 1re session 2007-2008 page 10 NFP 214 - Systmes rpartis

2. Questions libres (20 points)


Chaque question est note sur 4 points.

Commentez le schma suivant : Q1

Ce schma met en vidence les diffrents lments (donnes, services, ) majeurs de larchitecture
CORBA utilis pour la mise en uvre dans la cration des objets distribus et lutilisation de ces
derniers.
Ces lments sont reprsents dans les bulles.
Les flches correspondent aux transformations de ces lments entre eux, et la nature des flches au
nom de la mthode qui ralise cette transformation.
Il y a deux circuits : celui ralis par le client et celui ralis par le serveur.

Pour le client, on lit sur le schma que pour obtenir un InterfaceObjetImpl , cest dire une
connexion sur un objet distribu, il faut faire un narrow sur un objet CORBA. Cet objet CORBA
peut tre obtenu de 2 faons diffrentes :
- soit on na pas de service de nommage. Il faut alors lobtenir partir dun IOR en utilisant la mthode
string_to_object ,
- soit on a un service de nommage et il faut lobtenir partir du nom de lobjet distribu enregistr, en
utilisant la mthode resolve .

Pour le serveur, on lit sur le schma que pour crer un objet distribu, il faut crer un servant partir
dun ObjetImpl (qui hrite de ObjetImplPOA) en utilisant la mthode servant_to_reference . On
obtient alors un objet CORBA. Il y a ensuite deux faons diffrentes :
- soit on na pas de service de nommage. Alors, on obtient l IOR de lobjet CORBA en utilisant la
mthode object_to_string .
- soit on a un service de nommage. Alors on enregistre lobjet CORBA dans le service de nommage
avec la mthode bind .

A quoi sert le service de nommage dans une architecture CORBA ? Q2

Le service de nommage est utilis, dans une architecture CORBA, par le serveur, pour enregistrer, un
servant (objet distribu) sous un nom logique.
Il est utilis par les clients, pour localiser lobjet distribu sur le rseau et pour obtenir un canal de
communication avec cet objet distribu et donc appeler les mthodes distantes.

En rsum, le service de nommage sert dannuaire tous les objets distribus dun rseau donn.

page 10
Examen 1re session 2007-2008 page 11 NFP 214 - Systmes rpartis

Commentez le schma suivant : Q3

Ce schma reprsente larchitecture UML dun projet Java dans lequel lIHM et lapplicatif sont spar
par une interface. C'est--dire que lIHM est indpendante de limplmentation de son applicatif.
LIHM utilise les mthodes de lapplicatif travers la description de son interface. Cet applicatif tablit
une communication RMI avec un OD (AppXXXOD).

La classe IhmXXXClient cre les deux objets : IhmXXXRmiImp et IhmXXX. Le 1er est pass en
paramtre du deuxime.
IhmXXX utilise linterface AppXXXInt .
IhmXXXRmiImp implmente linterface AppXXXInt, et utilise linterface AppXXXODInt (sur
lookup).
Le serveur est la classe AppXXXServeur qui cre un OD AppXXXOD qui encapsule un applicatif
metier : AppXXX. La classe AppXXX implmente linterface AppXXXInt.
La classe APpXXXOD hrite de la classe UniCastRemoteObject.

Expliquez comment il est possible de crer de nouveaux objets distribus de manire distante. Q4

Il est possible de crer de nouveaux objets distribus de manire distante, en crant un nouvel objet
distribu qui sert de Factory, c'est--dire qui peu crer son tort dautres objets distribus.
Ce factory a donc au moins une mthode distante permettant de crer un autre objet distribu sur sa
machine.

On est oblig dutiliser un factory car un objet distribu est avant tout un objet cr en mmoire
dun programme. Il faut donc que ce programme existe avant toute chose, que ce programme soit sur
une autre machine du rseau et que ce programme soit utilisable distance. Quoi de mieux quun objet
distribu pour cr un tel programme.

Citez les avantages des systmes rpartis. Q5

page 11
Examen 1re session 2007-2008 page 12 NFP 214 - Systmes rpartis

Vous rpondez ces questions sur une copie vierge en mettant bien le numro de la question, sans oublier votre
nom et prnom.

page 12

Vous aimerez peut-être aussi