Systeme d'exploitation

Dimension: px
Commencer à balayer dès la page:

Download "Systeme d'exploitation"

Transcription

1 Introduction au dévellopement de Methodes Natives Partie I : appelle de methodes C++ sous windows Auteur: Frank Sauvage. 1 \ introduction aux methodes natives : Les methodes natives sont des methodes devellopées dans un autre langage que Java, généralement C ou C++, mais que pour diverses raisons on souhaite tout de même utiliser dans un programme écrit en Java. Le kit de devellopement Java integre en standard une interface appelée JNI pour Java Native Interface. La documentation de cette Interface est disponible sur le site de java. Pour la version 1.5 du sdk l'addresse directe est : le principal avantage des methodes native reside dans le fait qu'utiliser un langage de plus bas que Java permet d'eviter les contraintes qu'impose la machine virtuelle. Il devient alors possible d'ecrire des methodes beaucoup optimisées et rapides, ainsi que d'ecrire des methodes accédant directement aux fonctions du systeme d'exploitation. Cependant, le fait d'ecrire une partie d'un programme dans un langage compilé impose de fournir des bibliothéque pour chacun des systemes où l'on souhaitera voir fonctionner l'application. Notes : Dans ce document seul l'ecriture et l'utilisation de methodes en C++ sous windows sera abordé. L'ecriture de methodes natives sur un autre systeme tel que Linux reste compatible avec ce document tant que la partie C++ reste conforme à la norme ANSI, et que les bibliothéques utilisées existe sur la plateforme cible. La compilation de methodes sous Linux sera abordé dans une prochaine partie de ce document. Programme Java Machine Virtuelle Methodes Natives Systeme d'exploitation

2 2 \ prérequis : Dans ce document nous considerons que l'environnement de travail est le suivant : SDK java version 1.5 (aussi appelé jdk5.0) disponible à l'addresse : Visual C++ Toolkit le Visual C++ Toolkit (VCT) est une version gratuite et ligne de commande du compilateur C++ de Windows. Par defaut l'installation propose l'accés en ligne de commande à un environnement en ligne de commande specifique au compilateur. Pour fixer les variables d'environnement, cet environnement utilise un fichier batch contenu à la base du repertoire d'installation nommé VCVARS32.BAT. Dans notre cas, nous avons besoin de rajouter au chemin des include l'accés vers les fichiers d'entetes de la JNI. Sous windows, ces fichiers sont contenus dans le repertoire INCLUDE du JDK. Le sous repertoire WIN32 du repertoire include doit lui aussi etre rajouté. La ligne suivante represente les ajouts neccessaires : Set INCLUDE = c:\program files\java\jdk1.5.0_02\include;c:\program files\java\jdk1.5.0_02\include\win32;c:\program Files\Microsoft Visual C++ Toolkit 2003\include;%INCLUDE% Note : le chemin ici rajouté est celui de notre machine de reference. Il peut etre different sur votre propre installation.

3 3 \ création de methodes natives: Afin d'utiliser du C++ dans un code java, il est neccessaire de créer des fonctions qui serviront de lien entre les deux langages. La declaration des fonctions natives est assez delicate en ce qui concerne la partie C++, nous utiliseront donc un utilitaire fourni dans le JDK : javah. Javah est un outil qui permet de generer les fichiers d'entetes C++ a partir d'un code compilé java contenant des methodes declarées en tant que natives. A partir du fichier java suivant : package testjni; public class FonctionSimple { // chargement de la librairie associée // cette partie sera vue en details plus loin static { System.loadLibrary("testJNI_FonctionVoid"); //declaration de la fonction native.qui ne rends pas de resultat. public static native void fonctionvoid(); public static void main(string args[]) { System.out.println("Appel de la fonction C++ : "); //appel de la fonction : FonctionSimple.fonctionVoid(); on utilise la commande javah pour generer le fichier FonctionSimple.h la commande javah s'utilise de la meme maniere que la commande javac du compilateur. javah classpath repertoiredev\ -d repertoiredev\ testjni.fonctionsimple ce qui nous permet d'obtenir le fichier d'entete suivant : /* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> /* Header for class testjni_fonctionsimple */ #ifndef _Included_testJNI_FonctionSimple #define _Included_testJNI_FonctionSimple #ifdef cplusplus extern "C" { #endif /* * Class: testjni_fonctionsimple * Method: fonctionvoid * Signature: ()V */ JNIEXPORT void JNICALL Java_testJNI_FonctionSimple_fonctionVoid (JNIEnv *, jclass); #ifdef cplusplus #endif #endif

