|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 5516 (0x158c) Types: TextFile Notes: R1k Text-file segment
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦cdad1c6f9⟧ └─⟦this⟧
******************************************************************************* *** PROJET LSI : UN GESTIONNAIRE DE REQUETES SUR DES OBJETS ( ORB ) *** *** *** *** Pierrel Franck et Luxembourg Anne *** ******************************************************************************* Ce qui est implemente : ---------------------- - un ORB, - un client que l'on peut instancier plusieurs fois car c'est un generique, - un serveur que l'on peut instancier plusieurs fois car c'est egalement un generique, - un paquetage competence_heure pour donner l'heure ou donner le service utilisable. Le client peut faire une demande de service aupres de l'ORB qui lui ira chercher cette competence aupres d'un serveur. L'ORB communique avec les clients et les serveurs. Ce qui n'est pas implemente : ---------------------------- - un observateur, - un filtre. Comment utiliser et lancer nos programmes : ------------------------------------------ - Lancer en premier l'ORB qui se trouve dans le fichier "Lancement_orb", si cette procedure n'est pas lancee au debut, les tests seront un echec. - Ceci etant fait, on peut soit lancer un client (ou plusieurs), soit lancer un ou plusieurs serveurs, sachant que : * un client une fois lance s'enregistrera automatiquement aupres de l'ORB, l'ORB lui repondra en lui donnant son numero d'identificateur unique. Lorsque le client aura recu ce numero (qui est en fait l'accuse de reception de son enregistrement), il va envoyer automa- tiquement une demande de service (ce service est l'heure dans notre cas). Si l'ORB ne connait pas de serveur pouvant donner ce service, il renvoi une reponse au client pour lui dire qu'il ne peut satis- faire sa demande. Lorsque le client obtient cette reponse, il se tue. Si le service est disponible, l'ORB envoie un message de demande de service au serveur trouve et celui-ci lui renvoi la reponse a ce service puis fait une demande de "unregistration" aupres de l'ORB.L'ORB achemine la reponse jusqu'au client, puis le client se tue une fois sa demande satisfaite. Pour lancer un client il faut lancer la procedure "Lancement_client". * un serveur une fois lance s'enregistre automatiquement aupres de l'ORB, l'ORB lui repondra en lui donnant son numero d'identificateur unique. Lorsque le serveur a obtenu ce numero, il envoi automatique- ment sa competence a l'ORB, puis attend l'accuse de reception de l'enregistrement de son service. Ceci etant fait, il se met en attente de reception d'un message venant de l'ORB. Lorsque le serveur a donne un service, il fait automatiquement une demande de "unregistration" aupres de l'ORB. L'ORB va en tenir compte et "enlever" ce serveur de sa liste, puis va lui renvoyer un accuse reception. Le serveur va se tuer des qu'il aura recu cet accuse reception. Pour lancer un serveur, il faut lancer la procedure "Lancement_serveur". NB : Il s'agit donc de "one time" clients et "one time" seveurs. Lorsque l'orb est lance, il est en attente de reception d'un message. Si deux serveurs sont lances l'un apres l'autre (dans notre cas ils ont les meme competences), l'ORB va connaitre deux serveurs pouvant satisfaire a une demande d'heure. Si un client est lance, l'ORB demandera le service au dernier serveur qui s'est enregistre. Lorsque ce serveur a donner son service, il se tue, le client va egalement se tuer lorsqu'il aura obtenu sa demande, et l'ORB aura tenu compte du fait que le serveur n'existe plus. En effet, si un autre client est active, l'ORB ira bien demander le service au serveur restant. POUR UN BON DEROULEMENT DES OPERATIONS, IL EST NECESSAIRE DE : Attendre que l'emission et la reception de l'ORB soient ouvertes avant de lancer un serveur ou un client. Quand un client est lance, attendre qu'il se soit enregistre, qu'il ait eu sa reponse d'enregistrement, qu'il envoit sa demande de service. Lorsque ceci est fait, et qu'il affiche "en attente de reception d'un message", on peut lancer d'autres clients ou serveurs. Quand un serveur est lance, attendre qu'il s'enregistre, qu'il ait eu sa reponse d'enregistrement, qu'il envoit sa competence, qu'il ait eu son accuse de reception de l'enregistrement de sa competence. Lorsque ceci est fait, et qu'il affiche "en attente de reception d'un message", on peut lancer d'autres clients ou serveurs. ***** Pour plus d'informations veuillez vous referer au rapport qui sera ****** disponible au plus tard le premier Avril . Merci et a bientot. ***************************************************************************************