version PDF - Flash informatique
Transcription
version PDF - Flash informatique
Bal des Pendules Sommaire FI 2/2005 Francois.Roulet@epfl.ch, Domaine IT 1 Bal desPendules Francois Roulet 2 DIT-info 3 Contrôle d’accès Daniel Grandjean@ 9 Sysquake 3 Yves Piguet 12 Indico, un logiciel de pointe pour la gestion de conférences David Bourillot & Jean-Yves Le Meur 15 IM2.DI, intégration de documents dans des archives multimédias de réunions Denis Lalanne, Rolf Ingold, Didier von Rotz 18 Smart Multimedia Archive for Conferences (S.M.A.C.) Omar Abou Khaled, Rudolf Scheurer, Denis Lalanne, Rolf Ingold & Jean-Yves Le Meur 21 Le mode Document Maître dans Word Jacqueline Frey 23 Programme des cours 26 Prenez le large avec Firefox Olivier Burri 27 Solaris 10 – les nouvelles fonctionnalités majeures Pascal Fabbri Introduction Peut-être avez-vous remarqué les allers et venues sur le site EPFL d’un surprenant véhicule électrique à deux roues parallèles et coaxiales? Il s’agit du fameux Segway, engin révolutionnaire de par sa conception, son aptitude à tourner sur place, et dont la surface occupée au sol n’excède que légèrement celle d’un piéton. Ceci en fait le véhicule le plus maniable qui puisse exister, pouvant circuler aussi aisément à l’intérieur d’un bâtiment qu’à l’extérieur, notamment grâce à sa faculté d’effectuer une rotation sur lui-même. Il redéfinit la relation homme-machine, en formant en quelque sorte une prolongation du corps humain, puisque pour amorcer une translation, il suffit d’exercer une pression vers l’avant, soit sur le guidon, soit avec la pointe des pieds, pour que le Segway prenne aussitôt de la vitesse. Très rapidement, cela devient un réflexe parfaitement naturel, à la manière du déclenchement d’un virage à ski par pression sur une des carres. Historique Alors que le Segway, nom de code Ginger, a été présenté en première mondiale le 3 décembre 2001, il faut rappeler que l’idée d’un tel véhicule avait germé en 1996 déjà, au laboratoire d’Electronique Industrielle de l’EPFL. Après une étude théorique en suite en page 6 Prochaines parutions délai rédaction 3 17.03.05 4 07.04.05 5 12.05.05 6. 09.06.05 parution 05.04.05 26.04.05 31.05.05 28.06.05 fi 2 – 1er mars 2005 – page 1 DIT-info FORUM-IT Pour garantir des prestations de qualité et pour maintenir des relations privilégiées avec les relais dans les unités que sont les responsables informatiques locaux, le DIT organise des réunions d’information. Plusieurs réunions thématiques et régulières existent déjà, pour les webmasters, pour les responsables ActiveDirectory, etc., mais il nous a semblé utile de mettre sur pied des réunions plus généralistes. Les FORUMS-IT ne sont pas destinés aux utilisateurs finaux mais bien à ceux dont les fonctions, au moins partiellement, sont de gérer un parc informatique, et d’en garantir la sécurité. L’avenir nous dira s’ils sont utiles et à quelle fréquence il faudra les renouveler. Le premier FORUM-IT aura lieu le 3 mars 2005 à 10:15 salle MA11 Les thèmes abordés seront: ❚ la sécurité informatique à l’EPFL: le point sur les mesures centrales, les mesures locales, ... ❚ l’avenir du réseau du campus (extension du Wireless, des prises libre-service, protocole 802.1X) ❚ la définition du rôle d’un responsable informatique ❚ l’application ACCRED et son évolution ❚ et bien sûr une plage consacrée aux questions/réponses. gratuits à Internet va entraîner une diminution de l’intérêt de cette solution. De plus, l’arrivée de l’ADSL à bon prix en 2002 et la mise en place d’accès par tunnel VPN vont contribuer à plomber définitivement le sort de ce service. Par conséquent, les derniers utilisateurs actifs ont déjà été avertis de la mise hors service de CARPE à fin 2005. Les autres possibilités d’accéder à EPNET depuis son domicile ou en voyage sont décrites sur le Web (accessibles depuis http://network.epfl.ch). Jacques.Virchaux@epfl.ch Stagiaire à la STI Stéphane Galley a terminé son stage au sein du groupe téléinformatique du DIT et nous a quitté fin janvier. Nous formulons tous nos vœux pour qu’il trouve un travail où il puisse mettre à contribution les acquis de son stage. Jonathan Reymond a pris le relais depuis le 1er février et va aussi pouvoir se perfectionner dans le vaste domaine des réseaux pendant ces douze prochains mois. Nous lui souhaitons une cordiale bienvenue au sein du DIT-TI et espérons que ce stage lui apporte un complément utile pour sa future carrière. Jacques.Virchaux@epfl.ch Vous pouvez poser vos questions par e-mail à webmaster. dit@epfl.ch, cela nous permettra de mieux préparer nos réponses. Jacqueline.Dousson@epfl.ch Flash informatique A Noël: tragique destin de CARPE A l’instar des coutumes bien établies en Tchéquie ou en Pologne, le Noël de l’an de grâce 2005 verra le sacrifice de la CARPE (Centre d’Accès remote pour EPNET) sur le site de l’EPFL. Par décision de la COSI le 2 février dernier, il a été admis que ce système est devenu obsolète et que rien ne pouvait justifier de le modifier ou de le remplacer. En effet, le projet commencé en 1989 avait suivi une évolution permanente, environ tous les 5 ans depuis sa mise en exploitation. Mais dès 1999, l’explosion des accès fi 2 – 1er mars 2005 – page 2 Les articles ne reflètent que l’opinion de leurs auteurs. Toute reproduction, même partielle, n’est autorisée qu’avec l’accord de la rédaction et des auteurs. Abonnement à la version électronique du FI en envoyant un courrier à: fi[email protected]fl.ch Rédacteur en chef: Mise en page & graphisme: Comité de rédaction: Impression: Tirage: Adresse Web: Adresse: Téléphone: Jacqueline Dousson, fi@epfl.ch Appoline Raposo de Barbosa Omar Abou Khaled, Aristide Boisseau, Jean-Daniel Bonjour, Nicolas Bouche, Milan Crvcanin, JeanDamien Humair, Pierre Kuonen, Maciej Macowicz, Daniel Rappo, François Roulet, Christophe Salzmann & Jacques Virchaux Atelier de Reprographie EPFL 4000 exemplaires dit.epfl.ch/FI-spip/ Domaine IT EPFL CP 121, CH-1015 Lausanne +4121 69 32246 & 32247 Contrôle d’accès Daniel.Grandjean@epfl.ch, Domaine IT L’ accès fiable et efficace aux réseaux IP est devenu indispensable pour la recherche, l’éducation et la production. L’usage de cette précieuse ressource est souvent considéré comme étant un accessoire (ou attribut) de l’outil informatique alors qu’elle en est le noyau. Repères historiques 1994-2003: PPP (Point to Point Protocol) (des dizaines de RFC!) 1997-2000: RADIUS (Remote Authentication Dial In User Service) (RFC 2058 remplacé par 2138, puis 2865) 1998-2004: EAP (Extensible Authentication Protocol) (RFC 2284 remplacé par 3748) 1999-2003: TLS (Transport Layer Security protocol) (RFC 2246 et étendu par 3646) 2001: IEEE 802.1X 2003: WPA Wi-Fi Protected Access 2004: IEEE 802.11i Un objet raccordé de manière permanente au réseau, hérite de ce fait une connexion réseau avec les privilèges (ou les contraintes) alloués à cette machine. Dans ce cas de figure, l’accès au réseau se résume alors à l’accès physique à la machine, ou du moins à son raccordement physique. Il faut toucher pour être raccordé. Le système d’exploitation de la machine peut encore présenter une ligne de défense ténue: l’utilisateur en quête de connectivité devra ouvrir une session. C’est-à-dire se faire authentifier par le système. Le système autorise ensuite l’usager à faire ce qu’il est en droit d’accomplir. Dans le cas de systèmes multi-utilisateurs, l’accès au réseau est partagé par tous les utilisateurs hébergés simultanément par la machine. Les communications ne sont généralement pas ventilées par utilisateur, ce service n’étant pas inclus dans la majorité des systèmes d’exploitation. La totalité du trafic est donc imputée à la machine. Si cette vision du monde prévaut encore dans de nombreux cas, la multiplication des objets dépendants de la présence d’une connexion réseau introduit de nouveaux modèles: ❚ les objets sont portables ou transportables, ils peuvent sauter d’une prise murale à l’autre, mais toujours dans les limites du campus. Des indélicats peuvent être tentés de se substituer à des équipements fixes. Exemple: notebook mobile, imprimante fixe. ❚ les réseaux utilisent les technologies sans fil (radio). Les objets ne sont plus trivialement localisables. L’accès physique au réseau n’est plus nécessaire. Le trafic est facilement observable par la brute, le bon et le méchant. Exemple: notebook avec carte WIFI, PDA, téléphone ❚ les utilisateurs ont plusieurs objets, ils peuvent être personnels ou de fonction. Exemple: un PDA privé et un téléphone de service. ❚ les utilisateurs appartiennent à des entités administratives disparates. Exemple: étudiants, collaborateurs, consultants, visiteurs,... Pour allouer au nomade (par l’intermédiaire de l’objet qu’il utilise) les services réseau qu’il est en droit d’obtenir, l’infrastructure doit être pourvue de certaines fonctionnalités nouvelles: ❚ un moyen d’authentifier un utilisateur ou une machine; ❚ être à même de concrétiser les décisions prises comme suite à l’authentification, c’est-à-dire les résultats de l’autorisation; ❚ et le cas échéant de protéger la confidentialité du trafic. En fin de compte si les outils sont nouveaux, les tâches ont un air de déjà vu: rappelez-vous votre bonne vieille connexion modem sur votre ligne téléphonique. Vous vous connectez. Vous montrez patte blanche et vous êtes sur l’Internet. Votre opérateur vient de vous authentifier et de vous fournir une prestation correspondante à votre plan tarifaire. Le tout étant bien sûr comptabilisé. Concrètement, vous avez établi une communication point à point entre votre ordinateur et un port dans le central téléphonique avec le protocole PPP. Vous avez été authentifié par le serveur RADIUS de votre fournisseur d’accès Internet [ISP](Internet Service Provider). Le succès de PPP dans les environnements les plus variés a mis en évidence qu’il était difficile de lui adjoindre de nouvelles méthodes d’authentification. Il en découla la création d’un système d’authentification modulaire reposant sur un socle unique: le protocole EAP. Un a s s e m b l a g e d e s p r o t o c o l e s P P P, E A P, IEEE802{.3 .5 .11} et subsidiairement de RADIUS est connu comme la norme IEEE802.1X. 802.1X définit un mécanisme relais d’authentification au niveau de la couche 2 du modèle ISO 2 (fig. 1) pour les réseaux physiques de type IEEE802 {Ethernet, Token Ring, r a d i o } e t P P P. Le mécanisme d’authentification 802.1X intervient avant d’éventuels mécanismes d’auto configuration tels fig. 1 – les sept couches ISO que DHCP (Dynafi 2 – 1er mars 2005 – page 3 Contrôle d’accès mic Host Configuration Protocol) ou PXE (Pre-Boot Execution Environment). 802.1X ❚ permet le contrôle d’accès aux ressources même si l’accès physique au réseau est incontrôlable; ❚ organise, le cas échéant, la distribution de clefs cryptographiques aux clients sans fil. ❚ est conçu pour être utilisé partout où l’on peut appliquer le concept de point d’accès (port ou interface pour les anglophones). 802.1X introduit le concept de port contrôlé (PAE pour Port Access Entity). fig.2 – port PAE Les acteurs principaux du protocole Trois entités interagissent et sont nécessaires à une authentification 802.1X: L’authentificateur ou l’authenticator. Il gère l’état du port contrôlé. Il a la responsabilité d’exiger une authentification de la part du système à authentifier. Un authentificateur est typiquement le port physique ou logique d’un commutateur ou switch réseau. Dans une infrastructure sans fil, l’authentificateur peut être une borne radio ou Access Point [AP]. L’authentificateur relaie les informations d’authentification vers le serveur d’authentification. L’authentifié, le client, nommé supplicant dans la littérature 802.1X ou peer dans la terminologie EAP. Le supplicant a la tâche de présenter les informations d’autorisation à la demande de l’authentificateur. Dans certaines configurations, le supplicant peut agir spontanément. Concrètement, l’adaptateur Ethernet d’un notebook est un supplicant s’il est pourvu d’un client logiciel conforme à la norme 802.1X. Par extension, ce logiciel est souvent nommé supplicant. Un composant de l’infrastructure réseau peut aussi jouer le rôle de supplicant. Tel un port de switch raccordé à un autre switch. Un Access Point utilisé comme passerelle ou bridge radio. Le serveur d’authentification ou authentication server procure un service d’authentification à l’authentificateur. Ce service détermine, à partir des éléments (essentiellement l’identité) de la requête du demandeur, les services qui lui sont accessibles. Ce serveur peut être sur la machine qui sert d’authentificateur ou accessible à ce dernier via le réseau. Concrètement un serveur RADIUS doté des extensions EAP remplit ce rôle. Il assortit son message d’acceptation de paramètres de configuration du port à l’usage de l’authentificateur. fi 2 – 1er mars 2005 – page 4 fig. 3 – acteurs principaux Fonctionnement général du protocole L’état du port de l’authentificateur détermine si le supplicant est autorisé à accéder le réseau. L’état initial d’un port est non contrôlé ou non autorisé. C’est-à-dire que le port est imperméable à tout le trafic qui n’appartient pas à 802.1X. Le port passe dans l’état autorisé ou contrôlé dès que le supplicant est positivement authentifié. Tout le trafic du client circule alors librement au travers du port. Le trafic reste bien sûr subordonné à la présence de la connectivité au niveau physique ou à l’établissement du link. Les ports des équipements doivent être en mode actif ou up. Les échanges EAP reposent sur seulement quatre messages: ❚ EAP-Request ❚ EAP-Success ❚ EAP-Response ❚ EAP-Failure Le cœur de 802.1X est la définition de l’encapsulation des paquets EAP pour les réseaux IEEE802. Les trames EAP over LAN [EAPoL] sont pour les réseaux filaires, les trames EAP over WLAN [EAPoW] pour les réseaux Wi-FI. Quatre messages, non indispensables, sont ajoutés: ❚ EAPoL/EAPoW-Start ❚ EAPoL/EAPoW-Logoff ❚ EAPoL/EAPoW-Key ❚ EAPoL/EAPoW-Encapsulated-ASF-Alert L’échange 802.1X peut se résumer à ce dialogue au niveau de la couche ISO 2 Contrôle d’accès Le supplicant utilise le EAPol/EAPoW-Start pour tester la présence d’un Authenticateur. Mais l’authenticateur peut devancer le supplicant en émettant un EAP-Request dès la détection d’une connexion. Le supplicant n’est pas forcé de demander sa déconnexion par un EAPoL/EAPoW-Logoff. Il peut filer à l’anglaise. La perte du link provoque le retour du port dans l’état non autorisé. Le client doit se re-authentifier s’il est physiquement débranché ou s’il perd son association avec la borne radio. Une authentification 802.1X EAP est le socle de base. De nombreuses autres méthodes d’authentification peuvent venir se greffer par-dessus. Les plus répandues sont EAP-MD5, LEAP, EAP-TLS, EAPTTLS, PEAP. La grande majorité des supplicants disponibles aujourd’hui suppportent la méthode PEAP/MS-CHAP-V2. Cette méthode illustre bien comment les différents protocoles sont imbriqués à la manière de poupées russes. Passons succintement en revue une authentification PEAP/MS-CHAP-V2 sur un réseau filaire: ❚ le link est up. L’authentificateur émet une EAP-Request: identity. ❚ le supplicant émet une EAP-Response où il donne son identité et exprime le souhait d’utiliser PEAP. Cette identité est l’outer identity et est visible d’un observateur extérieur. L’authentificateur relaie l’EAP-Response au serveur RADIUS mais cette fois emballée dans une trame RADIUS-Access-request. ❚ la réponse du serveur RADIUS est un RADIUS-Access-Challenge emballant une EAP-Request:start PEAP. L’authentificateur passe l’EAP-Request:start PEAP au supplicant. ❚ le supplicant et le serveur RADIUS échangent une série de messages EAP-PEAP. Le but de cet échange est d’établir un tunnel TLS. Dans cette opération le certificat du serveur RADIUS est vérifié. Le client a donc la certitude qu’il s’adresse à un serveur de confiance. Ils négocient également l’établissement d’un canal chiffré entre eux. Ce canal est similaire à celui entre un navigateur Web et un site bancaire. Le canal TLS établi est utilisé pour mener à bien une authentification EAP-MS-CHAP-V2. L’authentificateur se contente de transformer les trames EAP-Response du supplicant en trame RADIUS-Access-Request et les trames RADIUS-Access-Challenge en trames EAP-Request. Comme tous les observateurs potentiels de ce trafic réseau, il n’est pas capable d’en décrypter le contenu. Tout ce qui suit à lieu sur le canal sécurisé et entre la supplicant et le serveur RADIUS: ❚ le serveur RADIUS émet une EAP-Request:identity. ❚ le supplicant émet une EAP-Response avec son identité. Cette identité est l’inner identity et est invisible d’un observateur. ❚ RADIUS émet une EAP-Request:EAP-MS-CHAP-V2 Challenge et lance un défi au client. ❚ le supplicant relève le défi du serveur RADIUS et en profite pour le défier à son tour dans un EAP-Response: EAP-MS-CHAP-V2 Response. ❚ RADIUS émet un EAP-Request:EAP-MS-CHAP-V2 Success qui informe le client que le défi est relevé et il relève celui du client. ❚ le supplicant répond avec un EAP-Response:EAP-MSCHAP-V2 Ack si le serveur RADIUS a relevé son défi. A ce moment, il est établi que le client et le serveur connaissent le même mot de passe pour une identité donnée. Le client a la certitude qu’il n’a pas conversé avec un imposteur. ❚ Toujours dans le tunnel, RADIUS émet un EAP-Success. Mais comme l’emballage extérieur est un RADIUS-Access-Accept, l’authentificateur sait qu’il est temps d’ouvrir le port contrôlé. Le client a accès au réseau. Le cas échéant, c’est ici que prend place la phase de configuration de la connexion IP: DHCP acquisition d’une adresse, PXE boot réseau... fig. 5 – Exemple d’une configuration Ethernet Rapide à configurer pour l’utilisateur final, EAP/MSCHAP-V2 est aussi bien adapté au contrôle d’accès sur un port Ethernet que pour les réseaux Wi-Fi. Toutefois, la mise en œuvre d’une grande infrastructure sans fil offrant un bon confort en déplacement sur un campus et un nomadisme extra-muros requiert un soin tout particulier dans le choix et l’assemblage des composants. Dans un prochain article, nous aurons l’occasion d’aborder plus en détail les solutions techniques mises en œuvre dans les réseaux radio utilisant le protocole 802.1X. Mais sans attendre, il est déjà possible de pratiquer le contrôle d’accès par 802.1X à l’EPFL. Les utilisateurs du réseau radio de l’école qui souhaitent s’affranchir du client VPN peuvent visiter l’URL http://network.epfl.ch/ara. Ils y trouveront les informations sur le déploiement du Wi-Fi Protected Access [WPA] sur notre campus. Les amateurs de 802.1X câblés sont bien sûr aussi cordialement invités à se rendre sur cette page! ■ fig. 4 – imbrication des protocoles fi 2 – 1er mars 2005 – page 5 Bal des pendules anneau de silicium monocristallin de 6 mm de diamètre est maintenu en résonance à 15 kHz par excitation électromagnétique, et toute variation angulaire de son cadre tendra démontrant la faisabilité, qui a conduit à à décaler d’autant les axes des nœuds de une thèse, suivie du processus de dévelopvibration. L’électronique interne au senseur, pement, le robot miniature Jœ-le-Pendule travaillant en boucle fermée, s’efforcera de accomplissait ses premières évolutions le maintenir l’axe de vibration initial, et, la 25 janvier 2000. (Voir Flash EPFL du 15 tension nécessaire pour contrecarrer cette février 2000, page 10) force de Coriolis indiquera la vitesse anCe développement est directement gulaire. Le signal de sortie est une tension inspiré du célèbre modèle académique proportionnelle à la vitesse angulaire. du pendule inversé, qui comme son nom Initialement, lors de la mise sous tension l’indique, est constitué d’un chariot mobile du véhicule, l’angle relatif à la verticale de surmonté d’un pendule inversé, librement la plate-forme est calibré par une paire d’inarticulé autour d’un axe transversal. Avec la clinomètres à niveau liquide. C’est aussi par différence pour les véhicules présentés, que leur indication que le contrôleur peut refuser le chariot et le pendule ne font qu’un, l’artid’activer l’équilibrage électronique si l’incliculation étant elle-même l’axe des roues. Joe-le-pendule naison de départ s’avérait trop importante Ses deux roues étant parallèles et pour être contrôlable. coaxiales, l’engin est par nature instable, Afin de tenir compte de l’expérience du conducteur et de contrairement à un vélo qui bénéficie de l’effet gyroscopique l’environnement, le constructeur a prévu 3 clés de contact de ses roues colinéaires. Pour parvenir à son équilibre, seul différentes, chacune activant une programmation spécifique, un régulateur électronique peut artificiellement stabiliser imprimant au système un tempérament approprié (équation cette plate-forme, en agissant directement sur les moteurs caractéristique du système): de propulsion, exerçant toujours un couple de redressement ❚ clé Apprentissage noire: vitesse maximale: 10 km/h, opposé au sens de basculement. virages très lents; Chaque roue est motorisée indépendamment de l’autre, ❚ clé Piéton jaune: vitesse maximale: 13 km/h, virages offrant le contrôle de lacet par différentiation, voire inversion, rapides; du régime de rotation. ❚ clé Espaces ouverts rouge: vitesse maximale: 20 km/h, réactivité maximale. Suite de la première page Fonctionnement Le Segway pourrait être qualifié de véhicule bio-inspiré, puisqu’il gère sa verticalité de la même manière qu’un humain gère sa propre posture. En effet, pour déceler toute perte d’équilibre, donc de verticalité, notre cerveau est informé par l’inclinaison du niveau du liquide contenu dans les canaux semi-circulaires de notre oreille interne. Le châssis du Segway étant en équilibre autour de l’axe de ses roues, et ces dernières devant pouvoir tourner indépendamment de lui, il faut impérativement disposer d’une plate-forme inertielle pour connaître son inclinaison par rapport à la verticale. Cette plate-forme inertielle est composée de 3 gyroscopes à semi-conducteurs, de type verre à vin résonnant, disposés triangulairement, fonctionnant selon l’effet Coriolis. Un Pour équilibrer le système, le régulateur s’appuie sur la mesure des 4 états suivants: 1 la vitesse angulaire dΘ/dt, fournie par le gyroscope; 2 l’angle d’inclinaison Θ par rapport à la verticale, intégration de la vitesse angulaire; 3 la position horizontale x, déduite de la différence entre la position donnée par l’encodeur incrémental de chaque axe moteur-roue avec l’angle d’inclinaison mesuré par le gyroscope; 4 la vitesse horizontale dx/dt, dérivée de la position. Chacune de ces grandeurs est pondérée par un cœfficient, puis elles sont additionnées pour déterminer la valeur du couple à appliquer par les moteurs afin d’assurer la stabilité du système. Le processeur de signal effectue cette opération à la fréquence de 100 Hz. �� �� ����������� Plate-forme intertielle du Segway fi 2 – 1er mars 2005 – page 6 Bal des pendules Remarque Les gyroscopes à semi-conducteurs n’ont absolument aucune influence mécanique sur le véhicule, leur fonction étant uniquement de fournir une indication de la variation angulaire de la plate-forme. Seuls les moteurs assurent l’équilibre de l’ensemble. mesure de la position horizontale. Il en découle que tout déséquilibre entraîne automatiquement une vitesse de translation proportionnelle au couple perturbateur, c’est-àdire, à la force exercée sur le guidon, comme le montre le diagramme 2 ci-après. Simulations Schéma du traitement des signaux de Joe Une perturbation rampe de vitesse est appliquée à l’entrée du régulateur de Jœ. Sur le diagramme 1, nous observons qu’avant d’exécuter une marche en avant, Jœ est contraint de préalablement reculer afin d’incliner le pendule dans la direction de translation, autorisant ensuite le déploiement d’un couple accélérateur. Après 1.5 seconde, la consigne est maintenue à la valeur de 1.5 m/s, et nous observons un dépassement de vitesse pour redresser le robot. Au bout de 4.5 secondes, la consigne de vitesse diminue, provoquant d’abord une survitesse du robot, nécessaire à son basculement vers l’arrière, prérequis pour amorcer une décélération. L’excursion se termine par une brève marche arrière non désirée, mais nécessaire à la phase de stabilisation finale. diagramme 1 – Simulation de Joe avec le logiciel Sysquake, unités mksA Schéma du régulateur de Joe Différence entre Joe et le Segway L’équilibre des deux plates-formes est similairement assuré par leurs régulateurs embarqués. Ce qui les distingue, c’est que Jœ est piloté par l’entremise d’une télécommande, qui lui dicte sa vitesse de translation ainsi que sa vitesse de virage, alors que la vitesse de translation du Segway est imposée par la posture de son pilote. Seul le contrôle de lacet est identique, déterminé pour le Segway par une bague rotative sur le guidon. Pour les deux véhicules, la différentiation de régime de rotation des roues est inversement proportionnelle à la vitesse de translation, prévenant ainsi le risque tête à queue impromptu. Compte tenu de son rapport hauteur/largeur, le Segway exige du pilote de se pencher vers l’intérieur du virage, tel un pilote de side-car, pour contrecarrer le risque de tonneau provoqué par la force centrifuge. Il suffit d’exercer une pression vers l’avant, soit sur le guidon, soit avec la pointe des pieds, pour que le Segway prenne aussitôt de la vitesse. Pour adopter ce comportement, le régulateur du Segway, contrairement à celui de Jœ, ne prend pas en compte la Une perturbation rampe de couple est appliquée au Segway, sous la forme d’une pression sur le guidon dans le sens de marche désiré, qui provoque une translation. Sur le diagramme 2, nous observons que la vitesse de translation est proportionnelle à la force exercée sur le guidon, et qu’une fois atteinte, la plate-forme se restabilise verticalement. Par nature, le comportement du Segway est nettement plus doux et amorti que celui de Jœ, ceci s’expliquant par l’endroit dans la chaîne régulateur-système où la perturbation est introduite. Pour Jœ, nous introduisons la perturbation à l’entrée du régulateur, qui la répercute directement sur les moteurs, alors que pour le Segway, nous l’appliquons au système mécanique, qui lui-même agira en filtre passe-bas avant de la propager sur l’entrée du régulateur. diagramme 2 – Simulation du Segway avec le logiciel Sysquake, données mécaniques de Joe, unités mksA fi 2 – 1er mars 2005 – page 7 Bal des pendules Sécurité Afin de garantir la sécurité du conducteur, le système de contrôle est entièrement dédoublé, assurant une totale redondance de toute la chaîne capteur-régulateur-moteur: ❚ triples gyroscopes ❚ doubles inclinomètres ❚ doubles cartes contrôleurs ❚ doubles bobinages moteurs, et rotors à aimants permanents ❚ doubles batteries. La sécurité du conducteur étant primordiale, il faut impérativement tenir compte de la vitesse au-delà de laquelle nous ne disposerions plus de suffisamment de réserve de puissance pour contrecarrer une chute potentielle. Le Segway est doté d’un limiteur de vitesse original, puisqu’il est impossible de simplement plafonner le régime des moteurs: c’est un actuateur qui redresse le manche du guidon, forçant ainsi le conducteur à se redresser sur la plate-forme, et par réaction, permettre au Segway de ralentir. Un second avertisseur vibrant, toujours sur le manche du guidon, entre en action lorsque l’état de charge des batteries manifeste une trop faible capacité, ou lorsque durant le démarrage, la plate-forme n’est pas suffisamment horizontale. Construction inertielle, le moteur et son capteur incrémental intégré, et le réducteur. Transversalement disposées, respectivement à l’avant et l’arrière, nous observons les cartes contrôleur. Les deux blocs de batteries NiMH sont logés sous les cartes contrôleur, c’est à dire sous le niveau des axes moteurs, ces derniers étant eux-mêmes, par l’entremise du réducteur, bien en dessous de l’axe des roues, donc de l’axe de pivotement du véhicule. Remarques Pour des raisons évidentes, le Segway ne comporte pas de freins: le ralentissement est obtenu par inclinaison du pilote vers l’arrière. Durant le ralentissement, typiquement lors d’une descente, l’énergie est récupérée pour recharger les batteries. Conclusion Comme le démontrent les deux simulations numériques, il n’aurait pas été possible d’implémenter sur le Segway une commande de vitesse de type poignée de gaz comme celle de Jœ, en raison de la brutalité des réactions que cela aurait provoqué. La seule solution était de se servir du couple perturbateur imprimé par l’inclinaison du pilote sur la plate-forme, ce qui s’apparente à une commande de type pédale de gaz. Les mesures effectuées à l’EPFL ont montré que, dans le cadre de ses tâches réparties entre des bâtiments disséminés dont la distribution du courrier, Monsieur Monney parcourt quotidiennement près de 10 km en Segway. A la différence d’un vélo, il se meut aussi aisément à l’intérieur qu’à l’extérieur de notre site, et peut même tracter d’une main un chariot derrière lui (déconseillé par le constructeur). Pour vous donner une idée de la proverbiale mobilité du Segway, rien ne vaut d’assister à un match de Polo, organisé par des adeptes dans la baie de San Francisco (voir url en fin d’article). Remerciements Remerciements à MM. Felix Grasser pour la mise à disposition des schémas et valeurs numériques du modèle de Jœ, Yves Piguet pour sa précieuse aide à la simulation avec le logiciel Sysquake dont il est l’auteur, ainsi que Denis Monney pour l’essai du Segway. Fiche technique du Segway Autonomie: 15 - 20 km Vitesse maxi: 20 km/h Puissance totale: 2x 1.5 kW Pente franchissable sur sol adhérent: 30 degrés. (60%) Elévation du plancher: 20 cm. Poids à vide: 38 kg Poids du conducteur (min, max): 45 - 113 kg. Prix: $4500 Sur cette vue du Segway, nous distinguons successivement, partant du centre vers la droite: la plate-forme fi 2 – 1er mars 2005 – page 8 url ❚ ❚ ❚ http://www.segway.com/ http://leiwww.epfl.ch/jœ/ http://www.bayareaseg.com/Polo.htm ■ Sysquake 3 Yves Piguet, CEO, Calerga Sàrl, [email protected] Sysquake, le logiciel scientifique déjà présenté dans ces colonnes en octobre 1999 et en septembre 2001, est passé à la version 3 en octobre dernier. Les améliorations apportées se situent principalement à trois niveaux: ❚ l’interactivité de Sysquake et l’interface utilisateur; ❚ le renforcement de la compatibilité avec Matlab, avec notamment les tableaux de cellules et un meilleur support des MAT-files; ❚ l’ouverture vers le monde extérieur, avec la connexion à des bases de données, TCP/IP et les Web Services. L’interactivité graphique est ce qui distingue le plus clairement Sysquake de ses concurrents, notamment Matlab, Octave et Scilab. Elle permet la manipulation directe des graphiques et permet, par leur mise à jour pratiquement instantanée, de comprendre intuitivement les phénomènes qu’ils représentent et les lois qui les gouvernent. Après une revue des nouveautés apparues dans les versions 3.0 et 3.1, cet article donne un aperçu de son architecture. La conception modulaire facilite le portage sur de nouvelles platesformes, comme nous le verrons dans le cas du Pocket PC. Mac OS 9 qu’Apple a écrite pour assurer une transition plus facile aux développeurs. Bien que la distinction pour l’utilisateur ne saute pas aux yeux (le Finder est une application Carbon), dans le cas de Sysquake, on en a profité pour revoir complètement l’interface: nouvelle boîte de dialogue pour les préférences, nouvelles barres d’outils, éditeur, historique des commandes dans un tiroir, utilisation d’Unicode. Sysquake apparaît aussi comme un «service» pour de nombreuses autres applications Cocoa: on peut faire évaluer par Sysquake une commande sélectionnée dans un éditeur ou un traitement de texte. Enfin, Sysquake et ses extensions sont au format binaire natif Mach-O: les extensions peuvent être compilées avec gcc et faire appel directement à toutes les bibliothèques de Mac OS X. Nouveautés fig. 2 – Sysquake 3 sur Mac OS X, dont l’interface utilisateur est basée sur la bibliothèque native Cocoa fig. 1 – Sysquake 3 sur Windows XP: application multidocuments basée sur la bibliothèque C++ MFC L’interface utilisateur est le changement le plus visible apporté par Sysquake 3. Sur Windows (fig. 1), Sysquake est maintenant une application multi-documents, avec des fenêtres séparées pour l’interface par ligne de commande, les graphiques interactifs et le nouvel éditeur qui permettent le développement dans la même application. Sur Mac OS X (fig. 2), Sysquake est basé sur Cocoa, la bibliothèque native héritée de NextStep, au lieu de Carbon. Carbon est une bibliothèque largement compatible avec la toolbox de Le langage de programmation de Sysquake supporte deux nouveaux types de données: les nombres à virgule flottante simple précision (single) réels et complexes, et les tableaux de cellules, dont chaque élément peut contenir une donnée de n’importe quel type. La fonction fminsearch permet l’optimisation de fonctions dans R^n. Threads Sysquake permet maintenant l’exécution de plusieurs tâches en parallèle. Depuis la version 1, il était possible d’exécuter une fonction périodiquement; mais dans certaines situations, les threads facilitent beaucoup la programmation. Les calculs très longs peuvent être faits en tâche de fond avec un affichage progressif des résultats. Les threads évitent aussi fi 2 – 1er mars 2005 – page 9 Sysquake 3 le blocage de l’interface pendant la communication avec des périphériques ou d’autres programmes. Le listing 1 montre un serveur HTTP minimal. de LME dans de nouvelles applications (à commencer par Sysquake) et sur des systèmes d’exploitation très divers. function server(port = 80) fdListen = socketservernew(port); while true fdAccept = socketaccept(fdListen); request = fscanf(fdAccept, ‘GET %s’); if strcmp(request, ‘/quit’) break; end fprintf(fdAccept, ‘Hello from Sysquake 3!\n’); fprintf(fdAccept, ‘A random number: %f\n’, rand); fclose(fdAccept); end fclose(fdListen); public function id = runHttpServer(port = 80) id = threadnew(@server, threadset, port); Listing 1: utilisationd’un thread dans un serveur HTTP minimal Extensions Les autres améliorations principales ont été faites par des extensions, dont voici les principales: ❚ bases de données (MySQL et SQLite sur Windows et Mac, ODBC sur Windows, fichiers DB sur Mac); ❚ sockets TCP et UDP; ❚ exécution de commandes shell sur Windows (existait déjà sur Mac); ❚ entrées-sorties audio; ❚ Web Services (XML-RPC et SOAP, client et serveur). Les protocoles XML-RPC et SOAP permettent à Sysquake de communiquer avec d’autres applications locales ou distantes. Parmi les applications visées, on peut citer la communication avec des applications Java locales, par exemple pour représenter la simulation d’un système en 3D dont les lois de commandes seraient développées dans Sysquake, ou la distribution de la charge de calcul sur un cluster. Sysquake Application Builder Pour finir, Sysquake Application Builder permet la création d’applications indépendantes qui peuvent être redistribuées sans royalties. Le code source de l’application ne figure pas dans le code généré, ce qui donne une bonne protection des algorithmes utilisés. Architecture de Sysquake Le cœur de Sysquake est LME (Lightweight Math Engine), l’interpréteur d’un langage de programmation compatible avec Matlab (fig. 3). Le développement de LME a commencé en 1997 avec pour but de permettre l’implémentation de régulateurs temps-réel sur PowerMac; cela a imposé une indépendance presque totale par rapport au système d’exploitation, pour éviter par exemple des allocations de mémoire ou des accès au disque qui étaient interdits dans les tâches temps-réel. Avec du recul, cette approche s’est révélée extrêmement judicieuse pour permettre une réutilisation fi 2 – 1er mars 2005 – page 10 fig. 3 – architecture modulaire de Sysquake LME lui-même est constitué de différents éléments: ❚ le noyau comprend le compilateur vers du code intermédiaire, l’interpréteur de ce code et les fonctions de base pour la programmation et le support des types natifs; ❚ les fonctions spécifiques au système d’exploitation qui permettent à LME de communiquer avec l’extérieur: entrées/sorties, lecture du code source des fonctions interprétées, accès à l’horloge; ❚ les fonctions d’extension qui peuvent être soit compilées avec le noyau, soit placées dans des extensions de type DLL, soit être carrément supprimées suivant l’application (c’est le cas de nombreuses fonctions mathématiques ou des fonctions d’algèbre linéaire basées sur LAPACK); ❚ les extensions basées sur des bibliothèques tierces (libpng pour la lecture et l’écriture d’images PNG par exemple) ou propres au système d’exploitation (entrées-sorties audio); ❚ les extensions développées par l’utilisateur, compilées sous forme de DLL et chargées au démarrage par LME. LME est écrit en C “orienté objet”, c’est-à-dire en reprenant certains principes qui font la force de la programmation-objet: modularité, structures opaques partout où c’est possible pour faciliter l’évolution de l’implémentation sans remise en cause de tout le code (“objets”), extension du code par pointeurs de fonctions (“méthodes virtuelles”). Le choix du C a permis notamment le portage de LME sur des systèmes aux ressources très limitées, comme le Palm. Graphiques interactifs Les autres modules qui composent Sysquake sont les graphiques, la gestion de l’interactivité et l’interface utilisateur. Les graphiques sont très largement indépendants du système d’exploitation: des fonctions d’abstraction permettent de séparer le code commun à toutes les plates-formes (calcul de l’échelle, fonctions spécialisées pour les courbes de niveau ou les simulations de systèmes dynamiques, commandes qui étendent LME) de l’affichage proprement dit. La gestion de l’interactivité est l’une des originalités majeures de Sysquake par rapport à d’autres logiciels apparentés tels que Matlab. Une application pour Sysquake est composée d’un fichier texte (SQ file) décrivant les variables qui permettent la synchronisation de toutes les figures (elles Sysquake 3 donnent l’état de l’application à un certain instant) et les fonctions à appeler en réaction à différents événements, par exemple une demande de réaffichage ou un clic de souris. Ces fonctions sont implémentées dans le langage de LME. La gestion des SQ files et de tout ce qui leur est associé (gestion des événements, synchronisation des graphiques, gestion des fonctions undo/redo, etc.) est également complètement indépendante de la plate-forme, et écrite en C. Enfin, l’interface utilisateur constitue l’essentiel de ce qui est propre à chaque plate-forme. Les bibliothèques natives de l’interface graphique de la plate-forme sont utilisées avec le langage qui leur est associé: C++ et MFC sur Windows, Objective C et Cocoa sur Mac OS X. La toolbox de Mac OS 9 et Carbon sont abandonnés sans regret. on a pu reprendre largement le code pour Windows avec des adaptations mineures dues à la hiérarchie des fichiers différente. Avec l’amélioration de l’interface utilisateur (historique des commandes, basculement de 90 degrés de l’affichage), la gestion des DLL pour les extensions et les tests, le tout a pris moins d’une semaine. Le résultat est disponible sur le site de Calerga [1]. La suite, Sysquake complet, pourra se baser largement sur la version Windows. Des modifications relativement mineures seront nécessaires en raison des restrictions de la version Windows CE de MFC; par exemple, seul Unicode est supporté pour les chaînes de caractères et certaines fonctions graphiques manquent. Portage vers une nouvelle plate-forme Le tableau 1 montre la diversité des plates-formes sur lesquelles LME a été porté. Un benchmark a été écrit pour exécuter différents types de fonctions. Le résultat est normalisé pour que l’ordinateur de référence, le PowerBook 17” de l’automne 2003, donne des résultats correspondant à sa fréquence, 1.33 GHz. Le résultat global est la moyenne arithmétique de tous les tests. Les applications sont Sysquake 3.1 pour les ordinateurs Windows et Mac OS X, Sysquake Embedded pour les cartes Linux XScale et Geode SC1200, LyME pour les ordinateurs portables Palm OS, une version interne de Sysquake 3.1 pour le Powerbook 3400 Mac OS 8.6, et le prototype actuel de LME pour Windows CE pour le Dell Axim. Pour comparaison, le benchmark a aussi été exécuté avec Matlab 7.0.1 sur le Powerbook de référence. Quelques remarques s’imposent: ❚ le résultat global, moyenne arithmétique non pondérée explicitement, a une part d’arbitraire, mais constitue un moyen commode de comparaison; ❚ LME ne tire pas (encore) parti des deux microprocesseurs du PowerMac G5; ❚ l’absence de FPU (unité à virgule flottante) sur le Benchmark La division de Sysquake en différents modules et la séparation très claire entre les parties indépendantes et dépendantes du système d’exploitation facilitent beaucoup le portage sur une nouvelle plate-forme. Le dernier, qui n’est pas achevé au moment où ces lignes sont écrites, est le Pocket PC. Les ordinateurs Pocket PC ont un microprocesseur dérivé de l’ARM, typiquement un Intel XScale; ils tournent sous un système d’exploitation, Windows Mobile 2003 actuellement, assez largement compatible avec Windows XP. Le développement se fait typiquement avec MS eMbedded Visual C++, similaire à Visual C++ mais dont les bugs du compilateur sont différents! La première étape consiste à compiler le noyau de LME avec une interface utilisateur minimale qui permet d’évaluer des expressions et d’en observer le résultat. Une fois cette étape franchie, l’ajout des fonctions d’extension ne demande pratiquement aucun travail. Les entrées-sorties, qui permettent notamment la lecture des bibliothèques LME, dépendent du système d’exploitation; pour Windows Mobile, Moyenne lu max fibo uint find list func Dell Dimension 2400 P4 3.06 GHz 2749.3 2864 1330 2920 2984 3743 2510 2894 Apple PowerMac G5 Dual 2.5 GHz 2410.9 2915 2633 2438 2239 2116 1835 2700 Apple PowerBook G4 1.33 GHz 1330.0 1330 1330 1330 1330 1330 1330 1330 Apple PB G4 1.33 GHz (Matlab 7.0.1) 773.2 1017 1953 458 341 986 340 319 Apple iBook G3 500 MHz 497.4 531 619 286 604 481 455 507 DEC Workstation 500au Alpha 500 MHz 402.5 227 516 359 663 457 230 365 Sun Blade 100 UltraSparcIIe 500 MHz 367.5 194 400 488 414 400 326 350 Generic PC Pentium Win2K 300 MHz 350.9 444 257 380 518 288 276 294 Dell Axim X30 PXA270 626 MHz 143.4 55 140 31 381 111 59 226 Apple PowerBook 3400 PPC603 200 MHz 133.7 141 120 111 215 182 79 88 CerfBoard 255 XScale 400 MHz 84.4 11 25 42 234 92 63 125 Kontron X-board<861> SC1200 266 MHz 76.9 65 63 81 88 142 47 52 Palm Zire 71 OMAP 144 MHz, emu M68k 1.192 1.04 1.14 1.21 1.06 1.74 0.99 1.15 Handspring Visor MC68EZ328 16 MHz 0.508 0.189 0.449 0.546 0.522 0.750 0.480 0.616 Tableau 1– résultats du benchmark (lu: décomposition LU; max: recherche du maximum d’un vecteur de nombres; fibo: suite de Fibonacci calculée par multiplications matricielles; uint: arithmétique entière sur des octets; find: recherche de chaînes de caractères; list: manipulation de listes; func: appels récursifs de fonctions). fi 2 – 1er mars 2005 – page 11 Sysquake 3 ❚ ❚ ❚ ❚ XScale rend les calculs mathématiques (notamment la décomposition LU, proche d’une inversion matricielle) relativement lents; le Dell Axim, qui tient dans une poche de chemise, est comparable à un bon ordinateur de 1996; les performances du Palm sont très mauvaises parce que LyME est compilé pour un microprocesseur 68k qui est émulé sur l’ARM1; le rapport de vitesse de 1 à 1000 entre les modèles de milieu de gamme de Palm et d’ordinateur de bureau, déjà observé en 2001, demeure; la comparaison avec Matlab 7.0.1 est assez parlante; elle serait moins spectaculaire avec des calculs sur des matrices de taille importante, où seules les performances de Lapack comptent. Conclusion L’architecture modulaire de Sysquake le rend bien adapté à des applications très diverses. En utilisant ou en omettant certaines parties, on obtient différentes applications. À part Sysquake, il existe Sysquake Remote, un module Apache pour 1 un mode de fonctionnement similaire à PHP, Sysquake Embedded pour la commande de systèmes embarqués, et LyME comme substitut à une calculatrice scientifique avancée sur Palm. Et comme le montre le portage sur Pocket PC, ce n’est pas fini... L’intérêt de développer en parallèle toute une famille de produits qui partagent une grande partie de leur code est de multiplier les tests; la qualité de chaque programme en profite. La mise à jour en fonction de l’évolution du matériel et des systèmes d’exploitation est aussi facilitée, comme le montre le passage de Mac OS 9 à Mac OS X. L’EPFL possède une licence de site de Sysquake 3. L’auteur, qui est le développeur de Sysquake, reçoit très volontiers les demandes de discussions ou de présentations. Cet article a esquissé quelques directions de développement, comme la supervision de processus, le calcul sur des clusters ou le développement de nouvelles bibliothèques, pour lesquelles une collaboration serait possible. Url [1] site de Calerga: http://www.calerga.com ■ Mais cela ne doit pas faire oublier que LyME reste une excellente solution pour calculer une décomposition en valeurs singulières en attendant le TSOL! INDICO Un logiciel de pointe pour la gestion de conférence [email protected], [email protected] & l’équipe Indico du CERN Dans le cadre du projet européen Integrated Digital Conferencing (InDiCo), l’équipe du CERN Document Servers (CDS) a développé une nouvelle application Web permettant d’organiser des conférences. Cet outil permet aux utilisateurs de gérer tous les types de conférences, de la plus simple, contenant une présentation unique, à la plus complexe, avec sessions et contributions. Cela comprend un mécanisme complet de délégation de droit aux utilisateurs, un processus de paper reviewing, un archivage des données concernant les conférences, la production des actes électroniques, et bien plus encore. À la fin de l’année 2003, les comités d’organisation de la conférence Computing in High Energy Physics 2004 (CHEP04) décident d’utiliser Indico comme support informatique pour l’évènement. Dans cet article, nous allons expliquer en détail le fonctionnement du logiciel Indico, comment il a été conçu, et comment il a été validé. fi 2 – 1er mars 2005 – page 12 Un projet européen Il existe déjà des logiciels de gestion de conférence sur Internet et de nombreux organisateurs de conférence développent un système temporaire de pages Web et de scripts, utilisé seulement pour une conférence. Après une étude approfondie de ces solutions, nous avons été convaincus de la nécessité de créer un nouveau système comprenant les fonctions suivantes: ❚ gérer toutes les parties de l’organisation d’un évènement, de son annonce à son archivage ❚ assurer le support à de simples réunions comme à des ateliers de plusieurs semaines. ❚ offrir la possibilité d’enregistrer et de stocker les matériels multimédias (vidéos) ❚ organiser, classer et récupérer plusieurs conférences en réutilisant les évènements passés ❚ veiller à ce que tous les matériels et descriptions des conférences puissent être transférés sur un système d’archivage à long terme. INDICO. un logiciel de pointe pour la gestion de conférence Indico a donc été mandaté et financé par la commission européenne pour fournir une solution aux nouveaux défis auxquels la gestion de documents électroniques doit faire face en ce début de 21e siècle: la conservation et la prise en charge des contenus multimédias pour un nombre toujours croissant de conférences scientifiques. Appel de matériel Les organisateurs de conférence peuvent mettre en place un Call for abstract qui permet aux auteurs de soumettre directement dans Indico leur proposition de contribution. Une fois sa proposition approuvée, l’auteur peut alors télécharger lui-même sur Indico les matériels attachés à sa contribution (papiers, transparents,…). Quelques fonctions d’Indico Nous allons commencer par décrire les fonctions principales du système, qui ont été testées, améliorées et validées lors du processus d’organisation de CHEP04 et qui sont maintenant utilisées par bien d’autres organisateurs de conférences. Réutilisation Les concepteurs et développeurs d’Indico ont conçu les fonctions requises de manière générique, pour garantir l’utilité de ces outils pour les futures conférences qui utiliseront le système. Le logiciel lui-même, distribué sous licence Open Source, a déjà été installé par d’autres instituts que le CERN comme le Centre de connaissance technique du Danemark (DTV), FontisMédia (Lausanne) ou encore Desy (Allemagne), où des besoins similaires apparaissent. Affichage multiple Exemple de l’interface de gestion Gestion du planning Un module très complet de gestion de planning est fourni avec Indico. Plusieurs outils pratiques aident les organisateurs à mettre en place un programme détaillé de leur conférence. Création de compte personnel Chaque utilisateur peut avoir un compte personnel accessible par un simple login (avec un mécanisme d’authentification local ou bien en utilisant un serveur d’authentification). Ainsi, il peut personnaliser l’interface, ce qui facilite son interaction avec le système. Les comptes personnels sont aussi utilisés pour donner des droits d’accès ou de modification, ainsi que des rôles spécifiques (orateur, responsable de session, organisateur de conférence…). Protection et délégation de droits d’accès Exemple d’affichage d’une réunion Différentes vues peuvent être proposées pour chacun des évènements enregistrés dans le système. Ceci est particulièrement utile quand différents groupes d’utilisateurs utilisent le même serveur Indico et veulent afficher leur événement d’une manière différente. Il suffit à l’administrateur d’ajouter une feuille de style XSL pour ajouter une nouvelle vue. Vue d’ensemble et calendrier Une seule installation du logiciel peut héberger plusieurs évènements. Ceux-ci peuvent être classés dans une arborescence de catégories. Les informations peuvent être trouvées en naviguant à travers ces catégories ou via un calendrier. Celui-ci affiche la liste des évènements sur un ou plusieurs mois dans différentes catégories. Une vue d’ensemble montre la liste des évènements qui ont lieu un jour, une semaine ou un mois donné, dans une catégorie spécifique. Ceci est particulièrement utile pour éviter les conflits lorsqu’on fixe les dates des évènements. Indico fournit un moyen facile de protéger chaque objet dans une conférence (depuis la conférence dans sa totalité jusqu’au simple fichier). Cette protection peut être basée sur un mot de passe, un utilisateur ou un domaine. Sélection de contribution Un processus complet de sélection a été intégré à Indico. Un puissant mécanisme de délégation permet au gestionnaire de conférence de sélectionner des coordinateurs pour chaque thème de la conférence. Chaque proposition de contribution soumise peut alors être commentée, jugée, proposée pour être acceptée ou refusée ou encore déplacée vers un autre thème. Les propositions acceptées sont ensuite transformées en contributions qui peuvent être insérées dans le planning de la conférence. Sorties Différents fichiers PDF peuvent être créés à différentes étapes de l’organisation de la conférence: liste des proposifi 2 – 1er mars 2005 – page 13 INDICO. un logiciel de pointe pour la gestion de conférence tions, liste des orateurs, planning journalier, recueil final des contributions…. Les données sont aussi disponibles sous un format XML, ce qui facilite les échanges entre logiciels. Le format iCal est aussi disponible et permet aux utilisateurs d’alimenter automatiquement leurs agendas électroniques. Déclarer le contenu comme Open Archive Indico support le protocole OAI-PMH. Il fournit une interface OAI (Open Archive Initiative) intégrée pour exporter les données des conférences. Les responsables peuvent décider librement d’exposer les données de leur conférence ou non. Les fournisseurs de services OAI, comme les bibliothèques numériques, peuvent parcourir les serveurs Indico et récupérer les données exposées. La technologie d’Indico Le développement d’Indico a été fait selon le modèle objet, utilisant les techniques relatives à ce domaine. Le produit final bénéficie donc de tous les avantages de l’approche objet. En outre, nous avons mis en place et suivi un processus de développement allégé suivant la méthode RUP (Rational Unified Process), ce qui nous a permis de développer un logiciel avec un bon contrôle de qualité. Nous avons utilisé le plus possible de normes dans tous les cycles du projet. Une des contraintes d’Indico était que le logiciel devait être fourni sous une licence compatible Open Source. Ainsi, la plupart des produits et des normes utilisés pour son développement ont été choisis en conséquence. Aujourd’hui, Indico a été installé et testé avec succès sur plusieurs plates-formes (Linux, Windows) et dans plusieurs instituts. Aperçu de l’architecture logicielle Python Python a été sélectionné comme plate-forme de développement pour ses caractéristiques: langage de haut niveau, type de données dynamiques et un temps d’apprentissage du langage très court. Le noyau du système fonctionne avec Python et n’utilise que très peu de modules tierce partie (autres que ceux de la bibliothèque standard) et suit une approche objet. Une particularité du système est que le mécanisme de persistance est purement orienté objet et utilise ZODB (Zope Object Database). Cette base de données est aussi développée en Python de sorte qu’elle fournit à la fois une intégration unique avec le langage de programmation et une compatibilité totale avec le modèle objet. Cela nous a permis de réduire le temps de développement et d’adapter le logiciel à l’évolution constante des besoins. L’interface Web d’Indico Le principal problème auquel nous avons dû faire face pour construire cette interface est le manque de serveur d’application standard pour développer une application Web en Python. Nous avons donc évalué différentes possibilités et décidé de déployer Indico sous une combinaison de Apache http server http://httpd.apache.org et ModPython http://modpython.org qui permet de bonnes performances et un fonctionnement multi plates-formes. Toutefois, le système est conçu de manière à pouvoir être installé sur d’autres serveurs d’application sans trop d’effort. L’interface Web a été développée selon les dernières normes HTML, en laissant de côté la technologie dynamique pour garder la plus grande compatibilité avec tous les navigateurs. Pour la génération de rapports et de listes imprimables, Indico utilise ReportLab http://reportlab.org qui est fourni sous la forme d’un module Python et génère des fichiers PDF de manière très simple et efficace. Conclusion Indico utilise une architecture multicouche classique où les dépendances se font seulement dans un sens, permettant ainsi la séparation des composants et la réutilisation des couches inférieures. La couche d’interface héberge les différentes interfaces supportées par le système; l’architecture en couche nous permet d’en ajouter facilement de nouvelles si besoin est. La couche business contient les mécanismes directement liés aux fonctions du logiciel. La couche système fournit une abstraction pour la persistance des objets et le stockage des données multimédias. Il en résulte une architecture qui peut être étendue sans que cela n’affecte d’autres parties et on peut modifier ou remplacer n’importe quelle couche, ce qui aura un très faible impact sur les autres. fi 2 – 1er mars 2005 – page 14 Avec plus de 100 conférences, ateliers et séminaires organisés chaque mois dans les domaines de la physique des particules, la centralisation de la gestion électronique des conférences est une direction évidente à suivre. Cela garantira la qualité des conférences électroniques, la disponibilité à long terme de leurs contenus, une facilité pour retrouver des informations et des économies considérables. En 2005, la plate-forme Indico remplacera le système CDS Agenda, qui actuellement garde les données d’environ 65 000 présentations. En même temps, Indico fournira aux organisateurs de grandes conférences un solide outil pour mettre en place leurs futures conférences. Plus d’information ❚ ❚ ❚ Le site Web d’Indico: http://indico.cern.ch Le site du CERN pour le projet Indico: http://cern. ch/indico L’équipe Indico: T. Baron, D. Bourillot, J.B. Gonzalez, JY. Le Meur, H. Sanchez, V. Turney [indico-project@cern. ch] ■ IM2.DI intégration de documents dans des archives multimédias de réunions [email protected] & [email protected], Université de Fribourg & [email protected], École d'ingénieurs et d'architectes de Fribourg Introduction Le projet IM2.DI, mené au sein du groupe DIVA/DIUF de l’Université de Fribourg, s’insère dans le pôle de Recherche National sur la gestion interactive et multimodale des systèmes d’information (IM2), dirigé par l’Institut Dalle Molle d’Intelligence Artificielle Perceptive (IDIAP) à Martigny. L’objectif principal du projet IM2.DI est l’intégration des documents dans des applications multimodales en mettant en correspondance différents types de documents statiques (articles scientifiques, journaux, diaporamas, etc.) avec des enregistrements audio/vidéo de réunions, de conférences ou de cours. Par exemple, les différents types de documents statiques utilisés au cours d’une réunion, distribués sous la forme de papier ou projetés sur un écran, seront analysés et comparés aux données audio/vidéo afin de relier entre elles toutes les modalités. En d’autres termes, le but principal de IM2.DI est d’établir des liens entre des documents non-temporels et d’autres medias temporels. La création de ces liens temporels devrait permettre de temporaliser les documents statiques et donc d’utiliser ce médium, hautement thématique et structuré, facilement indexable, comme interface d’accès à des données multimédias. Citons à titre d’exemple, les archives multimédias de conférences (voir projet SMAC en collaboration avec le CERN et l’École d’Ingénieurs de Fribourg) dans lesquelles il devient courant de trouver pour chaque article sa forme numérique au format PDF, le diaporama correspondant et enfin un enregistrement audio/vidéo de la présentation de l’article par l’auteur. La création de liens document/image et document/parole permettra de lier temporellement tous les documents, aussi bien statiques (article PDF) que multimédias (présentation PPT et enregistrement audio/vidéo), et d’utiliser les documents statiques comme interfaces d’accès à des données multimédias. pourtant une partie intégrante de la grande majorité des réunions (Lalanne et al., 2005). Nous proposons dans ce projet d’analyser les documents statiques en liaison avec des réunions et de considérer conjointement a) les liens linguistiques entre leur contenu et la transcription de la parole ainsi que b) leurs similarités graphiques avec des enregistrements vidéo. La construction de ces liens devrait ainsi aboutir à un alignement complet entre les documents statiques et des données temporelles et devrait permettre de (a) produire semi automatiquement des procès verbaux multimédias, sorte de comptes-rendus interactifs et (b) construire des interfaces qui utilisent les documents statiques comme vecteurs thématiques et structurés pour naviguer sur des archives de réunions. Nous pensons que ces liens faciliteront notablement l’accès aux enregistrements de réunions, ainsi que la navigation et la recherche à travers des corpus multimédias. Dans la suite de cet article, nous présentons une application qui permet d’enregistrer des réunions, de les archiver et de les indexer. Enregistrement de réunions Un environnement d’enregistrement de réunions a été mis en place dans notre laboratoire, en collaboration avec l’École d’Ingénieurs et d’Architectes de Fribourg. Cet environnement capture aussi bien des données audio et vidéo, pour chacun des participants à la réunion, que les documents statiques qui sont projetés, discutés ou simplement présents sur la table durant la réunion. L’équipement a été installé dans une salle de réunion existante, et permet d’enregistrer jusqu’à 8 participants en gros plan. La salle enregistre plusieurs modalités liées aux documents grâce à une douzaine de caméras et huit microphones. Ces périphériques, ainsi qu’un projecteur vidéo, sont connectés à différents ordinateurs personnels, Documents statiques et analyse de réunions Les recherches en informatique connaissent actuellement un engouement important pour l’enregistrement et l’analyse de réunions, principalement car les réunions sont hautement multimodales ce qui sera une caractéristique essentielle des systèmes de communication de demain. Cependant, aucune de ces recherches sur l’analyse de réunions ne prend en compte les documents statiques traditionnels, c.-à-d. qui peuvent être imprimés (p. ex. journaux, articles scientifiques, rapports, etc.), qui sont fig. 1– L’environnement d’enregistrement de réunions installé à l’université de Fribourg fi 2 – 1er mars 2005 – page 15 IM2.DI, intégration de documents dans des archives multimédias de réunions contrôlés et synchronisés par un ordinateur maître. Sur ce dernier, une application ergonomique, dédiée à la capture de réunions, permet de spécifier les sièges, correspondant à un couple caméra/microphone, qui doivent être enregistrés, les périphériques qui doivent être actifs et de nombreuses autres options de contrôle. Une fois l’enregistrement terminé, l’application gère de plus tous les posttraitements (p. ex. compressions, analyses, etc.) ainsi que l’archivage des réunions sur un serveur de fichiers. Analyse de documents électronique du document, à (b) des méthodes d’analyse d’image du document. À première vue, il serait plus naturel d’extraire la structure physique directement à partir du fichier PDF, en se servant de sa structuration interne. Notre expérience nous a toutefois montré que les informations structurelles ne sont pas toujours fiables. Dans des documents multi-colonnes, l’ordre d’apparition des blocs de texte ne reflète en général pas l’ordre de lecture. Pire, il arrive que des portions de phrase ou des mots isolés n’apparaissent pas dans leur contexte, mais de manière isolée à la fin d’un fichier, en fonction, selon nous, de l’historique d’édition du document et des logiciels qui ont servi à le produire. L’analyse à partir de l’image TIFF présente pour nous l’avantage de considérer une représentation quasi universelle. Dans la plupart des moteurs de recherche et des systèmes de recherche d’information, la structure multicouches des documents, i.e. structures physique, logique, thématique et temporelle, n’est pas prise en compte, et les documents Alignement entre des documents sont indexés au mieux par leur structure thématique ou statiques et des données temporelles simplement par un ensemble de mots. La structure physique désigne la segmentation d’un document en zones homogènes, Afin de naviguer sur des archives multimédias au travers partageant les mêmes propriétés typographiques ou graphides documents, il est tout d’abord nécessaire de construire ques. La structure logique regroupe ces blocs physiques en des liens entre les documents statiques et d’autres médias, entités logiques, p. ex. un titre, un article, un auteur, etc., qui sont eux temporels, tels que l’audio ou la vidéo (Lalanne et organise le document sous la forme d’une hiérarchie de et Ingold, 2005). Nous appelons alignement temporel des doblocs logiques. La structure thématique ne travaille que sur cuments l’opération qui consiste à extraire les relations entre le contenu textuel et correspond à une segmentation en des portions de documents, à différents niveaux de granublocs sémantiquement homogènes, i.e. des thèmes. Enfin, la larité, et le temps de présentation dans la réunion (fig. 2). structure temporelle considère toutes les opérations effectuées L’alignement temporel de documents crée des liens entre des sur un document afin de le temporaliser, par exemple une extraits de documents et les intervalles de temps dans lesquels modification, la projection de ses parties lors d’un diaporama, des interactions gestuelles, etc. Nous pensons que cette représentation multicouche des documents peut améliorer considérablement (a) l’indexation et la recherche de documents et (b) leurs associations avec d’autres médias, comme c’est le cas dans l’enregistrement et l’analyse de réunions, où l’extraction des structures physiques, logiques et thématiques permet de lier les documents avec la transcription de la parole et avec l’image des documents dans les enregistrements vidéo de la réunion. Le PDF est devenu le format pivot pour échanger des documents statiques, principalement car il préserve la mise en page et pour cette raison, notre équipe DIVA a implémenté un outil, Xed, qui permet d’extraire les structures physique et logique d’un document PDF. Il suit une approche hybride qui consiste à fusionner (a) fig. 2 – L’alignement temporel de documents crée des liens entre des extraits de documents et les des méthodes d’extraction de intervalles de temps dans lesquels ils étaient soit (a) dans le discours, soit (b) dans le champ visuel, bas niveau, basées sur la forme soit (c) dans le champ de l’interaction gestuelle d’une réunion. fi 2 – 1er mars 2005 – page 16 IM2.DI, intégration de documents dans des archives multimédias de réunions ils étaient soit (a) dans le discours, soit (b) dans le champ visuel, soit (c) dans le champ de l’interaction gestuelle d’une réunion. Il est donc possible de mettre en correspondance des extraits de documents avec des extraits audio et vidéo, et par extension avec des annotations de la parole, de la vidéo et/ou des gestes. Nous avons identifié trois modalités qui peuvent être associées et alignées temporellement avec les documents: ❚ La parole: le contenu textuel des documents est comparé avec la transcription de la parole, qui renferme des index temporels pour chaque tour de parole des interlocuteurs et pour chaque énoncé de parole. Les tours de parole sont des monologues, i.e. des segments du dialogue où un seul interlocuteur s’exprime, divisés en énoncés de parole. Un énoncé de parole est une partie cohérente d’un monologue à laquelle peut être associé un acte de dialogue tel qu’une question, une prise de parole, un désaccord, etc. L’alignement document/parole permettra de savoir: quand fut discuté un document ? et qu’est-ce qui a été dit à propos d’un document ? ❚ La vidéo et l’image: les documents électroniques sont comparés aux images extraites des enregistrements vidéo de documents (p. ex. la vidéo des diaporamas projetée sur un écran) afin d’identifier les différents documents visibles dans les vidéos et d’associer aux documents concernés des index temporels liés à leurs périodes d’apparition dans le champ visuel des participants. Cet alignement vise la résolution de trois types de questions: (1) à quel moment un document était-il dans le champ visuel des participants? (2) de quel document s’agissait-il? (3) quel était le contenu de ce document ? ❚ Les gestes: les interactions gestuelles avec des documents sont capturées et analysées (p. ex., pointer du doigt un document projeté sur un écran) afin d’en déduire à quel moment et quelle partie de document était dans le champ d’interaction gestuelle des participants. Nous n’avons pas encore démarré de travaux sur l’interaction gestuelle avec des documents et ce sujet n’a été que très peu traité jusqu’à maintenant, et devrait aboutir à des applications temps réel utilisant les documents papier comme moyen d’accéder à des données numériques et multimédias. Une interface de navigation basée sur les documents statiques Un p r o t o t y p e d’interface utilisant les documents statiques comme outil d’interaction, et permettant de naviguer sur des archives multimédias de réunions a été implémenté par notre groupe. D’abord, l’outil permet de faire une recherche thématique en utilisant un ensemble de motsclefs et les articles les plus pertinents sont retournés par le système et organisés spatialement selon les mots-clefs spécifiés. Ce navigateur cross-réunions permet de visualiser rapidement un grand nombre d’articles, ainsi que leurs liens; il favorise une navigation thématique sur l’ensemble des réunions, en utilisant comme points d’accès non seulement le contenu de la transcription des réunions, mais aussi le contenu des documents discutés ou visionnés durant les réunions. Lorsque l’utilisateur choisit un article ou un journal, l’enregistrement de la réunion correspondante est ouvert à l’instant où l’article ou le journal est discuté, ainsi que toutes les données liées à cette réunion, telles que les séquences audio/vidéo de chaque participant, la transcription des dialogues, les documents et diaporamas de la réunion, ainsi que toutes les annotations liées à ces données. Toutes ces données sont synchronisées, ce qui signifie qu’elles ont toutes la même référence temporelle: le temps de la réunion. Lorsque l’utilisateur clique sur l’une des représentations visuelles de ces données, tous les autres composants se synchronisent, i.e. se positionnent au même moment dans la réunion, et affichent leur contenu à cet instant. Par exemple, cliquer sur un article d’un document place les séquences audio/vidéo à l’instant où l’article était discuté, positionne la transcription au même instant et affiche le document qui était projeté. Ces liens visuels sont une illustration directe des alignements documents/parole et documents/vidéo présentés plus haut. La visualisation SunBurst en bas à droite de l’écran (fig. 3) représente la durée complète de la réunion. Chaque couche symbolise une annotation temporelle différente: les blocs thématiques des documents discutés, les diapositives visibles à chaque instant, les tours de parole, et les énoncés de parole. D’autres annotations temporelles pourraient être ainsi affichées, suivant le type de réunions, les données capturées, ou encore suivant les outils d’analyse disponibles (les actes de dialogue, les prises de note, les gestes, etc.). Ces annotations contiennent les marqueurs temporels de début et de fin de chaque changement d’état (i.e. nouvel interlocuteur/tour de parole, nouveau thème, changement de diapositive, etc.), ainsi que des informations topologiques pour les documents. Par exemple, la transcription de la parole contient des tours de parole, c’est-à-dire des segments de parole où un seul interlocuteur s’exprime, divisés en énoncés de parole, avec les temps respectifs de début et de fin. La visualisation SunBurst est interactive; les utilisateurs peuvent cliquer sur fig. 3 – ce prototype d’interface de navigation, basé sur les documents, a été implanté en Java (JMF). Tous les composants, audio, vidéo, transcription, documents, visualisations, sont synchronisés sur le temps courant de la réunion, grâce aux alignements temporels de documents. fi 2 – 1er mars 2005 – page 17 IM2.DI, intégration de documents dans des archives multimédias de réunions n’importe quelle partie d’une couche afin d’accéder à un moment spécifique de la réunion, une diapositive spécifique ou à tout ce qui a été dit concernant un article spécifique d’un document. Le SunBurst, ainsi que d’autres visualisations similaires, révèle les relations ou contradictions potentielles entre des ensembles d’annotations et permet ainsi d’améliorer la génération automatique d’annotations. A l’heure actuelle, 22 réunions, d’une quinzaine de minutes chacune, ont été intégrées dans cette interface de navigation basée sur les documents. Une évaluation a été effectuée par 8 utilisateurs afin de mesurer l’utilité des alignements de documents statiques pour naviguer sur des archives multimédias de réunions. Les performances des utilisateurs pour répondre à des questions, aussi bien unimodales que multimodales (par exemple: quels articles de la une du Monde ont été discutés par Didier?), ont été ainsi mesurées aussi bien d’un point de vue qualitatif que quantitatif (par exemple: durée, nombre de clics afin d’accomplir la tâche, satisfaction de l’utilisateur, etc.). Les 8 utilisateurs ont résolu 76% des questions posées lorsqu’ils avaient à disposition les alignements de documents et seulement 66% des questions lorsqu’ils n’avaient pas les alignements. Ces différences de performance sont devenues particulièrement apparentes pour les questions multimodales, i.e. qui nécessitaient des informations aussi bien contenues dans la transcription de la parole que dans les documents projetés ou discutés. Dans ce cas, 70% des questions ont été résolues lorsque les alignements étaient disponibles et seulement 50% des questions lorsqu’ils n’étaient plus à disposition. données multimédias de réunions et les documents statiques utilisés lors de ces réunions. L’analyse de documents permet tout d’abord de construire une représentation multicouche des documents et de créer des index utiles à l’alignement avec d’autres modalités. En particulier, les alignements documents/parole et les alignements documents/vidéo permettent de temporaliser les documents et de construire des interfaces de navigation et de recherche sur des archives multimédias de réunions. Conclusion ❚ ❚ Bibliographie Denis Lalanne, Rolf Ingold, Didier von Rotz, Ardhendu Behera, Dalila Mekhaldi, Andrei Popescu-Belis (2005) - Using Static Documents as Structured and Thematic Interfaces to Multimedia Meeting Archives. In Bengio S. & Bourlard H., eds., MLMI 2004: Proceedings of the Workshop on Machine Learning for Multimodal Interaction, LNCS 3361, Springer-Verlag, Berlin, pp. 87-100. ❚ Denis Lalanne et Rolf Ingold, Documents statiques et multimodalité, L’alignement temporel pour structurer des archives multimédias de réunions. Numéro spécial de la revue scientifique et technique Document numérique sur le thème Temps et Documents (2005). Service éditorial Hermès. ❚ Liens http://diuf.unifr.ch/im2/ http://www.im2.ch/ ■ Cet article présente une application développée à l’université de Fribourg qui permet de combler le fossé entre des Smart Multimedia Archive for Conferences (S.M.A.C.) [email protected], [email protected], École d'ingénieurs et d'architectes de Fribourg [email protected], [email protected], Université de Fribourg & [email protected], CERN Contexte Smart Multimedia Archive for Conferences (SMAC1) est un projet issu de la collaboration entre l’EIA-FR (l’École d’ingénieurs et d’architectes de Fribourg), l’équipe INDICO du CERN (voir article en page 12) et le projet IM2.DI2 (voir article en page 15) mené à l’Université de Fribourg par le groupe DIVA3. 1 2 3 http://www.eif.ch/projets/smac http://diuf.unifr.ch/im2/ http://diuf.unifr.ch/diva/siteDIVA04/html/home.html fi 2 – 1er mars 2005 – page 18 SMAC vise la mise en place d’un outil permettant l’acquisition, l’archivage, l’analyse et la consultation d’archives de conférences multimédia. Ce projet, mise à part son originalité scientifique, reflète la synergie croissante entre l’ICIT4 de l’EIA-FR (Institut des Technologies de l’information et de la communication) active, entre autres, dans plusieurs domaines de l’ingénierie documentaire (Web Engineering, Model Engineering, and Document Engineering), et désirant élargir son cercle de collaboration vers les institutions de la recherche fondamentale actives dans le paysage suisse. 4 http://www.eif.ch/fr/rad/institut-tic/presentation.htm Smart Multimedia Archive for Conferences (S.M.A.C.) C’est dans le cadre de sa politique de R&D que l’ICIT a amorcé et concrétisé cette collaboration avec l’Université de Fribourg et le CERN afin de réaliser leur ambition commune. Le projet Indico INDICO était un projet européen ayant pour but de construire un système de gestion et de stockage de conférence. Les partenaires de ce projet étaient: SISSA, Trieste (Italie), Università di Udine, Udine (Italie), TNO, Stieltjesweg (NL), University of Amsterdam (Pays-bas) et le CERN, Genève (Suisse). Le projet a été divisé en trois parties, attribuées à un ou plusieurs partenaires: ❚ Archivage à long terme des conférences et création d’outils de recherche dans les archives (SISSA, Università di Udine) ❚ Logiciel de gestion de conférence (CERN) ❚ Outils d’analyse des données (audio, vidéo, diapositives et transparents) des conférences (TNO, University of Amsterdam) À la fin du projet européen, en juin 2004, le CERN a décidé de continuer à développer le logiciel de gestion de conférence qui a alors pris le nom du projet: Indico. La première conférence supportée par Indico a été CHEP04 et d’autres conférences ont prévu de l’utiliser. fig. 1 L’institut se fixe comme objectifs: 1. une recherche appliquée de haut niveau, 2. une augmentation de la capacité d’innovation, 3. une promotion active de nouvelles technologies, 4. la constitution d’un réseau entre entreprises, HES et instituts universitaires. ������������� ������������� ��������� ������������������� fig. 2 fi 2 – 1er mars 2005 – page 19 Smart Multimedia Archive for Conferences (S.M.A.C.) Maintenant, Indico est en phase de production au CERN et deviendra l’outil principal de gestion de réunion, workshop et conférence du CERN d’ici 2005, remplaçant ainsi l’agenda (logiciel de gestion de réunion également développé au CERN). Plusieurs instituts et sociétés en dehors du CERN ont installé Indico pour répondre à des besoins similaires. IM2.DI IM2.DI (Document Integration) est un sous-projet d’IM2, mené à l’Université de Fribourg et à l’école d’Ingénieurs et d’Architectes de Fribourg. Son objectif principal est d’aligner divers types de documents avec des enregistrements audio et vidéo. Diverses sortes de documents statiques utilisés durant des réunions, soit sous forme papier ou soit projetés, sont analysés et comparés aux données multimédias pour permettre d’établir des liens entre les différentes modalités. IM2.DI cherche à combler le manque de liens entre des documents non temporels et d’autres médias temporels. C’est pourquoi divers documents (agenda, rapports, transparents, notes de participants, etc.) utilisés durant les réunions sont stockés au format PDF, analysés et indexés, en se basant sur leurs structures physique et logique. Objectifs du projet SMAC Le but du projet SMAC est de créer un outil permettant l’acquisition, l’archivage, l’analyse et la consultation d’archives de conférence multimédia (fig. 2). Ces archives peuvent contenir des documents statiques (papier), des diaporamas, des fichiers audio/vidéo et/ou des transcriptions de la parole. Ce projet est basé sur les recherches effectuées à l’EIA-FR, à l’UNIFR dans le cadre d’IM2 et par le projet Indico du CERN. Afin de valider ces travaux, un prototype sera installé dans l’aula de l’EIA-FR courant 2005. Les étapes du projet SMAC Plusieurs tâches sont planifiées dans le cadre de ce projet: Tâche 1: Acquisition Il s’agit de développer un module permettant: ❚ l’enregistrement de la conférence; ❚ la diffusion en temps réel; ❚ l’automatisation des processus d’acquisition; ❚ la récupération des données des conférences déjà enregistrées, et la modification selon nécessité. De plus, il est prévu de développer une version «light mobile» permettant une installation légère de la version standard et qui correspond à un besoin de mobilité chez l’utilisateur. Tâche 2: Archivage ❚ Dans le cadre de cette tâche, il s’agit: de définir la structure du système d’archivage (formats,…); fi 2 – 1er mars 2005 – page 20 ❚ ❚ de réaliser un système gérant l’ajout de données (annotations); de mettre en place une base de données à définir selon la tâche 4. Tâche 3: Analyses Plusieurs activités sont prévues dans le cadre de cette tâche: ❚ la définition d’un modèle XML pour les annotations; ❚ la génération automatique de la transcription; ❚ l’analyse de documents (extraction structures physique et logique); ❚ la génération des différents alignements (détection des changements de transparents, des citations, des références et des liens thématiques); ❚ la génération de liens entre les différentes données d’un enregistrement en utilisant les alignements. Tâche 4: consultation ❚ ❚ Pour la consultation, il s’agit: d’effectuer des tests et des évaluations des différentes technologies utilisables (SMIL, SVG, etc.); de développer à la fois (a) une interface utilisateur permettant de visualiser de façon synchrone les données de la présentation d’un conférencier, i.e. audio-vidéo, diaporama, article, et (b) une interface système permettant une indexation efficace des données au niveau du serveur de documents. Tâche 5: Module de test Dans le cadre de cette tâche, une installation du démonstrateur dans l’aula de l’EIA-FR est prévue courant 2005, mais également un effort d’harmonisation entre les fonctionnalités du projet Indico et celles de IM2 est prévu afin de garantir une compatibilité au niveau des données. Conclusion Le projet SMAC illustre parfaitement la mutation du paysage suisse de la recherche qui prône une meilleure collaboration entre les institutions de la recherche fondamentale et les nouvelles institutions plutôt orientées vers une recherche complémentaire, plus appliquée et plus proche du tissu industriel. SMAC est actuellement en phase de développement, les résultats seront présentés lors d’une séance d’information dans la salle AULA de l’EIA-FR avec les nouvelles installations et les nouvelles fonctionnalités prévues fin 2005. Nous sommes prêts à partager notre expérience en faveur d’une collaboration avec d’autres écoles et institutions qui seraient intéressées par la mise en place d’un tel système au sein de leur organisation. ■ Le mode Document Maître dans Word Jacqueline Frey, [email protected], arobasque Convention pictographique Ω = 15 min M = facile ΩΩ = 30 min MM = moyen ΩΩΩ = 45 min MMM = difficile Temps: entre ΩΩ et ΩΩΩ Difficulté: MM Public cible: utilisateurs de Word souhaitant gérer de longs documents Ce mode de travail de Word – couramment utilisé jadis pour gérer de longs documents – est depuis pas mal d’années en sérieuse perte de vitesse. Au premier coup d’œil, je vois 3 raisons à cela: premièrement, l’arrivée de FrameMaker, deuxièmement, nos ordinateurs sont de plus en plus performants et troisièmement, la très grande discrétion de ce mode de travail qui a disparu du menu Affichage depuis plusieurs versions. Bien entendu, tout le monde n’a pas la chance de disposer de FrameMaker ou d’un ordinateur puissant capable de gérer des fichiers de plusieurs dizaines de méga-octets. Dans certaines situations, le recours au mode Document Maître se justifie parfaitement,… encore faut-il le trouver dans Word… Pour les distraits, je rappelle que l’utilisation d’un document maître permet d’organiser et de gérer un long document en le divisant en sous-documents plus légers en Kilo-octets et donc plus maniables. Le mode Document Maître permet de créer une table des matières, un index, des renvois et des en-têtes et pieds de page qui s’appliquent à l’ensemble des sous-documents. Et dernière chose… un document maître contient des liens pointant vers un ensemble de sous-documents liés. Ces détails étant réglés…, passons, si vous le voulez bien, aux choses sérieuses… Préparation d’un document maître ❚ Ouvrez le document qui fera office de document maître (ou en mode Plan, créez un nouveau document et tapez les sujets principaux de votre document.) ❚ Menu Affichage > Plan. ❚ Si nécessaire, cliquez sur le bouton ci-contre pour afficher la barre d’outils mode Document Maître. ❚ Attribuez un style de titre à chaque titre (choisissez Titre 1 pour le document maître et Titre 2 pour chaque sous-document, par exemple). ❚ Assurez-vous que le premier titre de la sélection soit mis en forme avec le style de titre ou le niveau de plan que vous souhaitez utiliser pour le début de chaque sousdocument. Par exemple, si la sélection commence par Titre 2, Word crée un nouveau sous-document pour chaque Titre 2 du texte sélectionné. Scinder un document maître en sous-documents ❚ Une fois les niveaux du plan définis, sélectionnez les titres pour lesquels vous désirez créer des sous-documents. Si vous sélectionnez plusieurs titres à la fois, Word crée un sous-document pour chaque titre du niveau le plus haut de votre sélection: par exemple, si votre sélection commence par un titre de niveau 2, Word crée un sous-document chaque fois qu’il rencontre un titre de niveau 2. Les titres et le texte situés sous un titre accompagnent évidemment celui-ci dans le sous-document ❚ Cliquez sur le bouton Créer sous-document. Chaque sous-document constitue alors une zone et une icône de sous-document apparaît en haut à gauche de celle-ci. Enregistrement du document maître et de sa structure ❚ Enregistrez votre document maître par la commande Fichier > Enregistrer sous. Word enregistre alors le document maître et tous ses sous-documents au même endroit, en nommant automatiquement les sous-documents par des noms qu’il choisit (en général, ils commencent tous par les mêmes caractères que le titre du chapitre). Mise en forme d’un document maître Vous pouvez mettre en forme un document maître de la même façon que n’importe quel document Word. De plus, chaque sous-document constituant une section dans le document principal, vous pouvez formater différemment chacun d’entre eux. En-tête et pied de page Les mises en forme, telles que les en-têtes, styles, marges, s’appliqueront à tous les sous-documents si elles sont définies dans le document principal, ou seulement au sous-document actif si vous les définissez dans un sous-document. Mise en forme des sous-documents Idéalement les sous-documents ne devraient pas être mis en forme de façon indépendante, ceci pour deux raisons: 1. on souhaite généralement une certaine cohérence au sein d’un même document; 2. certaines mises en forme faites dans le document maître deviennent prioritaires. Toutefois, si les sous-documents possèdent des en-têtes et pieds de page ou des marges différentes, ces paramètres seront conservés lors de l’importation du sous-document. fi 2 – 1er mars 2005 – page 21 Le Mode Document maître Travail dans un document maître Réduire l’affichage des sous-documents ❚ Cliquez sur le bouton ci-contre pour afficher ou réduire l’affichage des sous-documents. Lorsque les sous-documents sont réduits dans le document maître, chaque sous-document apparaît sous forme de lien hypertexte bleu. ❚ Si vous cliquez sur le lien hypertexte, Word ouvre le sous-document dans une fenêtre à part. Insérer un document Word existant dans un document maître ❚ Ouvrez le document maître. ❚ Cliquez à l’endroit où vous souhaitez ajouter le document existant (par exemple à la fin ou entre deux sous-documents… dans ce cas veillez à cliquer sur une ligne vide entre les sous-documents existants). ❚ Dans la barre d’outils Mode Plan, cliquez sur Insérer un sous-document. ❚ Dans la zone Nom de fichier, tapez le nom du document à ajouter, puis cliquez sur Ouvrir. Word insère alors un saut de section de type Page suivante avant le sous-document et un saut de section Continu après. Gestion des sous-documents Ouvrir un sous-document ❚ Pour ouvrir un sous-document, ouvrez d’abord le document maître. ❚ Passez en Mode Plan et double-cliquez sur l’icône du sous-document à ouvrir. Il est également possible d’ouvrir directement un sous-document (par la commande Fichier > Ouvrir) pour y travailler; il est cependant très important de l’ouvrir à partir du document principal si vous désirez le renommer ou l’enregistrer ailleurs. De même, si vous désirez apporter des modifications qui influencent l’ensemble du document principal, comme supprimer ou ajouter des sous-documents, faites-le toujours à partir du document maître. Renommer un sous-document ❚ Ouvrez le document maître. ❚ Menu Affichage > Plan. ❚ Si les sous-documents sont développés, cliquez sur Réduire les sous-documents. ❚ Appuyez sur CTRL et cliquez sur le lien du sous-document à renommer. ❚ Dans le menu Fichier, cliquez sur Enregistrer sous. ❚ Tapez le nouveau nom de fichier ou le nouvel emplacement du sous-document, puis cliquez sur Enregistrer. ❚ Pour fermer le sous-document et revenir au document maître, ouvrez le menu Fichier et choisissez Fermer. ❚ Finalement, enregistrez le document maître pour sauvegarder la nouvelle structure puis fermez-le. Lorsque vous renommez un sous-document, la version fi 2 – 1er mars 2005 – page 22 précédente du fichier du sous-document demeure à l’emplacement d’origine. Vous pouvez éventuellement supprimer ce premier fichier devenu inutile. Diviser un sous-document Si un sous-document devient trop volumineux, vous pouvez le diviser en plusieurs parties, chacune d’elles devenant à son tour un sous-document. ❚ Pour cela, positionnez votre pointeur à l’endroit où vous désirez effectuer la séparation. ❚ Cliquez sur le bouton Diviser sous-document. ❚ Enregistrez le document maître afin qu’il tienne compte de la nouvelle structure. Fusionner des sous-documents ❚ Ouvrez le document maître. ❚ Menu Affichage > Plan. ❚ Sélectionnez les sous-documents à fusionner en cliquant sur leur icône. Pour sélectionner plusieurs sous-documents adjacents, cliquez sur la première icône, maintenez la touche MAJ enfoncée et cliquez sur la dernière icône. ❚ Dans la barre d’outils Mode Document Maître, cliquez sur Fusionner sous-documents. Supprimer un sous-document ❚ Ouvrez le document maître. ❚ Menu Affichage > Plan. ❚ Si vous désirez ramener le contenu d’un sous-document au niveau de simples titres du document principal, cliquez sur son icône puis sur le bouton Supprimer sous-document. Supprimer le contenu d’un sous-document ❚ Ouvrez le document maître. ❚ Menu Affichage > Plan. ❚ Cliquez sur l’icône du sous-document à supprimer. ❚ Appuyez sur la touche Delete. Notez que dans ce cas, le fichier existe encore à l’emplacement où il était enregistré, mais il n’a plus de rapport avec le document principal. Protection des sous-documents Si vous apercevez une icône en forme de cadenas dans une zone de sous-document, cela signifie que le sous-document est en lecture seule et ne peut donc être modifié. ❚ Vous pouvez le déverrouiller en le sélectionnant et en cliquant sur le bouton Verrouiller document. Bien entendu, utilisez ce même bouton si vous souhaitez verrouiller un sous-document. Ceci dit, si vous désirez véritablement protéger un document, cliquez sur le bouton Options de la boîte de dialogue Enregistrer ou Enregistrer sous et tapez un mot de passe de protection. ■ Programme des cours organisés par le Domaine IT de l’EPFL Renseignements (les matins des lu, me & ve) Daniele.Gonzalez@epfl.ch ✆ 021/69 353 14 Fax: 021/69 322 20 Ces cours sont ouverts à tous, membres ou non de l’EPFL. Pour le personnel de l’EPFL, le DIT se charge des frais de cours. Les descriptifs des cours sont sur internet: http://dit.epfl.ch/formation Vous pouvez nous atteindre à l’adresse: cours.dit@epfl.ch Renseignements (tous les matins) Josiane.Scalfo@epfl.ch ✆ 021/69 322 44 Fax: 021/69 322 20 CONDITIONS D’INSCRIPTION En cas d’empêchement à suivre le(s) cours, l’élève avertira le Domaine IT au minimum une semaine à l’avance (sauf cas exceptionnel), faute de quoi le DIT se réserve le droit de facturer à son unité les frais occasionnés pour le cours. Une confirmation parviendra à l’élève environ deux semaines avant le(s) cours. S’il est déjà complet, l’élève sera informé de suite et son nom placé en liste d’attente. Dès qu’un cours identique sera fixé, il recevra un nouveau formulaire d’inscription. Le DIT se réserve le droit d’annuler un cours si le nombre minimum de 4 participants n’est pas atteint ou pour des raisons indépendantes de sa volonté. Aucune compensation ne sera due par le DIT. INTRODUCTION AU POSTE DE TRAVAIL OS Nouveau Mac Nouveau Win Nom du cours Mac OS X Rapido: optimiser la gestion de vos dossiers et documents Windows XP Rapido: optimiser la gestion de vos dossiers et documents N˚ 1/2 jour(s) Date(s) Horaire 05-0220 1 18.04.2005 08:30 - 10:30 05-0254 1 21.04.2005 08:30 - 10:30 ACQUISITION ET TRAITEMENT DE DONNÉES OS Win Win Win Win Win Win Win Nouveau Win Nom du cours LabVIEW Basics I LabVIEW Basics II LabVIEW DAQ LabVIEW Intermediate I LabVIEW Intermediate II LabVIEW Workshops LabVIEW Workshops LabVIEW, un travail efficace grâce à la version 7.x N˚ 1/2 jour(s) 05-0017 6 05-0023 4 05-0024 6 05-0016 6 05-0026 4 05-0013 2 05-0018 2 05-0015 Date(s) 04 au 06.04.2005 09 & 10.05.2005 11 au 13.05.2005 30.03 au 01.04.2005 16 & 17.06.2005 22.03.2005 07.04.2005 2 Horaire 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 29.03.2005 08:30 - 17:00 APPLICATIONS DE GESTION DE L’EPFL OS Nom du cours Mac Win Accréditation EPFL Comptabilité EPFL & Infocentres N˚ 1/2 jour(s) 05-0130 05-0159 1 2 Date(s) Horaire 14.03.2005 14:00 - 16:00 14 & 15.03.2005 08:30 - 12:00 BASE DE DONNÉES OS Nom du cours Win Win Mac Win Mac Access 2003, 1-introduction Access 2003, 2-avancé FileMaker Pro 7, 1-introduction FileMaker Pro 7, 1-introduction FileMaker Pro 7, 2-les modèles N˚ 1/2 jour(s) 05-0242 05-0264 05-0046 05-0176 05-0177 4 4 1 1 1 Date(s) Horaire 11, 15, 18 & 25.04.2005 14, 21.03, 04 & 08.04.05 03.03.2005 07.04.2005 12.04.2005 08:30 - 12:00 08:30 - 12:00 13:30 - 17:00 08:30 - 12:00 08:30 - 12:00 fi 2 – 1er mars 2005 – page 23 Formation Mac Mac Mac Win Win FileMaker Pro 7, 3-les listes de valeurs et options FileMaker Pro 7, 4-les scripts et boutons FileMaker Pro 7, 5-développement d’une base de données FileMaker Pro, transition des versions 5 ou 6 à 7.0 SQL - My SQL 05-0178 05-0179 1 1 14.04.2005 08:30 - 12:00 19.04.2005 08:30 - 12:00 05-0219 3 21, 26 & 28.04.2005 08:30 - 12:00 05-0180 05-0036 1 4 26.04.2005 13:30 - 17:00 22 & 23.03.2005 08:30 - 12:00 DESSIN, IMAGE OS Win Mac Win Nom du cours GIMP Illustrator CS, introduction PhotoShop: saisie, retouche, impression N˚ 1/2 jour(s) Date(s) 05-0146 3 09, 16 & 23.03.2005 05-0105 2 07 & 10.03.2005 05-0147 4 05, 06, 12 & 13.04.2005 Horaire 13:30 - 17:00 08:30 - 12:00 13:30 - 17:00 ÉDITION OS Win Win Mac Nouveau Win Win Win Win Mac Win Mac Win Win Mac Win Mac Win Mac Mac Win Win Mac Mac Win Nom du cours FrameMaker 7, 1-mise en forme FrameMaker 7, 2-livre et EndNote In-Design Latex, introduction OpenOffice Texte (Writer) OpenOffice, transition de Word à OpenOffice Texte (Writer) Word Rapido: améliorer la mise en page d’un PV Word Rapido: améliorer la mise en page d’un PV Word Rapido: créer un document maître Word Rapido: créer un document maître Word Rapido: gagner du temps grâce aux automatismes Word Rapido: gagner du temps grâce aux automatismes Word Rapido: gagner du temps grâce aux automatismes Word Rapido: gérer les tabulations et retraits Word Rapido: gérer les tabulations et retraits Word Rapido: insérer des images Word Rapido: insérer des images Word Rapido: mailing Word Rapido: mailing Word Rapido: optimiser la mise en forme de vos documents Word Rapido: optimiser la mise en forme de vos documents Word Rapido: partager efficacement vos documents Word Rapido: partager efficacement vos documents N˚ 1/2 jour(s) Date(s) Horaire 05-0192 05-0193 05-0106 05-0156 05-0215 3 1 3 8 2 03, 10 & 12.05.2005 24.05.2005 14, 16 & 21.03.2005 18 au 21.04.2005 21 & 23.06.2005 08:30 - 12:00 08:30 - 12:00 08:30 - 12:00 08:30 - 12:00 13:30 - 17:00 05-0214 05-0091 05-0236 05-0090 05-0226 1 1 1 1 1 02.06.2005 16.03.2005 12.05.2005 11.03.2005 02.06.2005 13:30 - 17:00 08:30 - 10:30 13:30 - 15:30 08:30 - 10:30 13:30 - 15:30 05-0087 1 03.03.2005 13:30 - 15:30 05-0240 1 05.04.2005 08:30 - 10:30 05-0224 05-0175 05-0221 05-0088 05-0222 05-0101 05-0093 1 1 1 1 1 1 1 26.05.2005 22.03.2005 28.04.2005 09.03.2005 03.05.2005 17.03.2005 30.03.2005 05-0089 1 10.03.2005 08:30 - 10:30 05-0223 1 19.05.2005 08:30 - 10:30 05-0100 1 08.03.2005 08:30 - 10:30 05-0092 1 17.03.2005 13:30 - 15:30 08:30 - 10:30 08:30 - 10:30 13:30 - 15:30 08:30 - 10:30 08:30 - 10:30 08:30 - 10:30 08:30 - 10:30 ORGANISATION - PLANIFICATION OS Nouveau Win Win Win Nom du cours MS Project, introduction Outlook 2003 Outlook Rapido, la messagerie fi 2 – 1er mars 2005 – page 24 N˚ 1/2 jour(s) 05-0216 05-0073 05-0076 2 2 1 Date(s) Horaire 27.04 & 04.05.2005 08:30 - 12:00 07 & 10.03.2005 13:30 - 17:00 18.03.2005 08:30 - 10:30 Formation PRÉSENTATION OS Nouveau Win Mac Win Mac Win Mac Win Nom du cours Mind-manager, introduction PowerPoint Rapido, diaporama PowerPoint Rapido, diaporama PowerPoint Rapido, insertion d’éléments graphiques PowerPoint Rapido, insertion d’éléments graphiques PowerPoint Rapido, modèles et masques PowerPoint Rapido, modèles et masques N° 1/2 jour(s) Date(s) Horaire 05-0218 05-0235 05-0247 1 1 1 23.05.2005 13:30 - 17:00 11.03.2005 08:30 - 10:30 28.04.2005 13:30 - 15:30 05-0234 1 09.03.2005 08:30 - 10:30 05-0244 05-0233 05-0243 1 1 1 18.04.2005 08:30 - 10:30 02.03.2005 08:30 - 10:30 14.04.2005 13:30 - 15:30 PROGRAMMATION OS Nom du cours Win Win PHP Programmation: introduction pour débutant (avec VB.NET) 1/2 jour(s) Date(s) Horaire 05-0033 6 02 au 04.03.2005 08:30 - 17:00 05-0034 10 07 au 11.03.2005 08:30 - 17:00 PROGRAMMATION, NOUVEAUTÉS 2005 Nouveau Nouveau Nouveau Nouveau Nouveau N˚ Venez découvrir les nouveautés de différents langages de programmation lors des 1/2 journées de découvertes ci-dessous (inscriptions par mail: cours.dit@epfl.ch) OS Nom du cours Win Win Win Win Développer des pages Web dynamiques en 2005 Le point sur Java en 2005 Microsoft .Net en 2005 XML, Services Web et SGBD N˚ 1/2 jour(s) 05-0169 05-0168 05-0171 05-0170 1 1 1 1 Date(s) Horaire 14.03.2005 14.03.2005 21.03.2005 21.03.2005 13:30 - 17:00 08:30 - 12:00 13:30 - 17:00 08:30 - 12:00 SYSTÈME OS Nom du cours Linux Linux, administration et réseau Linux Linux, débutant Win Windows Server 2003, 3-implémentation d’une infrastructure W2003 Win Windows Server 2003, 5-implémentation de Windows Server 2003 Active Directory Win Windows Server 2003, permissions d’accès aux ressources Nouveau Win Windows Server 2003, technique de déploiement RIS Win Windows XP Pro, administration avec SP2 Win Workshop MS Virtual PC 2004 Win Workshop Service Pack 2 de Windows N˚ 1/2 jour(s) Date(s) Horaire 05-0035 05-0258 8 6 15 au 18.03.2005 08:30 - 17:00 05 au 07.04.2005 08:30 - 17:00 05-0174 4 09 & 10.03.2005 08:30 - 17:00 05-0115 8 15 au 18.03.2005 08:30 - 17:00 05-0262 2 28.04.2005 08:30 - 17:00 05-0261 05-0116 05-0260 05-0259 2 10 2 2 26.04.2005 12 au 18.04.2005 22.04.2005 20.04.2005 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 08:30 - 17:00 Date(s) 03.03.2005 19.04.2005 13.04.2005 02, 09 & 11.05.2005 14.03.2005 Horaire 08:30 - 10:30 08:30 - 10:30 08:30 - 12:00 08:30 - 12:00 13:30 - 17:00 TABLEUR OS Win Win Win Win Win Nom du cours Excel Rapido, les graphiques Excel Rapido, les tableaux croisés dynamiques Excel, 1-introduction Excel, 2-feuille de calcul Excel, base de données N° 1/2 jour(s) 05-0057 1 05-0189 1 05-0186 1 05-0187 3 05-0059 1 fi 2 – 1er mars 2005 – page 25 Formation Win Win OpenOffice Classeur (Calc) OpenOffice, transition de Excel à OpenOffice Classeur (Calc) 05-0213 2 13 & 15.06.2005 13:30 - 17:00 05-0212 1 18.05.2005 13:30 - 17:00 WWW - WEB OS Nom du cours Mac Mac Win Mac Mac Win Win Dreamweaver MX, 1ère partie Dreamweaver MX, 2ème partie Dreamweaver MX, avancé Flash, 1ère partie Flash, 2ème partie Jahia 4: création de sites web EPFL Jahia, transition à la version 4 N˚ 1/2 jour(s) 05-0181 05-0182 05-0185 05-0190 05-0191 05-0068 05-0069 2 2 2 3 2 2 1 Date(s) Horaire 11 & 13.04.2005 18 & 20.04.2005 15 & 17.06.2005 09, 11 & 18.05.2005 30.05 & 01.06.2005 02 & 04.03.2005 24.03.2005 13:30 - 17:00 13:30 - 17:00 08:30 - 12:00 13:30 - 17:00 13:30 - 17:00 08:30 - 12:00 08:30 - 12:00 formulaire d'inscription en dernière page Prenez le large avec Firefox Olivier.Burri@epfl.ch, étudiant en Section des sciences de la vie de l'EPFL 21’507’494 téléchargements au moment de l’écriture de cet article. Le navigateur signé Mozilla a atteint sa version 1.0 après 19 mois de développement. Le moment est maintenant venu pour ce programme de se faire remarquer par le grand public. Le 16 décembre 2004, grâce à des donations de la communauté Spread Firefox, le petit renard a pu s’offrir deux pages de publicité dans le New York Times, créant un énorme boum de téléchargements. Actuellement, l’équipe de Spread Firefox publie qu’ils en sont à pas moins d’un quart de million de téléchargements par jour ! Explications ? La majorité des utilisateurs adopte Firefox pour sa faible exigence en ressources et l’absence d’une grande partie des bugs de sécurité si bien (ou mal) connus d’Internet Explorer. Passer d’Internet Explorer à Firefox C’est simple: Firefox importe tous vos favoris automatiquement, donc aucune perte de temps à réorganiser ou recréer des dossiers. Il n’a aucun problème pour adopter tous les plug-ins nécessaires à visualiser le contenu du Web, à savoir Macromedia Flash Player, Adobe Acrobat Reader, MDL Chime et bien d’autres. Il intègre même une barre de recherche Google (parmi d’autres) pour simplifier les recherches. Au-delà, Firefox offre un certain nombre de fonctionnalités utiles inexistantes chez le navigateur de Microsoft. fi 2 – 1er mars 2005 – page 26 La première et plus notable est la navigation par onglets (tabbed-browsing): ce concept offre la possibilité d’ouvrir plusieurs pages en arrière-plan dans la même fenêtre. Cela peut sembler superflu, mais la possibilité d’ouvrir un grand nombre de pages Web (plusieurs résultats de recherche pertinents, par exemple) accessibles par la suite en un seul clic est souvent une bénédiction. On profite en même temps d’une réduction de la charge sur le système. Firefox offre également un blocage des fenêtres popup très efficace et bienvenu. C’est vous qui contrôlez où et quand une nouvelle fenêtre s’ouvre grâce à une simple barre d’annonce en haut du navigateur lorsqu’un popup a été bloqué. Il faut noter que depuis le Service Pack 2 de Windows XP, Internet Explorer offre la même fonctionnalité. Mozilla offre Firefox sur toutes les plates-formes et une énorme gamme de langues différentes, l’argument je ne parle pas anglais n’étant pas valable ici. Il faut rapidement accepter qu’il existe plusieurs outils pour surfer sur Internet, dont quelques-uns gratuits en plus; alors qu’est ce que vous attendez ? téléchargement La prochaine fois, au lieu de télécharger le dernier patch d’Internet Explorer, optez pour Firefox 1.0 et améliorez votre expérience du Web avec un poids plume: 4,7Mo. Et tant que vous vous êtes lancés, pourquoi pas opter pour Thunderbird pour remplacer Outlook Express ? Obtenez votre copie de Firefox 1.0 à l’adresse suivante: http://www.getfirefox.com. ■ Solaris 10 – les nouvelles fonctionnalités majeures Pascal.Fabbri@epfl.ch, Domaine IT La nouvelle version d’un système d’exploitation est toujours un événement: c’est donc la version 10 de Solaris disponible au téléchargement depuis le 1er février 2005. Aboutissement de près de 3 000 années-hommes en Recherche & Développement, la nouvelle version du système d’exploitation de Sun, Solaris™ 10 offre plus de 600 nouvelles fonctionnalités et fournit des niveaux impressionnants de performances, de disponibilité et de sécurité. Les tests grandeur nature montrent que Solaris 10 permet de faire tourner les applications existantes jusqu’à 30 fois plus vite, grâce à une pile TCP/IP améliorée et à une nouvelle conception des mécanismes de threading1. Ce système d’exploitation permet aussi de faire tourner côte à côte des applications natives GNU/Linux et Solaris, sans compromettre les performances ni exiger de modifications. Quelques nouvelles fonctions puissantes de Solaris 10 Les conteneurs Solaris Cette forme de virtualisation offre les avantages de plusieurs systèmes virtuels (plus de 8000) tout en n’ayant qu’une seule image d’OS à maintenir. Les applications Solaris et GNU/Linux peuvent être consolidées au sein d’un même serveur physique, dans la même instance Solaris. Les Conteneurs Solaris étant totalement isolés les uns des autres, ils permettent d’héberger des applications de natures différentes dans chacun des conteneurs. Un Conteneur Solaris s’administre simplement via une interface graphique. La conception même des Conteneurs Solaris – notion de zone globale – permet d’automatiser les tâches – sauvegarde, mise à niveau des correctifs…– sur plusieurs conteneurs simultanément. Il est en fait possible d’avoir plusieurs centaines de conteneurs sur un même serveur physique sans que cela ait une incidence sur la performance globale du système. Le redémarrage d’un conteneur est de surcroît extrêmement rapide et les ressources – CPU & mémoire – peuvent être affectées dynamiquement à chaque conteneur en fonction des charges observées sur chacun d’eux. Analyse dynamique, DTrace de performance, c’est un véritable langage qui permet, grâce à l’écriture de scripts, de focaliser son analyse sur des parties particulières – entrées/sorties, accès-mémoire,… –. De plus, au-delà des 30 000 points d’analyse proposés en standard, la création de nouveaux points est possible. En outre, son utilisation n’induit aucune pénalité sur les performances du système et DTrace peut donc être utilisé en production. DTrace apporte aussi une forte valeur ajoutée pour les applications GNU/Linux sur Solaris 10 car il peut être utilisé pour analyser une application GNU/Linux tournant sur Solaris. Le système de fichiers dynamique ZFS ZFS3 est un système de fichiers de nouvelle génération qui combine un gestionnaire de volumes avec un système de fichier ayant une capacité 16 milliards de milliard de fois plus importante que celle des systèmes de fichiers 32 ou 64 bits actuels. On peut compter 9 000 ans à un client qui créerait 1000 fichiers par seconde pour atteindre la capacité maximale du système de fichier. ZFS protège toutes les données avec des sommes de contrôle 64 bits qui détectent et corrigent la corruption silencieuse des données. Il faut aussi compter entre 70% et 80% de réduction du temps d’administration grâce à l’automatisation de tâches courantes telles que la création ou l’administration de volumes. Le système de fichiers distribué La révision 4 du Network File System représente une nouvelle approche pour l’accès aux ressources distantes, déjà largement adopté. Sun est l’une des compagnies ayant contribué à la définition de NFSv4. Ce protocole intègre des fonctionnalités de verrouillage de fichiers, de sécurité forte, de coalescence d’opérations, et de délégation permettant d’accroître les performances clients sur les réseaux à forte latence du genre Internet. NFSv4 utilise le standard RPCSEC–GSS (RFC2203), qui permet aux protocoles RPC d’accéder à l’interface de programmation d’applications Generic Security Services (GSS-API), et de garantir l’intégrité et la confidentialité des données. Ce protocole support également d’autres mesures de sécurité telles que l’Access Control List (ACL). DTrace2 est un outil qui offre des possibilités d’analyse du kernel, des applications et permet d’obtenir des informations détaillées sur les événements et opérations de Solaris 10, ceci pour l’analyse de performance et le debugging. Les gains en performance constatés à ce jour ont été d’au minimum 30%. Ils sont en général bien supérieurs et ceci, avec un effort d’investigation de l’ordre de quelques heures à quelques jours. DTrace est plus qu’une simple application d’analyse Connu sous le nom de projet Janus, Sun a implanté au sein du noyau4 Solaris, un environnement d’exécution compatible avec les binaires GNU/Linux. Il ne s’agit pas d’un émulateur, mais plutôt d’un gestionnaire d’appels système dans le noyau Solaris qui redirige les appels GNU/Linux vers les librairies GNU/Linux spécifiques aux distributions. 1 2 3 4 traitement des unités d’exécution Dynamic Tracing Support en mode natif des applications GNU/Linux zettabyte file system seulement sur les plates-formes x86 Intel ou AMD fi 2 – 1er mars 2005 – page 27 Solaris 10 – les nouvelles fonctionnalités majeurs L’autorétablissement prédictif (Predictive Self- ❚ Compatibilité garantie à 100 % pour les applications (clientes et éditeurs) depuis la version Solaris 2.6 ❚ Des applications jusqu’à 30 fois plus rapides sur UltraSPARC® ❚ Un niveau de sécurité maximal (Military-Grade Security) et aucun virus répertorié à ce jour ❚ Généralisation des systèmes d’autocorrection ❚ Partitionnement logique de type Mainframe grâce aux conteneurs ❚ Exécution native des applications GNU/Linux sur processeurs Intel® ou AMD Opteron™ ❚ Catalogue d’applications ISV5 impressionnant ❚ Désormais gratuite, Right To Use, comprenant bien entendu les correctifs de sécurité. Healing) Le Predictive Self-Healing permet aux systèmes Sun de prédire la défaillance d’un composant et de contenir les problèmes avant qu’ils ne provoquent une erreur au niveau du système en corrigeant les anomalies. Sun propose un environnement flexible pour définir les niveaux d’erreurs pour un CPU, mémoire, disque, etc., et déclencher des réponses automatiques comme la migration de processus ou de données de l’élément suspect vers une ressource saine. En plus des fonctions définies par défaut, Sun offre un cadre extensible qui peut être étendu à d’autres services et logiciels. L’API sera publié et documenté ce qui permettra aux utilisateurs et ISV5d’intégrer ces possibilités dans leurs propres applications. Références Avantages et bénéfices [1] Présentation au Domaine IT de l’EPFL conduite par Dr. Marc Hamilton, Director of Technology Sun Microsystems Global Education and Research, le 19 janvier 2005 [2] Sun Network Computer Launch 2004-Q4, le 7 décembre 2004 à Genève [3] Article Forrester November 9, 2004: Solaris 10 – Major Value For Sun Customers par Richard Fichera avec Brad Day et Thomas Powel (http://www.forrester.com/Research/Document/Excerpt/0,7211,35775,00.html) [4] Page officielle Solaris 10: http://wwws.sun.com/software/ solaris/10 [5] Dossier en français Solaris 10: http://www.sun.fr/features/2004–1511– nc04q4/index.html [6] Sun Document ID 71327: What is NFS Version 4 ? ■ Enfin pour conclure, voici, en bref et dans le désordre, les avantages et les bénéfices importants que l’on peut retenir pour Solaris 10: ❚ Support des processeurs SPARC, AMD, Intel®, et optimisé pour UltraSPARC® et AMD Opteron™, 64 bits sur UltraSPARC et AMD Opteron™, 32 bits sur Xeon MP ❚ Certification sur plus de 273 systèmes différents de plusieurs constructeurs (liste disponible sur http://www. sun.com/bigadmin/hcl) ❚ Des innovations techniques uniques (DTrace, ZFS, Conteneurs, Janus, Process rights management,…) 5 Independent Software Vendor INSCRIPTION POUR LES COURS ORGANISÉS PAR LE DIT A retourner à Josiane Scalfo ou à Danièle Gonzalez, DIT-EPFL, CP 121, 1015 Lausanne Je, soussigné(e) Nom: ____________________________________ Prénom: ___________________________ Tél.: _____________ E-Mail: ___________________________ Fonction: __________________________ Institut: ______________________________________________ Faculté: ___________________________ Adresse: ___________________________________________________________________________________ m’engage à suivre le(s) cours dans son (leur) intégralité et à respecter l’horaire selon les conditions d’inscription: Nom du cours N° du cours N° cours de remplacement Date du cours __________________________________________________________________________________________ Date: ___________________________________________ signature: __________________________________________________________________________________________ Autorisation du chef hiérarchique: nom lisible: ___________ signature: __________________________________________________________________________________________ Intérêt et souhait pour d’autres cours Description ou titre des cours que je souhaite voir organiser par le DIT: __________________________________________________________________________________________ fi 2 – 1er mars 2005 – page 28 ISSN 1420-7192