4 Comme l'indique l'entete, il est deconseillé d'editer ce fichier mais Les devellopeurs C++ seront famillier avec la declaration conditionnelle pour le C++ qui nous interresse. les autres s'interesseront plus particulierement à la ligne suivante : JNIEXPORT void JNICALL Java_testJNI_FonctionSimple_fonctionVoid (JNIEnv *, jclass); si on la compare à la declaration java : public static native void fonctionvoid(); on peut s'appercevoir que pour une fonction void, la version C++ passe en parametre deux arguments supplementaires : JNIEnv et jclass. Ces deux parametres seront explicité plus loin, mais sachez qu'il s'agit de variables d'environnement passées dans chaque fonction native. L'implementation de la fonction en C++ devient maintenant possible en reprenant le prototype ainsi obtenu. Dans notre cas, on se contentera d'afficher un message sur la sortie standard pour verifier que l'appel a bien reussi. On peut donc ecrire le fichier testjni_fonctionsimple.cpp suivant : #include "testjni_fonctionsimple.h" #include <iostream> JNIEXPORT void JNICALL Java_testJNI_FonctionSimple_fonctionVoid (JNIEnv *, jclass) { // Un affichage sur la console en C++ printf("l'appel de la fonction a ete effectue avec succes\n"); printf("nous sommes ici en train d'executer du code C++\n");

5 4 \ Java et les Bibliothéques dynamiques lorsqu'un programme java utilise une classe où des methodes natives sont utilisées, la machine virtuelle doit charger une bibliothéque dynamique de fonctions. Ces bibliothéques sont des morceaux de programmes compilés qui peuvent etre chargés et dechargés à la demande par de larges programmes. l'avantage en programmation C++ d'utiliser ces bibliothéques reside dans la modularité acquise en terme d'espace memoire utilisé car ces portions de code peuvent alors etre utilisées par plusieurs programmes simultanément cette possibilité est assurée par le systeme d'exploitation qui à la charge de les placer en memoire et de les rendre accessibles à la demande. Dans le cas d'ecriture des methodes natives, il est neccessaire d'avoir une bibliothéque par classe, ce qui peut rapidement devenir difficillement gerable. Cest pourquoi il est preferable de regrouper au maximum les methodes natives dans des classes de liaisons plutot que de les declarer directement la où elles sont utilisées. Revenons donc au code java de notre exemple : static { System.loadLibrary("testJNI_FonctionVoid"); comme on peut le voir ici, on demande en fait au systeme de charger pour nous la librairie de notre classe. Le fichier doit etre accessible par le systeme, soit en etant dans le repertoire de lancement du programme soit dans le path systeme. Note : vous pouvez lister la liste des repertoires du path systeme grace à la méthode java: System.out.println(System.getProperty("java.library.path"));

