%DUELHU)UpGpULF*, /RXUG5RGROSKH*, (',7,21&2//$%25$7,9( 5$33257



Documents pareils
1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Utiliser Net Support School (NSS Version ) Philippe Cailleretz Er-Tice Avion mars 2011.

Premiers pas avec NetSupport SCHOOL

Guide de présentation du courrier électronique. Microsoft Outlook Préparé par : Patrick Kenny

Utilisation du client de messagerie Thunderbird

Guide de l administrateur DOC-OEMCS8-GA-FR-29/09/05

Tutoriel D utilisation. Du PGI Open line d EBP

"! "#$ $ $ ""! %#& """! '& ( ")! )*+

Écrire en ligne et de manière collaborative avec Etherpad. Pour les utilisateurs (enseignants, élèves)

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

PROTEGER SA CLE USB AVEC ROHOS MINI-DRIVE

FAIRE SES COMPTES AVEC GRISBI

1. Cliquez sur dans le coin supérieur gauche de l'écran 2. Sélectionnez la Langue de l'interface désirée 3. Cliquez sur

Installation Guide Serveur d impression et de stockage multifonctions à 2 ports USB 2.0 haute vitesse Manuel de l utilisateur

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Guide d installation

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Styler un document sous OpenOffice 4.0

LOGICIEL DE GESTION DE DOCUMENTS PDF : PROJET INFO 1

Groupes et utilisateurs locaux avec Windows XP

Publier un Carnet Blanc

GUIDE D UTILISATION DU BACKOFFICE

GUIDE D UTILISATION LE PRESENT DOCUMENT VISE A FACILITER LA PRISE EN MAIN DE L@GOON CLOUD. * Synchroniser votre entreprise

Atelier Administration

On trouvera sur le site du CCDMD un exemple d album construit avec Cantare. (

Utilisation de l éditeur.

Téléphoner depuis le PC Vue d'ensemble

CREER UN PETIT SITE WEB EN COMPOSANT DES PAGES HTML

Comment retrouver le fichier "bingo" sauvegardé dans l'ordinateur? Socle commun

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

Ouvrir le compte UQÀM

TRAITEMENTS DE FIN D ANNEE

S approprier les TICE 1 dans sa pratique pédagogique

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

1 Mesure de la performance d un système temps réel : la gigue

GdsCompta. Logiciel de comptabilité générale

MODE OPERATOIRE CIEL GESTION COMMERCIALE VERSION EVOLUTION BTS PME PMI

1 - Se connecter au Cartable en ligne

Troisième projet Scribus

YAPBA M. Logiciel libre de suivi de vos comptes

Afin d accéder à votre messagerie personnelle, vous devez vous identifier par votre adresse mail et votre mot de passe :

2 Grad Info Soir Langage C++ Juin Projet BANQUE

Installation et configuration de base de l active Directory

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

Traitement des données avec Microsoft EXCEL 2010

Informations sur l utilisation du webmail du CNRS. Webmail du CNRS. Manuel Utilisateur

cbox VOS FICHIERS DEVIENNENT MOBILES! POUR CLIENT MAC OS X MANUEL D UTILISATION

PLAN. Qui peut faire quoi? Présentation. L'internaute Consulte le site public

Créer le schéma relationnel d une base de données ACCESS

CMS Modules Dynamiques - Manuel Utilisateur

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

Administration du site

Cours 420-KEG-LG, Gestion de réseaux et support technique. Laboratoire 08. D. Création d usagers et de groupes pour la configuration des droits NTFS

Publier dans la Base Documentaire

Nokia Internet Modem Guide de l utilisateur

Icônes des didacticiels. Aliro - le contrôle d accès sur IP sans complication.

Support pour les langues s écrivant de droite à gauche

TP1 : Initiation à l algorithmique (1 séance)

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Création de Site Web. Atelier Cyber-Base Emploi Pays Beaujolais

Une ergonomie intuitive

Utilisation de la Plateforme Office365 et d Oultlook Web App

Introduction à l informatique en BCPST

Restaurer des données

Configuration de Virtual Server 2005 R2

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

MO-Call pour les Ordinateurs. Guide de l utilisateur

Les Enseignants de l Ere Technologique - Tunisie. Niveau 1

MANUEL DE PROCÉDURE POUR LA MISE À JOUR DU SITE DE FIDAFRIQUE. Documentation utilisateur Octobre 2005

Groupe Eyrolles, 2006, pour la présente édition, ISBN :

CARPE. Documentation Informatique S E T R A. Version Août CARPE (Documentation Informatique) 1

Comment autoriser un programme à communiquer avec Internet sous Vista?

TP1 - Prise en main de l environnement Unix.

Le langage C. Séance n 4

Dragon Naturally Speaking 13

Symantec Backup Exec 12.5 for Windows Servers. Guide d'installation rapide

SOMMAIRE. Comment se connecter?

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

SQL Data Export for PS/PSS

Soyez accessible. Manuel d utilisation du CMS

Tutoriel. Votre site web en 30 minutes

Tutorial Terminal Server sous

COURS WINDEV NUMERO 3

Guide pour l'installation ou la mise à jour de Foxmail 7.1 en Français

Atelier Le gestionnaire de fichier

Terminal Infocomm et Poste Infocomm

SOMMAIRE. 1. Connexion à la messagerie Zimbra Pré-requis Ecran de connexion à la messagerie 4

Swisscom Webmail - mode d emploi

Document d accompagnement pour l utilisation du Cartable en ligne Lycée des Métiers Fernand LÉGER 2013/2014

WinBooks Logistics 5.0

Aide Webmail. L environnement de RoundCube est très intuitif et fonctionne comme la plupart des logiciels de messagerie traditionnels.

Créer une base de données

TRUECRYPT SUR CLEF USB ( Par Sébastien Maisse 09/12/2007 )

Module Prestashop Moyen de paiement - Financement de commandes à crédit avec Sofinco

I. Objectifs de ce document : II. Le changement d architecture :

< Atelier 1 /> Démarrer une application web

HTML. Notions générales

Avertissement : Nos logiciels évoluent rendant parfois les nouvelles versions incompatibles avec les anciennes.

Utilisez Toucan portable pour vos sauvegardes

Gestion des sauvegardes

Transcription:

%DUELHU)UpGpULF*, /RXUG5RGROSKH*, (',7,21&2//$%25$7,9( 5$33257

6200$,5( 1. Cahier des charges...3 a. Création...3 b. Ouverture...3 c. Modification...3 d. Fermeture...3 e. Schéma de l'interface...4 2. Spécifications...5 a. Synchronisation entre les processus lecteurs et rédacteurs...5 b. Envoi de signaux pour la communication entre terminaux :...6

&DKLHUGHVFKDUJHV On souhaite réaliser un éditeur classique (pas d interface graphique) qui permette l édition collaborative, c est-à-dire que plusieurs personnes peuvent accéder à un document simultanément. Cet éditeur ne prendra pas en charge le formatage de texte (gras, italique ) ; quatre fonctions sont attendues dans cet éditeur : créer un document, ouvrir un document, modifier/enregistrer un document et fermer un document. Afin de pouvoir choisir une fonction à n importe quel moment de l édition d un document, il est nécessaire de réserver une console pour un menu répertoriant les fonctions, et ce pour chaque utilisateur. Le menu se présentera sous la forme d une liste de choix numérotés de un à quatre. Au lancement de l éditeur, la console affiche le menu ; l utilisateur a le choix entre la création et l ouverture d un document. Ensuite, une fois un document ouvert ou créé, l utilisateur a la possibilité de le modifier ou de le fermer. D&UpDWLRQ Lorsque l option création est lancée, on demande un nom de fichier à l utilisateur. Le programme vérifie notamment que le nom de fichier ne comporte de caractères interdits ; il vérifie aussi la longueur de ce nom. Si le nom est incorrect, on demande à l utilisateur de saisir un autre nom. On note que le fichier est créé dans un répertoire fixe accessible à tous, par exemple //gi/lo41, c est-à-dire le même répertoire utilisé pour l emplacement de l éditeur. E2XYHUWXUH Lorsque l utilisateur appelle la fonction ouverture, l éditeur va demander un nom de fichier à cet utilisateur ; on vérifie que ce nom de fichier existe dans le répertoire du programme. Si ce n est pas le cas, le programme demande à l utilisateur de saisir un nouveau nom de fichier valide. Quand le nom de fichier existe, l éditeur ouvre ce document dans une nouvelle console réservée à l'affichage et au rafraîchissement du document ; si ce document est déjà ouvert, le programme le notifie à l utilisateur sans le rouvrir. F0RGLILFDWLRQ La fonction modification est assurée par la touche YDOLGDWLRQ (HQWUpH). Quand un utilisateur appuie sur cette touche, la ligne qu'il vient de taper est ajoutée au document ouvert dans sa console d affichage ainsi que celle de chaque utilisateur. Un enregistrement est également effectué à cet instant. G)HUPHWXUH Lorsque l utilisateur choisit l option fermeture, seule la fenêtre d'affichage du document est fermée, l'autre console affichant le menu et la saisie restant ouverte, pour une autre ouverture de fichier éventuelle.

H6FKpPDGHOLQWHUIDFH L interface très simple se présente de la manière suivante : Chaque utilisateur ouvre deux consoles lorsqu il lance le programme. La FRQVROHQƒ montre le document à l ouverture ; la FRQVROHQƒoffre les commandes nécessaires telles que FUpDWLRQ, RXYHUWXUH, PRGLILFDWLRQ et IHUPHWXUH. Les modifications potentielles apportées au document sont d abord rédigées dans la FRQVROH Qƒ ; lorsque l utilisateur décide des les valider, il choisit la commande 0RGLILFDWLRQ (touche (QWUpH). A ce momentlà s applique le SULQFLSHG H[FOXVLRQPXWXHOOH qui empêche un autre utilisateur de valider aussi ses modifications pendant le très court laps de temps dont la première modification a besoin. Une fois la modification effectuée, les autres utilisateurs voient leur document mis à jour en temps réel.

6SpFLILFDWLRQV D6\QFKURQLVDWLRQHQWUHOHVSURFHVVXVOHFWHXUVHWUpGDFWHXUV Le fichier créé est une ressource commune à tous les processus utilisateurs, certains de ces processus étant considérés comme OHFWHXUV (ceux voulant lire dans le fichier) et d autres comme UpGDFWHXUV(ceux voulant écrire dans le fichier). On obtient donc le modèle des Lecteurs-Rédacteurs : Lecteur Lire Lecteur Lire Fichier Lire Lecteur Ecrire Rédacteur 3ULQFLSHV La lecture est possible, simultanément par plusieurs lecteurs, à condition qu il n y ait aucune écriture. L écriture n est possible que s il n y a ni lecture ni autre écriture en cours. Pour synchroniser ces processus, nous devons appliquer une méthode d exclusion mutuelle. Nous pensons que la synchronisation /HFWHXUV5pGDFWHXUV par sémaphores est la plus adaptée. L algorithme d une modification dans notre cas serait le suivant : SURFHGXUHPRGLILFDWLRQYHUURXLOODJHWH[WHGRFXPHQW GpEXW WDQWTXHYHUURXLOODJH YUDLIDLUH «ILQWDQWTXH VLQRQYHUURXLOODJH YUDL GRFXPHQW GRFXPHQWWH[WH YHUURXLOODJH IDX[ ILQVL ILQ Dans cette procédure, YHUURXLOODJH est une variable booléenne globale qui indique si le document est bloqué en écriture ou non. Ce type de procédure est lancé chaque fois qu un utilisateur valide sa modification ; ainsi on évite les modifications simultanées

préjudiciables au bon fonctionnement de l éditeur. La boucle WDQW TXH met simplement en attente l utilisateur d un déverrouillage du document en écriture. E(QYRLGHVLJQDX[SRXUODFRPPXQLFDWLRQHQWUHWHUPLQDX[ Pour rafraîchir les fenêtre d affichage utilisateurs ou encore pour fermer sa fenêtre d affichage à la fermeture du fichier, nous utiliserons l envoi de signaux aux terminaux correspondants et donc, il nous faudra connaître le SLG de chaque console d affichage. Nous récupéreront donc ce SLG à l ouverture du fichier et, pour que chaque processus utilisateur puisse accéder à ces numéros, nous les stockerons dans un fichier. Nous devrons bien sûr mettre à jour ce fichier, c'est-à-dire qu à chaque nouvelle ouverture de fichier, nous rajouterons un SLG et à chaque fermeture de fichier, nous effacerons le SLG correspondant. Comme nous allons de nouveau utiliser un fichier avec des opérations de lecture écriture, nous devons bien sûr synchroniser les processus à l aide de l exclusion mutuelle décrite précédemment. Ainsi, nous utiliserons deux systèmes d exclusion mutuelle similaires. Pour conclure, nous devons préciser que ces idées de conception sont celles qui nous semble les plus adaptées au vu de nos connaissances actuelles. Il est par conséquent possible que durant la phase de codage, des difficultés imprévues nous incitent à rechercher des solutions différentes qui seraient plus facilement réalisables.

Réalisation