next up previous contents
suivant: Architecture du palm monter: Table des matières précédent: Introduction   Table des matières

Sous-sections

Choix de la plateforme

Il existe un grand nombre d'assistants de données personnels (PDA), nous allons analyser le marché pour déterminer le modèle le plus approprié pour réaliser une plateforme temps-réel. Nous pouvons diviser le marché en trois catégories d'utilisation :

Nous pouvons dès à présent cibler les catégories d'utilisateurs que nous visons. Seuls les utilisateurs scientifiques et industriels sont concernés par les applications temps-réel et c'est pour cette catégorie de besoin qu'un système d'exploitation temps-réel est destiné.

Critères de sélection

Nous allons définir des critères pour guider notre choix :

Performance du hardware
: la hardware doit être suffisamment puissant pour être utilisé dans des applications temps-réel. Il doit disposer d'interfaces de communication standard pour dialoguer avec d'autres dispositifs, contenir une horloge qui génère une interruption périodique et permettre l'accès à tout l'état du processeur.
Environnement de programmation
: pour déveloper un système d'exploitation, il faut pouvoir accéder au processeur et aux périphériques directement. Les possibilités de programmation offertes par le matériel sont donc primordiales. Par exemple, programmation de compteurs (Timer), accès aux registres et au compteur de programme (PC), ...
Disponibilité de la documentation technique
: beaucoup de PDA sont destinés à être utilisés avec un système d'exploitation bien défini et certains constructeurs ne donnent pas l'accès aux documentations de leurs produits. Cette documentation est fondamentale car sans elle, il sera impossible de programmer la machine.
Facilité de remplacer le système d'exploitation existant
: nous allons devoir trouver un moyen de remplacer le système d'exploitation existant sur la machine par le nôtre. Il faut donc veiller à ce que ce soit possible et de quelle manière on peut le réaliser.
Machine compacte, standard et portable
: un des objectifs du travail est de fournir un système mobile et portable donc la taille, l'encombrement et la standardisation de la machine sont très importants.

Analyse du marché

Trois grandes familles se partagent le marché :

Psion a été un pionnier dans la conception d'assistants personnels mais aujourd'hui la société qui les fabriqué a abandonné le développement et la production des assistants personnels grand public (Psion Series 3, Series 5 et Revo). Ce genre de machine n'est donc plus du tout un standard et nous pouvons les éliminer de notre choix.

Les machines de type PocketPC

Les assistants personnels de type PocketPC sont arrivés il y a peu et sont devenus les leader du marché. Le succès de ces ordinateurs de poches est dû aux nombreuses applications qu'ils offrent. Tout d'abord ces machines sont plus puissantes, de l'ordre de 200Mhz avec une RAM de 32Mb. Elles sont livrées avec un système d'exploitation Windows CE de Microsoft, dont l'analogue pour PC est bien connu. Les applications accessibles grâce à ces machines sont impressionantes : programmes de bureautique, lecture de vidéos et de fichiers MP3, messagerie instantanée en standard, accès facilité à un intranet, surf sur l'Internet, etc.

Toutes ses fonctionnalités sont malheureusement inutiles pour l'utilisation que nous voulons faire de la machine. La documentation technique disponible est très maigre. Ces machines sont destinées à un usage grand public pour profiter du multimédia. De plus le système d'exploitation fourni n'est pas une référence de stabilité et de robustesse, l'accès aux sources est impossible et donc le remplacement de l'OS est très difficile. La programmation n'est pas très soignée et la puissance de la machine est utilisée pour cacher les imperfections du système d'exploitation.

Les machines de type Palm OS

Il existe un grand nombre de machines qui fonctionnent sous Palm OS, nous pouvons citer : Palm Computing, TRG Productions, Handspring, IBM, Sony, etc. Ces machines ont en général un processeur Motorola DragonBall entre 16 et 33 Mhz et une mémoire RAM d'environ 8Mb. L'architecture de ces différentes machines est quasi la même. Le système d'exploitation est un Palm OS, ce système est très petit et offre une rapidité et une robustesse à tout épreuve.