6 5 \ création de la bibliothéque C++ dynamique pour generer la bibliothéque, il est neccessaire d'utiliser le compilateur C++. dans le VCT, le compilateur est utilisable grace à la commande cl. A partir du terminal ligne de commande du VCT, il faut alors se placer dans le repertoire contenant les sources C++ a compiler, c'est à dire dans notre exemple les fichiers : testjni_fonctionsimple.cpp testjni_fonctionsimple.h la commande : cl /LD testjni_fonctionsimple.cpp compilera alors en tant que librairie dynamique les methodes natives de la classe java. Les fichiers suivant doivent etres generés : testjni_fonctionsimple.exp testjni_fonctionsimple.obj testjni_fonctionsimple.lib testjni_fonctionsimple.dll les trois premiers sont des fichiers intermediaires utilisés par le compilateur. Le dernier est la DLL qu'il va falloir fournir avec les programmes utilisant les methodes natives. Note : Nous ne nous occuperons pas ici des problemes de link et autres qu'apporte le C++. nous considerons que toutes les methodes sont implementées dans un seul et unique fichier. Cela n'inclus pas les utilisation de bibliothéques tierces. 6 \ lancement du programme : comme nous l'avons vu plus haut, la librairire doit etre accessible dans le path systeme ou presente dans le repertoire de lancement de l'application. La commande suivante java -classpath repertoiredev\ testjni.fonctionsimple fait donc apparaître le resultat suivant de notre premier programme utilisant les methodes natives : Appel de la fonction C++ : l'appel de la fonction a ete effectue avec succes nous sommes ici en train d'executer du code C++ Notes pour eclipse, si l'on desire utiliser les methodes natives, il est neccessaire de les placer à la racine du de l'arborescence du projet et non dans le repertoire de la classe elle meme. 7 \ Conclusion ce document introduit au mechanisme de creation et d'utilisation des methodes natives. Il permet aussi d'apprehender les contraintes liées à leur utilisation et à leur création. Il est à present neccessaire d'etudier comment passer des données vers et depuis les methodes natives ainsi que comment invoquer une methode sur un objet java depuis le code C++.

Cours Java Native Interface

Cours Java Native Interface Cours Java Native Interface 1999, Cnam Paris jean-michel Douin, douin@cnam.fr Version du 28 Mars 2002 http://lmi92.cnam.fr:8080/tp_cdi/{douin/ Notes de cours jni : de Java vers C/C++ et de C/C++ vers Java

Plus en détail

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie Chapitre I : Les bases du C++ Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie du logiciel, et ce depuis

Plus en détail

Programmation avancée et répartie en Java : interfaçage avec d autres langages

