Traduction binaire dynamique de l extension SIMD
|
|
- Fabienne Martine Joseph
- il y a 8 ans
- Total affichages :
Transcription
1 Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu Travaux d études et de recherches Ensimag - Tima SLS 25 mai 2010
2 Table des matières 1 Introduction 2 Tiny code generator Les helpers 3 Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD 4
3 Contexte du TER Laboratoire et tuteurs Laboratoire TIMA, équipe SLS Frédéric Pétrot et Nicolas Fournel Contexte de recherche Travaux autour de la simulation de systèmes, Systèmes de plus en plus lourds à simuler, Besoin d accélérer cette simulation.
4 Qemu : a fast and portable dynamic translator Simulation avec Qemu Logiciel open-source d émulation et de virtualisation, Traduction binaire dynamique du code d une architecture cible, Pour être exécuté par une architecture hôte. Objectif du TER Amélioration de la traduction de l architecture ARM, Sous-ensemble d instructions : instructions Neon.
5 Instructions Neon : des instructions SIMD Instructions SIMD Effectuer la même opération sur plusieurs données en même temps, Très efficace pour optimiser certains algorithmes, Vecteurs de données sur 64 bits ou 128 bits, Données de tailles variables suivant les instructions.
6 Exemple : vadd.i16 128bits 16bits 16bits 16bits 16bits 16bits 16bits 16bits q q2 q0
7 Tiny code generator Les helpers La représentation intermédiaire : Tiny Code Generator Traduction en deux étapes 1 Traduction du code architecture cible vers micro-opérations TCG, 2 Traduction micro-opérations TCG vers code architecture hôte. Avantages de la TCG Code généré placé dans un buffer pour pouvoir être réutilisé, Indépendance des architectures cibles et architectures hôtes.
8 Fonctionnement de la TCG 0x : mov sp, r0 0x : sub r0, r0, # x : msr CPSR_c, #209 Code de la machine cible ARM movi_i32 tmp9,$0xdf movi_i32 tmp10,$cpsr_write call tmp10,$0x0,$0,tmp8,tmp9 movi_i32 pc,$0x11c exit_tb $0x0 Représentation intermédiaire TCG 0xb4f270ac: mov $0xd1,%ecx 0xb4f270b1: mov %ecx,(%esp) 0xb4f270b4: mov $0xdf,%ecx 0xb4f270b9: mov %ecx,0x4(%esp) 0xb4f270bd: mov %eax,0x34(%ebp) 0xb4f270c0: mov %edx,0x0(%ebp) 0xb4f270c3: call 0x821fa25 0xb4f270c8: mov $0x11c,%eax 0xb4f270cd: mov %eax,0x3c(%ebp) 0xb4f270d0: xor %eax,%eax 0xb4f270d2: jmp 0x84ed448 Code généré pour la machine hôte x86
9 Tiny code generator Les helpers Méthode de traduction des instructions Neon : les helpers Les helpers Fonction écrite en C, simule une instruction, Compilée au même moment que Qemu, Appelée lors d une occurrence de l instruction correspondante.
10 Exemple de helper 0x : vld1.32 {d0-d1}, [r0] 0x : vld1.32 {d2-d3}, [r1] 0x c: vadd.i16 q0, q1, q2 0x : vst1.32 {d0-d1}, [r0] Code de la machine cible ARM uint32_t HELPER(neon_add_u16) (uint32_t a, uint32_t b) { uint32_t mask; mask = (a ^ b) & 0x u; a &= ~0x u; b &= ~0x u; return (a + b) ^ mask; } Code du Helper ld_i32 tmp8,env,$0x2f8 ld_i32 tmp9,env,$0x308 movi_i32 tmp10,$neon_add_u16 call tmp10,$0x0,$1,tmp8,tmp8,tmp9 st_i32 tmp8,env,$0x2e8 Représentation intermédiaire TCG 0xb56c38b7: cmp 0xb56c38b9: mov 0xb56c38bb: je 0xb56c38bd: mov 0xb56c38c2: call 0xb56c38c7: jmp 0xb56c38c9: add (%edx),%eax %ecx,%eax 0xb56c38c9 $0x1,%edx 0x821ce38 0xb56c38ce 0xc(%edx),%eax Code généré pour la machine hôte x86
11 Sur-coût des helpers Tiny code generator Les helpers Sur-coûts des helpers Appel de fonction, Passage des paramètres, Adaptation des paramètres, Plusieurs appels car données sur 128 bits.
12 Recherche de solutions Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD Deux méthodes pour améliorer la traduction 1 Remplacement des helpers par des micro-opérations TCG existantes, 2 Ajout de micro-opérations SIMD dans la TCG.
13 Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD Première méthode : micro-opérations TCG classiques Conversion des helpers Conversion systématique des helpers en micro-opérations, Gain de l appel de fonction, Mais toujours adaptation des paramètres + répétition car données 32 bits.
14 Exemple avec vadd.i16 uint32_t HELPER(neon_add_u16)(uint32_t a, uint32_t b) { uint32_t mask; mask = (a ^ b) & 0x u; a &= ~0x u; b &= ~0x u; return (a + b) ^ mask; } Code du Helper static inline int gen_neon_add_u16(tcgv t0, TCGv t1) { TCGv mask = new_tmp(); tcg_gen_xor_i32(mask, t0, t1); tcg_gen_andi_i32(mask, mask, 0x u); tcg_gen_andi_i32(t0, t0, ~0x u); tcg_gen_andi_i32(t1, t1, ~0x u); tcg_gen_add_i32(t0, t0, t1); tcg_gen_xor_i32(t0, t0, mask); dead_tmp(mask); return 0; } Code traduit en µ-opérations
15 Réflexions sur la méthode, extensions Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD Automatisation de la génération Conversion des helpers longues et source d erreurs, Description formelle des instructions dans la doc de ARM, Développement d un parser pour automatiser la génération.
16 Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD Deuxième méthode : micro-opérations TCG SIMD Ajout de micro-opération SIMD dans la TCG Pas de micro-opération SIMD dans la TCG, D où l ajout de nouvelles micro-opérations, Implique modification TCG et architectures hôtes. Gains de performance Exploitation des instructions SIMD de l architecture hôte, Opérations sur des vecteurs données 64/128 bits en une fois, Plus besoin d adapter les paramètres. Exemple : vadd.i16 tcg gen simd 128 add i16(ret, arg1, arg2) ;
17 Réflexions sur la méthode, extensions Recherche de solutions Première méthode : micro-opérations TCG classiques Deuxième méthode : micro-opérations TCG SIMD Ensemble optimal de micro-opérations TCG Sous-ensemble optimal de µ-opérations à rajouter à la TCG? A la fois du point de vue de l architecture cible et hôte, En considérant plusieurs architectures avec instructions SIMD ARM Neon, x86 MMX/SSE, PowerPC Altivec, Sparc VIS...
18 Environnement de tests Bilan Traduction d une dizaine d instructions Neon avec les 2 méthodes, Environ 35 µ-opérations rajoutées dans la TCG. Linux dans Qemu Système minimaliste, mesure du temps d exécution d un benchmark, 10 millions d exécutions d une fonction avec instructions Neon
19 Résultats du benchmark Temps d exécutions 7 6,6 6,21 6,22 6 5, Premier temps d'exécution (s) Temps moyen d'exécution (s) 2 1,59 1, Version d'origine Version méthode 1 Version méthode 2
20 Résultats du benchmark Taille du basic block Taille du basic block (octet) Version d'origine Version méthode 1 Version méthode 2
21 Fin de la présentation Merci Questions?
Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu
Travaux d études et de recherches Traduction binaire dynamique de l extension SIMD Néon de l ARMv7 dans Qemu Étudiant : Luc Michel Encadrants : Frédéric Pétrot Nicolas Fournel 23 mai 2010 TABLE DES MATIÈRES
Plus en détailMachines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40
Machines virtuelles Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles La compilation peut
Plus en détailThème 3 Conception et vérification d architectures de systèmes sur puce
Thème 3 Conception et vérification d architectures de systèmes sur puce Conception et simulation Frédéric Pétrot Vérification Laurence Pierre Conception et vérification d architectures de systèmes sur
Plus en détailConception de circuits numériques et architecture des ordinateurs
Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2014-2015 Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailVirtualisation Vserver et OpenVz en entreprise
Virtualisation Vserver et OpenVz en entreprise Présentation L'environnement Pourquoi virtualiser Les différents types de virtualisation L'isolation de processus Vserver OpenVz Retour d'expérience Conclusion
Plus en détailGénération de code binaire pour application multimedia : une approche au vol
Génération de binaire pour application multimedia : une approche au vol http://hpbcg.org/ Henri-Pierre Charles Université de Versailles Saint-Quentin en Yvelines 3 Octobre 2009 Présentation Présentation
Plus en détailProgrammation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Plus en détailmachine cible machine hôte architecture cible différente de la machine hôte
1 Les émulateurs jouent un rôle fondamentale dans le développement de logiciel bas niveau pour les systèmes embarqués. Ils permettent de debugger aisément les premières instructions qui s'exécutent lors
Plus en détailRecompilation dynamique de codes binaires hostiles
Recompilation dynamique de codes binaires hostiles Sébastien Josse DGA Maîtrise de l Information Résumé Les malware sont de plus en plus difficiles à analyser, par utilisation des outils conventionnels
Plus en détailHétérogénéité pour atteindre une consommation énergétique proportionnelle dans les clouds
Hétérogénéité pour atteindre une consommation énergétique proportionnelle dans les clouds Mardi Laurent Lefèvre LIP Inria/ENS Lyon Jean-Marc Pierson, Georges Da Costa, Patricia Stolf IRIT Toulouse Hétérogénéité
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailModélisation des interfaces matériel/logiciel
Modélisation des interfaces matériel/logiciel Présenté par Frédéric Pétrot Patrice Gerin Alexandre Chureau Hao Shen Aimen Bouchhima Ahmed Jerraya 1/28 TIMA Laboratory SLS Group 46 Avenue Félix VIALLET
Plus en détailUne méthode de conception de systèmes sur puce
École thématique ARCHI 05 Une méthode de conception de systèmes sur puce (de l intégration d applications) Frédéric PÉTROT Laboratoire TIMA Institut National Polytechnique de Grenoble Frédéric Pétrot/TIMA/INPG
Plus en détailLinux embarqué: une alternative à Windows CE?
embarqué: une alternative à Windows CE? : une alternative à Windows CE Présentation Mangrove Systems Distribution embarqué Perspective WinCe / Questions Mangrove systems Créé en 2001 Soutien Soutien Ministère
Plus en détailERESI : une plate-forme d'analyse binaire au niveau noyau. The ERESI team http://www.eresi-project.org
ERESI : une plate-forme d'analyse binaire au niveau noyau The ERESI team http://www.eresi-project.org ERESI: quelques rappels 7 années de développement Plusieurs contributeurs 5 logiciels, 14 bibliothèques
Plus en détailRappels d architecture
Assembleur Rappels d architecture Un ordinateur se compose principalement d un processeur, de mémoire. On y attache ensuite des périphériques, mais ils sont optionnels. données : disque dur, etc entrée
Plus en détailSSTIC 2009. Désobfuscation automatique de binaires. Alexandre Gazet. Yoann Guillot. Et autres idyles bucoliques...
Désobfuscation automatique de binaires Et autres idyles bucoliques... Alexandre Gazet Sogeti / ESEC R&D alexandre.gazet(at)sogeti.com Yoann Guillot Sogeti / ESEC R&D yoann.guillot(at)sogeti.com SSTIC 2009
Plus en détailProjet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Plus en détailInitiation à la sécurité
Initiation à la sécurité UE Systèmes informatiques 12 septembre 2011 Julien Raeis - http://raeis.iiens.net/ Présentation Ingénieur IIE 2005 Carrière dans la sécurité des systèmes Consultant en sécurité
Plus en détailCompilation (INF 564)
Présentation du cours Le processeur MIPS Programmation du MIPS 1 Compilation (INF 564) Introduction & architecture MIPS François Pottier 10 décembre 2014 Présentation du cours Le processeur MIPS Programmation
Plus en détailUE Programmation Impérative Licence 2ème Année 2014 2015
UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative
Plus en détailVirtualisation open source État de l'art
Virtualisation open source État de l'art Jean Charles Delépine Université de Picardie Direction des Infrastructures et des systèmes d'information Une jungle d'acronymes Xen QEMU
Plus en détailConcept de machine virtuelle
Concept de machine virtuelle Chap. 5: Machine virtuelle Alain Sandoz Semestre été 2007 1 Introduction: Java Virtual Machine Machine Virtuelle Java: qu est-ce que c est? c est la spécification d une machine
Plus en détailMI03 TP. Objectifs du TP 1ère séance. 2ème séance. Construction d'un système linux embarqué complet
MI03 TP Objectifs du TP 1ère séance Construction d'un système linux embarqué complet 2ème séance Mise en place d'un environnement de développement croisé Intégration de l'extension temps réél Xenomai La
Plus en détailProgrammation assembleur : aperçu
Assembleur : Younès EL AMRANI. 1 Programmation assembleur : aperçu Programmation en assembleur : NASM Module M14 Semestre 4 Printemps 2010 Equipe pédagogique : Younès El Amrani, Abdelhakim El Imrani, Faissal
Plus en détailTAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES
TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES 1 DECOUVERTE DE LA VIRTUALISATION... 2 1.1 1.2 CONCEPTS, PRINCIPES...2 UTILISATION...2 1.2.1 Formation...2
Plus en détailÉléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if
Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailCryptoprocesseurs et virtualisation
Cryptoprocesseurs et virtualisation Étude bibliographique Master Recherche en Informatique 2 1 er février 2007 Auteur : Cyril Brulebois Encadrants : Guillaume Duc et
Plus en détailInformatique UE 102. Jean-Yves Antoine. Architecture des ordinateurs et Algorithmique de base. UFR Sciences et Techniques Licence S&T 1ère année
UFR Sciences et Techniques Licence S&T 1ère année Informatique UE 102 Architecture des ordinateurs et Algorithmique de base Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ UFR Sciences et Techniques
Plus en détailGenDbg : un débogueur générique. Didier Eymery Jean-Marie Borello Jean-Marie Fraygefond Odile Eymery Philippe Bion
GenDbg : un débogueur générique Didier Eymery Jean-Marie Borello Jean-Marie Fraygefond Odile Eymery Philippe Bion 2008 Qui sommes nous? Centre d électronique de l Armement (CELAR) Maîtrise et protection
Plus en détailJava c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java
1 - Vue générale 2 - Mon premier programme 3 - Types de Programme 1 2 c est quoi? Technologie développée par SUN Microsystems lancée en 1995 Dans un des premiers papiers* sur le langage JAVA, SUN le décrit
Plus en détailWindows serveur 2008 installer hyperv
Windows serveur 2008 installer hyperv 1 Description Voici la description fournit par le site Microsoft. «Windows Server 2008 Hyper-V est le moteur de virtualisation (hyperviseur) fourni dans Windows Server
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détailSystèmes d Exploitation & Machines Virtuelles. Format de l enseignement. Objectif du cours
Systèmes d Exploitation & Machines Virtuelles Architectures et Conception des logicielles de base pour les systèmes informatiques Par Gilles Grimaud Université des Sciences et Technologies de Lille http://www.lifl.fr/~grimaud/cours
Plus en détailSystèmes embarqués D.Rossier
D.Rossier Manuel IEM (v0.2) Manuel d'utilisation pour les laboratoires IEM Auteur: G. Boutillier / C. Bardet Objectif Cette documentation donne de brèves explications sur l'utilisation des différents outils,
Plus en détailVisualization sur Ubuntu: Quels Choix? Nicolas Barcet <nick.barcet@canonical.com>
Visualization sur Ubuntu: Quels Choix? Nicolas Barcet Ubuntu Server Product Manager 24/03/09 2 Agenda Définitions Outils de Virtualization Serveur Outils de Virtualization Poste
Plus en détailSRS DAY: Problématique liée à la virtualisation
SRS DAY: Problématique liée à la virtualisation Anthony GUDUSZEIT Franck CURO gudusz_a curo_f Introduction Sommaire Définition Contexte Avantages / inconvénients Fonctionnement et problématique Techniques
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détail1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.
1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this
Plus en détailMachines virtuelles Cours 1 : Introduction
Machines virtuelles Cours 1 : Introduction Pierre Letouzey 1 pierre.letouzey@inria.fr PPS - Université Denis Diderot Paris 7 janvier 2012 1. Merci à Y. Régis-Gianas pour les transparents Qu est-ce qu une
Plus en détailIntroduction à NetCDF
Introduction à NetCDF École normale supérieure L3 géosciences 2014/2015 Lionel GUEZ guez@lmd.ens.fr Laboratoire de météorologie dynamique Explications préliminaires Deux distinctions générales sur les
Plus en détailMesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]
Mesure de performances [Architecture des ordinateurs, Hennessy & Patterson, 1996] Croissance des performances des microprocesseurs Avant le milieu des années 80, le gain dépendait de la technologie. Après,
Plus en détailQu est ce qu un un serveur?
Virtualisation de serveur et Systèmes d exploitations. d Par Thierry BELVIGNE Président MicroNet 91 Qu est ce qu un un serveur? Un serveur est un programme informatique qui «rend service» à plusieurs ordinateurs
Plus en détailLimitations of the Playstation 3 for High Performance Cluster Computing
Introduction Plan Limitations of the Playstation 3 for High Performance Cluster Computing July 2007 Introduction Plan Introduction Intérêts de la PS3 : rapide et puissante bon marché L utiliser pour faire
Plus en détailGCOS 7 sur microprocesseur standard Diane Daniel POIRSON 14 octobre 2004 Matériels 64 / DPS 7 / DPS 7000 Architecture & Evolution - Daniel POIRSON 1
sur microprocesseur standard Diane Daniel POIRSON 14 octobre 2004 Matériels 64 / DPS 7 / DPS 7000 Architecture & Evolution - Daniel POIRSON 1 Pourquoi aller vers les processeurs standard? Considérations
Plus en détailUtilisation de matériels industriels avec des outils de virtualisation open source. Open Source dans le monde industriel
Utilisation de matériels industriels avec des outils de virtualisation open source Open Source dans le monde industriel Christophe Sauthier Ancien Président de Ubuntu fr Développeur Ubuntu Officiel Développeur
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailGestion mémoire et Représentation intermédiaire
Gestion mémoire et Représentation intermédiaire Pablo de Oliveira March 23, 2015 I Gestion Memoire Variables locales Les variables locales sont stockées: Soit dans un registre,
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailRetour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales
Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales Cécile Cavet cecile.cavet at apc.univ-paris7.fr Centre François Arago (FACe), Laboratoire
Plus en détailVirtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.
2013 Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D. Table des matières 1 Introduction (Historique / définition)... 3 2 But de la virtualisation... 4 3 Théorie : bases et typologie des solutions techniques...
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailPLATE-FORME DE CLOUD COMPUTING SLAPOS. Intégration d applications
PLATE-FORME DE CLOUD COMPUTING SLAPOS Intégration d applications Alain Takoudjou Kamdem Alain.takoudjou@lipn.univ-paris13.fr LIPN Université Paris 13 Vichy 2014 Présentation du cloud computing Le Cloud
Plus en détailLicence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter
Plus en détail6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailLes techniques de protection du logiciel
Travail d'études Licence Informatique 2003-2004 Les techniques de protection du logiciel Julien BURLE Térence SCALABRE Encadré par Mr Pierre CRESCENZO Travail d'étude: Les techniques de protection du logiciel
Plus en détail1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :
GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours
Plus en détailLXC : Une technologie de contextualisation ultra light intégrée au kernel Linux
Benoît des Ligneris, Ph.D. P.D.G., bdl@rlnx.com Solutions Linux Open Source, 18 mars 2010 LXC : Une technologie de contextualisation ultra light intégrée au kernel Linux Révolution Linux 2010 Au menu Révolution
Plus en détailComment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet
Comment reproduire les résultats de l article : POP-Java : Parallélisme et distribution orienté objet Beat Wolf 1, Pierre Kuonen 1, Thomas Dandekar 2 1 icosys, Haute École Spécialisée de Suisse occidentale,
Plus en détailConsolidation de serveurs PRA consolidé Migration de matériel Approvisionnement de serveurs Relocalisation de Datacenter Optimisation du Datacenter
Consolidation de serveurs PRA consolidé Migration de matériel Approvisionnement de serveurs Relocalisation de Datacenter Optimisation du Datacenter Conversions «Anywhere-to-Anywhere» (Physique, Virtuel,
Plus en détailL apprentissage automatique
L apprentissage automatique L apprentissage automatique L'apprentissage automatique fait référence au développement, à l analyse et à l implémentation de méthodes qui permettent à une machine d évoluer
Plus en détailRésumé Génération de code Le code intermédiaire
Résumé Analyse INFO0004 Structure des langages de programmation Génération de code ; liaison et exécution Justus H. Piater Programmation Analyse Compilation Liaison fichier texte Analyse lexicale flux
Plus en détailAVERTISSEMENT. D'autre part, toute contrefaçon, plagiat, reproduction encourt une poursuite pénale. LIENS
AVERTISSEMENT Ce document est le fruit d'un long travail approuvé par le jury de soutenance et mis à disposition de l'ensemble de la communauté universitaire élargie. Il est soumis à la propriété intellectuelle
Plus en détailMICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C
Haute Ecole d Ingénierie et de Gestion Du Canton du Vaud MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C Programmation en mode simulation 1. DOCUMENTS DE RÉFÉRENCE...
Plus en détailAlgorithmique I. Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr. Algorithmique I 20-09-06 p.1/??
Algorithmique I Augustin.Lux@imag.fr Roger.Mohr@imag.fr Maud.Marchal@imag.fr Télécom 2006/07 Algorithmique I 20-09-06 p.1/?? Organisation en Algorithmique 2 séances par semaine pendant 8 semaines. Enseignement
Plus en détailAnalyse de comportement de pare-feu par marquage de données
Analyse de comportement de pare-feu par marquage de données Olivier Paul (Olivier.Paul@it-sudparis.eu) * Abstract: Dans cet article nous présentons les résultats préliminaires de l utilisation d un outil
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailTravailler à l'ensimag avec son matériel personnel
Travailler à l'ensimag avec son matériel personnel (dans les locaux Ensimag ou depuis l'extérieur) Sommaire Introduction Les bug busters Centos Identifiants Rappels : Volumes et quotas Rappels : Impressions
Plus en détailVirtualisation de serveurs Solutions Open Source
Virtualisation de serveurs Solutions Open Source Alain Devarieux TSRITE2009 FOAD 1 / 19 Table des matières 1.Les principes de la virtualisation...3 1.1.Partage d'un serveur...3 1.2.Objectif de la virtualisation...4
Plus en détailIntroduction aux Machines Virtuelles avec VMKit
Introduction aux Machines Virtuelles avec Ingénieur :, Responsables : Gaël Thomas, Gilles Müller EQUIPE REGAL LIP6 INRIA (Paris/France) un substrat de machine virtuelle : a substrate for Managed Runtime
Plus en détailSolution A La Gestion Des Objets Java Pour Des Systèmes Embarqués
International Journal of Engineering Research and Development e-issn: 2278-067X, p-issn: 2278-800X, www.ijerd.com Volume 7, Issue 5 (June 2013), PP.99-103 Solution A La Gestion Des Objets Java Pour Des
Plus en détailMachines Virtuelles. et bazard autour. Rémi Forax
Machines Virtuelles et bazard autour Rémi Forax Avant propos Quelle est la complexité du code ci-dessous? Avec un processeur à 1Ghz, combien de temps le calcul prendra t'il? public static void main(string[]
Plus en détailExécution des instructions machine
Exécution des instructions machine Eduardo Sanchez EPFL Exemple: le processeur MIPS add a, b, c a = b + c type d'opération (mnémonique) destination du résultat lw a, addr opérandes sources a = mem[addr]
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailCommunications performantes par passage de message entre machines virtuelles co-hébergées
Communications performantes par passage de message entre machines virtuelles co-hébergées François Diakhaté1,2 1 CEA/DAM Île de France 2 INRIA Bordeaux Sud Ouest, équipe RUNTIME Renpar 2009 1 Plan Introduction
Plus en détailLES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN
LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas
Plus en détailL utilisation d un réseau de neurones pour optimiser la gestion d un firewall
L utilisation d un réseau de neurones pour optimiser la gestion d un firewall Réza Assadi et Karim Khattar École Polytechnique de Montréal Le 1 mai 2002 Résumé Les réseaux de neurones sont utilisés dans
Plus en détailCours 1 : Qu est-ce que la programmation?
1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détailCloud computing et sécurité
Cloud computing et sécurité Comparaison de systèmes chiffrés Rokhaya CISSE 1 1 2A ISI Grenoble INP -Ensimag 19 Mai 2015 Rokhaya CISSE Grenoble INP-Ensimag Comparaison de systèmes chiffrés 19 Mai 2015 1
Plus en détailTHEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs
Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et
Plus en détailOrdinateurs, Structure et Applications
Ordinateurs, Structure et Applications Cours 10, Les interruptions Etienne Tremblay Université Laval, Hiver 2012 Cours 10, p.1 Les interruptions du 8086 Une interruption interrompt l exécution séquentielle
Plus en détailCours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java
Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page
Plus en détailGlobalScape Secure FTP Server 3.0.2 Buffer Overflow
GlobalScape Secure FTP Server 3.0.2 Buffer Overflow muts@whitehat.co.il Traduction française: jerome[at]athias.fr http://www.athias.fr/jerome/doc/ Qu est-ce que le Serveur FTP Sécurisé GlobalScape?...
Plus en détailA propos de la sécurité des environnements virtuels
A propos de la sécurité des environnements virtuels Serge RICHARD - CISSP (IBM Security Systems) serge.richard@fr.ibm.com La virtualisation, de quoi parlons nous «Virtualiser» un objet informatique, ou
Plus en détailArchitecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155)
Architecture des ordinateurs : Programmation des processeurs avec l'environnement «y86» (INF155) F. Pellegrini Université Bordeaux 1 Ce document est copiable et distribuable librement et gratuitement à
Plus en détailDescription de l implantation dans le centre d examen (nom du service ou de l outil et caractéristiques techniques)
ANNEXE VII-1 : modèle d attestation de respect du cahier des charges pour l épreuve E4 (parcours SISR) BTS SERVICES INFORMATIQUES AUX ORGANISATIONS Session 2014 CONTRÔLE DE L ENVIRONNEMENT TECHNOLOGIQUE
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailReproductibilité des expériences de l article "Analyse et réduction du chemin critique dans l exécution d une application"
Reproductibilité des expériences de l article "Analyse et réduction du chemin critique dans l exécution d une application" Katarzyna Porada and David Parello and Bernard Goossens Univ. Perpignan Via Domitia,
Plus en détailMicroprocesseur + Logiciel
Microprocesseur + Logiciel Robot EVALBOT MOHAMED AKIL BUREAU 5253 UNITE IGI 1001 PROGRAMMATION DES MICROPROCESSEURS Présentation [IGI1001] CONTEXTE SCIENTIFIQUE... 4 1. OBJECTIFS DE L UNITE... 6 2. OBJECTIFS
Plus en détailProgrammation Orientée Objet
Programmation Orientée Objet Mohamed Tounsi Institut Supérieur d'informatique et de Multimédia Sfax Septembre 2014 Mohamed Tounsi (ISIMS) Programmation Orientée Objet Septembre 2014 1 / 16 Responsable
Plus en détailLe Projet BINSEC. Automatiser l analyse de sécurité au niveau binaire. Airbus group, CEA, IRISA, LORIA, Uni. Joseph Fourier. p.
Le Projet BINSEC Automatiser l analyse de sécurité au niveau binaire Airbus group, CEA, IRISA, LORIA, Uni. Joseph Fourier p. 1/22 Introduction Panorama de BINSEC Cadre de travail Projet ANR INS, appel
Plus en détailAnalyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
Plus en détailBienvenue sur Lab-Windows Il n'y a de vents favorables que pour ceux qui ont un cap
Page 1 of 7 Rechercher sur le Web Bienvenue sur Lab-Windows Il n'y a de vents favorables que pour ceux qui ont un cap Accueil Actualité Windows Vista Windows Server Active Directory TCP/IP Securité Qui
Plus en détail