La documentation technique est facilement accessible soit sur le site de Motorola où l'on peut obtenir toute la documentation des différents processeurs DragonBall disponibles, soit sur le site de Palm concernant leur système d'exploitation. La seule information plus difficile de trouver est celle concernant l'organisation du matériel autour du processeur dans la machine.

Le système d'exploitation est situé en ROM, cette ROM peut être réécrite par software. Il est donc possible de remplacer toute la couche logicielle présente dans le Palm. Mais cette opération est dangereuse et peut mettre la machine dans un état irrécupérable. En effet, le procédé pour réécrire la ROM est un procédé logiciel, si le code de la nouvelle ROM comporte des erreurs et que le logciel pour écrire la ROM n'est pas éxécutable (manquant, corrompu, etc), il sera impossible de réécrire la ROM. Un autre moyen est de charger un morceau de programme dans la RAM et de demander au système d'exploitation résidant sur la machine d'exécuter ce morceau de code. Ensuite, si le code ne rend pas la main au système d'exploitation hôte, celui-ci ne s'exécutera plus. Nous reviendrons en détail sur ce sujet par la suite.

Les différentes machines de ce type sont compactes et standards. D'une part le matériel est fort similaire et du code écrit pour une machine est portable sur une autre machine à quelques détails de configuration près. D'autre part le système d'exploitation Palm OS qui fonctionne sur ces machines offre une compatibilité entre les différentes implémentations matérielles.

Nôtre choix

Vu les critères posés, nous avons choisi une machine de type Palm OS. Le choix du modèle a beaucoup moins d'importance, nous avons choisi le plus standard de chez Palm. Au départ nous avions pensé à un Palm Vx qui a fait ses preuves depuis des années dans le domaine des PDA mais ce modèle est en fin de carrière. Nous avons préféré choisir un Palm m500 qui est le successeur du Palm Vx et qui dispose des dernières technologies de chez Palm, ceci sera un gage de compatibilité avec les modèles futurs et de plus grande longévité.

Tour d'horizon du Palm m500

Le Palm m500 est le successeur direct du Palm Vx. Il s'agit de l'un des modèles PalmOS les plus performants avec un processeur à 33 Mhz, la version 4 de PalmOS et un berceau USB pour recharger la machine. Ce nouveau berceau inaugure un standard de connectivité dit "universel" qui devrait être utilisé pour les prochains Palm. Par contre, cela signifie que le Palm m500 n'est pas compatible avec les accessoires des Palm de série III ou V. Il existe toujours un port série mais les connecteurs ne sont pas les mêmes, un berceau série est disponible en option.

Le Palm m500 est aussi l'un des premiers Palm à utiliser un port d'extension MMC/SD. On peut glisser dans ce port de la taille d'un timbre-poste une petite carte mémoire ou bientôt des accessoires comme un lecteur MP3, un module Bluetooth ou encore un récepteur GPS.

Cette machine dispose aussi d'une batterie rechargable de très bonne qualité, d'un vibreur et d'un témoin lumineux pour signaler les alarmes. Au niveau de l'affichage, le m500 dispose d'un écran LCD de 160x160 pixels classique avec un écran tactile (digitizer) que l'on utilise avec un stylet. Les Palm disposent d'une reconnaissance de caractère prodigieuse qui se fait dans la zone située sous l'écran appelée Graffiti. Comme tous les modèles, le m500 possède un port infra-rouge situé au dessus de la machine.

Détails techniques

Processeur Motorola DragonBall
  MC68VZ328 à 33 Mhz
Mémoire RAM 8 Mb
Mémoire Rom 4 Mb
Dimensions (LxPxH) 7.9 cm x 1 cm x 11.4 cm
Poids 113 g
Affichage Ecran tactile monochrome
  de 160 x 160 pixels
Ports disponibles 1 x infrarouge, 1 x USB,
  1x série, 1 x SD Card


next up previous contents
suivant: Architecture du palm monter: Table des matières précédent: Introduction   Table des matières
Fabian Skivee 2002-06-04