Programmation avancée et répartie en Java : interfaçage avec d autres langages Programmation avancée et répartie en Java : interfaçage avec d autres langages Frédéric Gava L.A.C.L Laboratoire d Algorithmique, Complexité et Logique Cours de M1 MIAGE (d après les notes de cours de

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

Java Licence professionnelle CISII, 2009-2010

Java Licence professionnelle CISII, 2009-2010 Java Licence professionnelle CISII, 2009-2010 Cours 6 : le paquetage (package) Cours inspiré des cours de Richard Grin, Antoine Tabbone et Hazel Everett 1 Définition - Les classes Java sont regroupées

Plus en détail

Dossier. Développer en Java sur téléphone mobile. Benjamin Damécourt benjamin.damecourt@me.com. UFR SITEC Master 2 EESC 11 janvier 2012

Dossier. Développer en Java sur téléphone mobile. Benjamin Damécourt benjamin.damecourt@me.com. UFR SITEC Master 2 EESC 11 janvier 2012 Dossier Développer en Java sur téléphone mobile Benjamin Damécourt benjamin.damecourt@me.com UFR SITEC Master 2 EESC 11 janvier 2012 Table des matières Introduction 2 Pré-requis 3 Hello World! 5 Installation

Plus en détail

Derrière toi Une machine virtuelle!

Derrière toi Une machine virtuelle! Derrière toi Une machine virtuelle! Yann-Gaël Guéhéneuc guehene@emn.fr École des Mines de Nantes, France Object Technology International Inc., Canada D où ça vient? Calculatrice Machine de Turing 1936

Plus en détail

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

Java 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

Java 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étail

TP1. Outils Java Eléments de correction

TP1. Outils Java Eléments de correction c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par

Plus en détail

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova I. Introduction Dans une période où la plasticité peut aider à réduire les coûts de développement de projets comme des applications mobile,

Plus en détail

TD/TP 1 Introduction au SDK d Android

TD/TP 1 Introduction au SDK d Android TD/TP 1 Introduction au SDK d Android Romain Raveaux 1 Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

Eclipse atelier Java

Eclipse atelier Java Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer

Plus en détail

Traitement de données

Traitement de données Traitement de données Présentation du module TINI Présentation du module : Le module Tini se décline en plusieurs versions, il est constitué d une carte d application et d un module processeur : Les modules

Plus en détail

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits

Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits 1 Installer et configurer Oracle Forms 11gR2 (Windows x64) Installer et configurer Oracle Forms 11gR2 Windows 7 64 bits Document préparé par Abderrahmane Abed Juin 2013 Version 1.0 Courriel: aabed@oraweb.ca

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server

Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server Microsoft OSQL OSQL ou l'outil de base pour gérer SQL Server Suite à mon précédent article concernant MSDE, je me suis rendu compte à partir des commentaires que de nombreux utilisateurs avaient des problèmes

Plus en détail

Projet de Veille Technologique

Projet de Veille Technologique Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION 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étail

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS 2014-2015 Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 TP 1 Méthodologie Map/Reduce - programmation Hadoop. 1 Installer VirtualBox (https://www.virtualbox.org/). Importer la machine

Plus en détail

Utiliser Java sans BlueJ

Utiliser Java sans BlueJ Conception objet en Java avec BlueJ une approche interactive Utiliser Java sans BlueJ Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Conception objet en Java avec BlueJ une approche

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

Chapitre I Notions de base et outils de travail

Chapitre I Notions de base et outils de travail Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement

Plus en détail

27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)

27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s) Propriétés du Document Source du Document SDK_accords.odt Titre du Document SDK Python et Java pour le développement de services ACCORD Module(s) PyaccordsSDK, JaccordsSDK Responsable Prologue Auteur(s)

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

Plus en détail

Cours Langage C/C++ Programmation modulaire

Cours Langage C/C++ Programmation modulaire Cours Langage C/C++ Programmation modulaire Thierry Vaira BTS IRIS Avignon tvaira@free.fr «v0.1 Rappel Programmation modulaire (1/2) Le découpage d'un programme en sous-programmes est appelée programmation

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

TUTORIEL: INSTALLATION D'UN SERVEUR LOCAL SOUS WINDOWS 7 POUR APPINVENTOR version du 06/04/2013

TUTORIEL: INSTALLATION D'UN SERVEUR LOCAL SOUS WINDOWS 7 POUR APPINVENTOR version du 06/04/2013 TUTORIEL: INSTALLATION D'UN SERVEUR LOCAL SOUS WINDOWS 7 POUR APPINVENTOR version du 06/04/2013 1. Téléchargement des sources AppInventor http://appinventor.mit.edu/appinventor-sources/ Télécharger ces

Plus en détail

Cours 1: Java et les objets

Cours 1: Java et les objets Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Seance 2: Complétion du code de jeu. (durée max: 2h) Mot clé const et pointeurs: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu. Implémentez jeu_recupere_piece

Plus en détail

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12

AUVRAY Clément (168187) HOMBERGER Alexandre (186897) GLADE. Langages, outils et méthodes pour la programmation avancée Page 1 sur 12 GTK+ GLADE Page 1 sur 12 SOMMAIRE INTRO 3 Présentation de GTK+ 3 Présentation de GLADE 3 GTK+ 4 Installation 4 Les Widgets 4 Le système de hiérarchie 5 Les signaux 6 GLADE 7 Installation 7 L interface

Plus en détail

Tp 1 correction. Structures de données (IF2)

Tp 1 correction. Structures de données (IF2) Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que

Plus en détail

Architecture de la plateforme SBC

