ArchitecturesPlateformes
Developpement
Developpement nomade :Architectures - Plateformes
Sylvain Jubertie - Universite d’Orleans
2011-2012
Sylvain Jubertie - Universite d’Orleans Developpement nomade 1 / 30
ArchitecturesPlateformes
Developpement
Plan
1 Architectures
2 Plateformes
3 Developpement
Sylvain Jubertie - Universite d’Orleans Developpement nomade 2 / 30
ArchitecturesPlateformes
Developpement
Plan
1 Architectures
2 Plateformes
3 Developpement
Sylvain Jubertie - Universite d’Orleans Developpement nomade 3 / 30
ArchitecturesPlateformes
Developpement
Peripheriques nomades
smartphones
tablettes
netbooks
consoles portables
PDA
cartes de developpement
. . .
Sylvain Jubertie - Universite d’Orleans Developpement nomade 4 / 30
ArchitecturesPlateformes
Developpement
Caracteristiques
consommation faible, batteries
performance, memoire, stockage limites / machines classiques
ecrans reduits
dispositifs d’interaction specifiques
reseaux sans-fil
Sylvain Jubertie - Universite d’Orleans Developpement nomade 5 / 30
ArchitecturesPlateformes
Developpement
Processeurs pour l’embarque
ARM Ltd (Advanced RISC Machine)
MIPS Technologies
Intel Atom
AMD Fusion
Sylvain Jubertie - Universite d’Orleans Developpement nomade 6 / 30
ArchitecturesPlateformes
Developpement
Processeurs ARM
architecture processeur concue par ARM Ltd
processeurs fabriques par d’autres compagnies sous licence
le processeur peut etre enrichi d’autres fonctionnalites
Sylvain Jubertie - Universite d’Orleans Developpement nomade 7 / 30
ArchitecturesPlateformes
Developpement
Caracteristiques des processeurs ARM
32 bits (40-64bits a venir)
RISC Reduced Instruction Set Computer
MMU Memory Managment Unit (pas toujours presente)
FPU Floating Point Unit (pas toujours presente)
NEON Unite SIMD
Thumb Codage des instructions sur 16bits (gain memoire)
DSP Digital Signal Processor
. . .
Sylvain Jubertie - Universite d’Orleans Developpement nomade 8 / 30
ArchitecturesPlateformes
Developpement
Generations ARM
ARM7
ARM9
ARM11
Cortex A8
Cortex A9
Sylvain Jubertie - Universite d’Orleans Developpement nomade 9 / 30
ArchitecturesPlateformes
Developpement
Exemples de series de processeurs ARM
TI OMAP
Qualcomm SnapDragon
Samsung Exynos
Nvidia Tegra
ST-Ericsson Nova
Sylvain Jubertie - Universite d’Orleans Developpement nomade 10 / 30
ArchitecturesPlateformes
Developpement
Exemple de l’OMAP4 de TI
Sylvain Jubertie - Universite d’Orleans Developpement nomade 11 / 30
ArchitecturesPlateformes
Developpement
Exemple du Nvidia Tegra 2
Sylvain Jubertie - Universite d’Orleans Developpement nomade 12 / 30
ArchitecturesPlateformes
Developpement
Produits a base de processeurs ARM
Nintendo DS : ARM946E-S 66Mhz + ARM7TDMI 33Mhz
Nintendo 3DS : 2 x ARM11 266Mhz
Asus Transformer : Nvidia Tegra 2 2 x CortexA9 1Ghz
Nokia E65 : TI OMAP 1710 - ARM-926 220Mhz
iPhone4 : Apple A4
Sylvain Jubertie - Universite d’Orleans Developpement nomade 13 / 30
ArchitecturesPlateformes
Developpement
Generation ARM a venir...
Cortex A9 quad-core (Tegra 3 par exemple)
Cortex A15 : adressage 40bits, virtualisation
Sylvain Jubertie - Universite d’Orleans Developpement nomade 14 / 30
ArchitecturesPlateformes
Developpement
Autres architectures
Intel Atom
AMD Fusion
Sylvain Jubertie - Universite d’Orleans Developpement nomade 15 / 30
ArchitecturesPlateformes
Developpement
Entrees/sorties des plateformes nomades
ecrans tactiles resistifs/capacitifs
GPS
accelerometre
magnetometre
USB
audio
video
. . .
Sylvain Jubertie - Universite d’Orleans Developpement nomade 16 / 30
ArchitecturesPlateformes
Developpement
Plan
1 Architectures
2 Plateformes
3 Developpement
Sylvain Jubertie - Universite d’Orleans Developpement nomade 17 / 30
ArchitecturesPlateformes
Developpement
Plateformes
Android
iOS
Windows Mobile - Windows Phone 7
BlackBerry OS
Bada
Symbian
distributions Linux
Sylvain Jubertie - Universite d’Orleans Developpement nomade 18 / 30
ArchitecturesPlateformes
Developpement
Plan
1 Architectures
2 Plateformes
3 Developpement
Sylvain Jubertie - Universite d’Orleans Developpement nomade 19 / 30
ArchitecturesPlateformes
Developpement
Methodes et outils de developpement
Langages divers
Cross-compilation
Emulateurs / Simulateurs
Plateformes de developpement
Sylvain Jubertie - Universite d’Orleans Developpement nomade 20 / 30
ArchitecturesPlateformes
Developpement
Difference Emulateur/Simulateur
Un emulateur reproduit de maniere logicielle un materiel
Un simulateur reproduit un modele abstrait
Sylvain Jubertie - Universite d’Orleans Developpement nomade 21 / 30
ArchitecturesPlateformes
Developpement
Android
Langage Java + API
Langage C/C++ via le NDK Native Development Kit
Android emulator
developpement sous Linux, Windows, MacOS
Sylvain Jubertie - Universite d’Orleans Developpement nomade 22 / 30
ArchitecturesPlateformes
Developpement
Architecture Android
Sylvain Jubertie - Universite d’Orleans Developpement nomade 23 / 30
ArchitecturesPlateformes
Developpement
iOS
Langage Objective-C + API
Machine virtuelle Dalvik
simulateur
uniquement sur MacOS
Sylvain Jubertie - Universite d’Orleans Developpement nomade 24 / 30
ArchitecturesPlateformes
Developpement
Architecture iOS
Sylvain Jubertie - Universite d’Orleans Developpement nomade 25 / 30
ArchitecturesPlateformes
Developpement
Windows Mobile - Windows Phone 7
C#, .NET, SilverLight
Visual Studio + Mobile SDK
Emulator
uniquement sous Windows
Sylvain Jubertie - Universite d’Orleans Developpement nomade 26 / 30
ArchitecturesPlateformes
Developpement
Architecture Windows Phone 7
Sylvain Jubertie - Universite d’Orleans Developpement nomade 27 / 30
ArchitecturesPlateformes
Developpement
Remarques
Developpements specifiques a chaque plateformes (langages, API,outils, . . . ) donc :
pour toucher la moitie du marche, portage sur au moins 2plateformes
cout important des portages : temps + budget
evolution rapide des plateformes : mises a jours
Sylvain Jubertie - Universite d’Orleans Developpement nomade 28 / 30
ArchitecturesPlateformes
Developpement
Autre possibilite : Adobe Flash
Avantages :
portabilite (sauf iOS)
developpement factorise
Inconvenients :
depend du bon vouloir d’Adobe
consommation importante de ressources
Sylvain Jubertie - Universite d’Orleans Developpement nomade 29 / 30
ArchitecturesPlateformes
Developpement
Autre possibilite : technologies Web
Avantages :
portabilite vers toutes les plateformes
simple a mettre en oeuvre
Inconvenients :
performance
necessite souvent un acces au reseau
Sylvain Jubertie - Universite d’Orleans Developpement nomade 30 / 30