Architecture de la plateforme SBC Simple Business Connector Architecture de la plateforme SBC Titre Projet Description Architecture de la plateforme SBC Plateforme SBC Ce document reprend toutes les étapes de l'installation du serveur

Plus en détail

Tekla Structures Guide d'installation. Version du produit 21.0 mars 2015. 2015 Tekla Corporation

Tekla Structures Guide d'installation. Version du produit 21.0 mars 2015. 2015 Tekla Corporation Tekla Structures Guide d'installation Version du produit 21.0 mars 2015 2015 Tekla Corporation Table des matières 1 Installation de Tekla Structures... 3 1.1 Configuration préalable à l'installation de

Plus en détail

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse

IFT287 Exploitation de base de données relationnelles et orientées objet. Laboratoire Mon premier programme Java en Eclipse IFT287 Exploitation de base de données relationnelles et orientées objet Laboratoire Mon premier programme Java en Eclipse Comment faire? Nous allons utiliser l environnement de travail proposé par Eclipse

Plus en détail

Java Licence Professionnelle CISII, 2009-2010

Java Licence Professionnelle CISII, 2009-2010 Licence Professionnelle CISII, 2009-2010 Cours 1 : Introduction à Java A. Belaïd abelaid@loria.fr Cours disponible sur le site : http://www.loria.fr/~abelaid puis Teaching 1 Fonctionnement 12 séances :

Plus en détail

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90. Analyste et développeur pendant plus de 10 ans, Thierry GROUSSARD s est ensuite orienté vers la formation et plus particulièrement dans le domaine du développement. Sa connaissance approfondie des besoins

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan 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étail

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février 2014 17:30 à 20:30 Examen intra 20 février 2014 17:30 à 20:30 Nom, prénom : Code permanent : Répondez directement sur le questionnaire. Question #1 5% Quelle influence peut avoir le typage dynamique sur la maintenabilité

Plus en détail

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com - 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Linux....................................................................

Plus en détail

Java au cœur de la base de données Oracle

Java au cœur de la base de données Oracle 32 Tips&techniques Philippe Daucourt, HEG Haute école de gestion Arc Java au cœur de la base de données Oracle Depuis la version 8i, Oracle embarque une machine virtuelle Java (JVM) au cœur de sa base

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Tutorial pour une application simple

Tutorial pour une application simple ANDROID & ECLIPSE Tutorial pour une application simple 1. Introduction Android est un système d'exploitation pour téléphone portable de nouvelle génération développé par Google. Celui-ci met à disposition

Plus en détail

GANTTPROJECT. Julien TENDERO

GANTTPROJECT. Julien TENDERO GANTTPROJECT Julien TENDERO SOMMAIRE : 1 -Introduction : 2 -Installation et utilisation : 3-Édition, compilation et exécution dans Eclipse : 4-Améliorations apportées : 5-Conclusion: 1 -Introduction :

Plus en détail

Windows Front-End Installation Guide HOPEX V1R1 FR

Windows Front-End Installation Guide HOPEX V1R1 FR Révisé le : 5 novembre 2013 Créé le : 31 octobre 2013 Auteur : Jérôme Horber SOMMAIRE Résumé Ce document décrit les procédures et les paramétrages techniques nécessaires à l'installation, à la mise à jour

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Réf. : S2I-CIELL2-PI-1.0. Version : 1.0. Auteurs : S2I-TOULON

Réf. : S2I-CIELL2-PI-1.0. Version : 1.0. Auteurs : S2I-TOULON Application CIELL2 PROCEDURE D INSTALLATION Réf. : S2I-CIELL2-PI-1.0 Version : 1.0 Auteurs : S2I-TOULON S2I-CIELL2-PI-1.0 mardi 10 juin 2003 Page 2/23 Installation Serveur Web Liste des différents modules

Plus en détail

Titre: Version: Dernière modification: Auteur: Statut: Licence:

Titre: Version: Dernière modification: Auteur: Statut: Licence: Titre: Installation de WebObjects 5.3 Version: 2.1 Dernière modification: 2011/02/17 11:00 Auteur: Aurélien Minet Statut: version finale Licence: Creative Commons

Plus en détail

Guide de mise à jour de Suite SAP Business Intelligence Patch 10.x

Guide de mise à jour de Suite SAP Business Intelligence Patch 10.x Suite SAP BusinessObjects Business Intelligence Version du document : 4.0 Support Package 10-2014-07-25 Guide de mise à jour de Suite SAP Business Intelligence Patch 10.x Table des matières 1 Introduction....

Plus en détail

INITIATION AU LANGAGE JAVA

INITIATION AU LANGAGE JAVA INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal

Plus en détail

Serveur d application WebDev

Serveur d application WebDev Serveur d application WebDev Serveur d application WebDev Version 14 Serveur application WebDev - 14-1 - 1208 Visitez régulièrement le site www.pcsoft.fr, espace téléchargement, pour vérifier si des mises

Plus en détail

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

RMI le langage Java XII-1 JMF

RMI le langage Java XII-1 JMF Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine

Plus en détail

Serveur d'archivage 2007 Installation et utilisation de la BD exist

Serveur d'archivage 2007 Installation et utilisation de la BD exist Type du document Procédure d'installation Auteur(s) Eric Bouladier Date de création 26/02/20007 Domaine de diffusion tous Validé par Equipe Versions Date Auteur(s) Modifications V1.00 26/02/2007 Eric Bouladier

Plus en détail

3IS - Système d'exploitation linux - Programmation système

3IS - Système d'exploitation linux - Programmation système 3IS - Système d'exploitation linux - Programmation système 2010 David Picard Contributions de : Arnaud Revel, Mickaël Maillard picard@ensea.fr Environnement Les programmes peuvent être exécutés dans des

Plus en détail

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 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étail

Gestion d utilisateurs et stratégie systèmes.

Gestion d utilisateurs et stratégie systèmes. Gestion d utilisateurs et stratégie systèmes. Déscription de l'activité: Administration de gestion d utilisateurs sous l environnement Windows 2003 Serveur Contexte de l activité Etant administrateur réseau

Plus en détail

Environnements de développement (intégrés)

Environnements de développement (intégrés) Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

Le Framework.Net. Introduction. Pourquoi.Net?

Le Framework.Net. Introduction. Pourquoi.Net? Introduction. Pourquoi.Net? Le Framework.Net Cela fait une dizaine d'années que le monde du développement est bouleversé d'une part par la programmation objet et d'autre part par les applications web.

Plus en détail

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

as Architecture des Systèmes d Information

as 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étail

PROTECTION DE MACHINE VIRTUELLE VMWARE DELL POWERVAULT DL2000 OPTIMISÉ PAR SYMANTEC

PROTECTION DE MACHINE VIRTUELLE VMWARE DELL POWERVAULT DL2000 OPTIMISÉ PAR SYMANTEC PROTECTION DE MACHINE VIRTUELLE VMWARE DELL POWERVAULT DL2000 OPTIMISÉ PAR SYMANTEC La baie de stockage PowerVault DL2000 optimisée par Symantec Backup Exec est la seule solution de sauvegarde sur disque

Plus en détail

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java RN2-Programmation Orientée Objet - JAVA CH 1 à la POO et Java Licence Professionnelle 2006 Agnès Guerraz INRIA Rhône-Alpes agnes.guerraz@inria.fr LP UPMF, Grenoble Septembre 2006 Ce cours reprend en grande

Plus en détail

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8

SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 SYNC FRAMEWORK AVEC SQLITE POUR APPLICATIONS WINDOWS STORE (WINRT) ET WINDOWS PHONE 8 INTRODUCTION Bonjour à tous; Aujourd hui je publie une nouvelle version de l adaptation de la Sync Framework Toolkit,

Plus en détail

TrueCrypt : installation et paramétrage

TrueCrypt : installation et paramétrage Ministère de l écologie, du développement durable des transports et du logement Centre de prestation et d'ingénierie informatique (CPII) Département Opérationnel du Sud-Ouest PNE Sécurité Affaire suivie

Plus en détail

Auto-évaluation Programmation en Java

Auto-évaluation Programmation en Java Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN

Plus en détail

Le langage C. Séance n 4

Le langage C. Séance n 4 Université Paris-Sud 11 Institut de Formation des Ingénieurs Remise à niveau INFORMATIQUE Année 2007-2008 Travaux pratiques d informatique Le langage C Séance n 4 But : Vous devez maîtriser à la fin de

Plus en détail

Installation du package esup-portail Version uportal-2.5.x-esup

Installation du package esup-portail Version uportal-2.5.x-esup Page 1 of 16 Installation du package esup-portail Version uportal-2.5.x-esup Ce document décrit l'installation et le paramétrage du package du socle 'esup-portail' issu de la version 2.5 d'uportal, à partir

Plus en détail

G. Méthodes de déploiement alternatives

G. Méthodes de déploiement alternatives Page 32 Chapitre 1 - Le fichier MigUser.xml permet de configurer le comportement d'usmt lors de la migration des comptes et profils utilisateurs (capture et restauration). - Le fichier config.xml permet

Plus en détail

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

! #$ $ $ ! %#& ! '& ( )! )*+ ! "! "#$ $ $ ""! %#& """! '& ( ")! )*+ "! "#$ $ $ ""! %#& """! '& ( ")! )*+, ## $ *$-./ 0 - ## 1( $. - (/$ #,-".2 + -".234-5..'"6..6 $37 89-%:56.#&(#. +6$../.4. ;-37 /. .?.@A&.!)B

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 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étail

Les messages d erreur d'applidis Client

Les messages d erreur d'applidis Client Fiche technique AppliDis Les messages d erreur d'applidis Client Fiche IS00313 Version document : 1.00 Diffusion limitée : Systancia, membres du programme Partenaires AppliDis et clients ou prospects de

Plus en détail

Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06

Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06 Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06 Pour accéder à la documentation détaillée de SQL Developer : voir Oracle Database SQL Developer Installation Guide Installer Oracle

Plus en détail

FreeNAS 0.7.1 Shere. Par THOREZ Nicolas

FreeNAS 0.7.1 Shere. Par THOREZ Nicolas FreeNAS 0.7.1 Shere Par THOREZ Nicolas I Introduction FreeNAS est un OS basé sur FreeBSD et destiné à mettre en œuvre un NAS, système de partage de stockage. Pour faire simple, un NAS est une zone de stockage

Plus en détail

Ateliers Python+Qt : Premiers pas : S'installer pour PyQt... en quelques minutes sous Windows!

Ateliers Python+Qt : Premiers pas : S'installer pour PyQt... en quelques minutes sous Windows! Ateliers Python+Qt : Premiers pas : S'installer pour PyQt... en quelques minutes sous Windows! par X. HINAULT www.mon-club-elec.fr Tous droits réservés 2013. Document gratuit. Ce support PDF d'atelier

Plus en détail

Télécom Nancy Année 2013-2014

Télécom Nancy Année 2013-2014 Télécom Nancy Année 2013-2014 Rapport 1A Ajout du langage C dans la Programmer's Learning Machine GIANNINI Valentin Loria 615, rue du Jardin Botanique 54600, Villers-Lès-Nancy Maître de stage : QUINSON

Plus en détail

DotNet. Plan. Les outils de développement

DotNet. Plan. Les outils de développement DotNet Les outils de développement Version 1.03 du 16/10/2006 par Jacky Renno Plan La machine virtuelle Le kit de développement Le kit de langage Le Visual Studio.NET Le serveur web IIS 6.0 Le modeleur

Plus en détail

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T> Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances

Plus en détail

1 Repérer les paramètres d installation (.exe ou.msi).

1 Repérer les paramètres d installation (.exe ou.msi). Installation silencieuse de programmes sous Windows 1 Repérer les paramètres d installation (.exe ou.msi). C'est quelques fois facile et d'autres très compliqué. La première chose à tenter est le lancement

Plus en détail

et de suivi de la corpulence des enfants

et de suivi de la corpulence des enfants CALIMCO Logiciel d'évaluation et de suivi de la corpulence des enfants version 2.0 1 / 8 1.Introduction En 2004, un logiciel, CalIMCo, produit dans le cadre du PNNS, a été diffusé sous forme de CD Rom

Plus en détail

DOCUMENTATION ADMINISTRATEUR

DOCUMENTATION ADMINISTRATEUR DOCUMENTATION ADMINISTRATEUR STATUT DU DOCUMENT Classification sécurité : Strictement confidentiel Diffusion restreinte Interne Publique Version actuelle : Préparé par : Lowinski Marc Chiguer Mansour N'Diaye

Plus en détail

Prototypage électronique

Prototypage électronique Prototypage électronique C'est quoi Arduino? Enseignant d'électronique en BTS des Systèmes Électroniques au lycée Cabanis de Brive-la-Gaillarde, j'ai commencé en 2010 à entendre parler d'arduino à gauche

Plus en détail

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez...

Présentation. Au programme. Fonctionnement. A l issue de ce module vous devriez... Au programme Conception Orientée Objet Jean-Christophe Routier Licence mention Informatique Université Lille 1 Présentation L UE COO est le prolongement immédiat de l UE POO du S4 informatique. cf. http://portail.fil.univ-lille1.fr/portail/ls4/poo

Plus en détail

Virtual PC 2007. Virtual PC 2007 Page I

Virtual PC 2007. Virtual PC 2007 Page I Virtual PC 2007 Virtual PC 2007 Page I Virtual PC 2007 Table des matières. PRINCIPES DE BASE DE L'ORDINATEUR VIRTUEL 1 AIDE MEMOIRE: DEPLOIEMENT DE VIRTUAL PC 2 METHODES CONSEILLEES POUR VIRTUAL PC 2 COMPOSANTS

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

SERVEUR DE MESSAGERIE

SERVEUR DE MESSAGERIE CRÉEZ VOTRE SERVEUR DE MESSAGERIE avec: version 4.3-B248 Sommaire PREAMBULE et REMERCIEMENTS Page 2 INTRODUCTION Page 2 AVERTISSEMENT Page 3 INSTALLATION Page 3 CONFIGURATION Page 12 CLIENT DE MESAGERIE

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

Installation 1K-Serveur

Installation 1K-Serveur Installation du système d'exploitation (Windows 2000-2003 - 2008) 1 - Procéder a l'installation du système d'exploitation de façon a ce qu'il s'intègre dans votre architecture réseaux (nom de domaine/groupe

Plus en détail

Introduction à Windows Script Host DescoDev

Introduction à Windows Script Host DescoDev 1. Introduction à Windows Script Host 1 1 Introduction à Windows Script Host 1. Introduction à Windows Script Host 2 1. Introduction à Windows Script Host Windows Script Host (WSH) est un environnement

Plus en détail

Tutoriel Drupal version 7 :

Tutoriel Drupal version 7 : Tutoriel Drupal 7: Installation en local sous Windows 1 Tutoriel Drupal version 7 : Installation en local Sous Windows Tutoriel Drupal 7: Installation en local sous Windows 2 1. Logiciels nécessaires Drupal

Plus en détail

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION 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étail

AFTEC SIO 2. Christophe BOUTHIER Page 1

AFTEC SIO 2. Christophe BOUTHIER Page 1 Christophe BOUTHIER Page 1 Nous allons traiter ici quelques exemples de stratégies de groupe courantes. Sommaire : Stratégie de groupe pour déploiement logiciel... 3 1. Introduction... 3 2. Création du

Plus en détail

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe

Plus en détail