Que Faire quand Linux ne fait pas laffaire

  • Slides: 24
Download presentation
Que Faire quand Linux ne fait pas l'affaire ? Vania Joloboff / Eric Paire

Que Faire quand Linux ne fait pas l'affaire ? Vania Joloboff / Eric Paire Groupe Silicomp

Silicomp Société de Solutions en Technologie Informatique Plus de 900 personnes pour un CA

Silicomp Société de Solutions en Technologie Informatique Plus de 900 personnes pour un CA de ~90 M€ Activités Conseil Réseaux et infogérance de réseaux Systèmes d’informations et Sécurité Informatique Technologique (embarqué, temps réel, SIP) Présence Internationale Amérique du Nord (Etats-Unis, Canada) Asie (Singapour, Malaisie, Inde) 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 2

Evolution des systèmes embarqués Informatique omni-présente (pervasive computing) 7 milliards de micro-processeurs en fonction

Evolution des systèmes embarqués Informatique omni-présente (pervasive computing) 7 milliards de micro-processeurs en fonction Une grande part du marché encore en 8 -bits Des équipementiers qui fabriquent des appareils communicants Des opérateurs qui offrent un service 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 3

Adoption de Nouvelles Technologies Les applications doivent évoluer vers de nouvelles fonctions qui ne

Adoption de Nouvelles Technologies Les applications doivent évoluer vers de nouvelles fonctions qui ne peuvent être implémentées sur la plate-forme actuelle Introduction de nouveaux bus (CAN, USB, I 2 C, …) Inclusion de communications dans la plate-forme Nouveaux Services Internet et Web 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 4

Systèmes à faible coût Le Prix est LE facteur déterminant Systèmes < 30 Euros

Systèmes à faible coût Le Prix est LE facteur déterminant Systèmes < 30 Euros (hors écrans) avec Un So. C intégrant typiquement • • Processeur + GPIO + UART + Flash CAN et/ou Ethernet Pas de MMU Mémoire <= 1 Méga. Octet Equation Economique Puissance calcul + Puissance dissipée + Prix < Limite 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 5

Linux Hors Jeu ? Trop consommateur de ressources Trop de fonctionnalité par rapport au

Linux Hors Jeu ? Trop consommateur de ressources Trop de fonctionnalité par rapport au nécessaire Pas assez temps réel Pas conçu au départ avec une telle contrainte Une solution open source ? 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 6

Le monde Open Source Linux Ressources Linux µCLinux 4èmes Journées Linux Grenoble http: //www.

Le monde Open Source Linux Ressources Linux µCLinux 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG RTLinux, RTAI, Embedix, Jaluna, Hard Hat, … e. Cos Temps Réel 7

Linux Embarqué Adapté aux machines puissantes RAM > 1 Moctet, MMU, cache, … Power.

Linux Embarqué Adapté aux machines puissantes RAM > 1 Moctet, MMU, cache, … Power. PC, MIPS, IA-32, IA-64, … COTS Hard Hat Linux, Embedix, Lineo, … RTLinux, RTAI, Jaluna, … µCLinux Standard (from Linus Torvalds) Adapté aux besoins spécifiques 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 8

Une solution open source: e. Cos Adapté aux systèmes 32 -bit légers RAM <

Une solution open source: e. Cos Adapté aux systèmes 32 -bit légers RAM < 1 Moctet, pas de MMU, ARM, M 68 K/Coldfire, SH, MIPS 32 Mémoire Flash utilisée en XIP Caractéristiques Taille minimum (édition de lien finale) Temps réel • Multithreadé, Préemptif Extensible • Notion de Package Configurabilité extrême 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 9

La structuration d’e. Cos est clairement structuré en 3 couches superposées: Une HAL de

La structuration d’e. Cos est clairement structuré en 3 couches superposées: Une HAL de bas niveau Un nano-noyau aux fonctionnalités basiques Un ensemble de packages pour étendre les fonctionnalités 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 10

Architecture Générale d’e. Cos Application Autres Packages Sous-systèmes • Librairies (libc, …) • Pile

Architecture Générale d’e. Cos Application Autres Packages Sous-systèmes • Librairies (libc, …) • Pile de réseau • Pilotes de périphériques • Systèmes de fichiers • Couches de compatibilité (POSIX) • gestion dynamique de mémoire (malloc) Nano-noyau e. Cos • scheduling • synchronisation Redboot • Moniteur de démarrage • Moniteur de debug • Canaux bas-niveau de communication Hardware Abstraction Layer • Interface de bas-niveau • Support de debug 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 11

L’implémentation du nano-noyau e. Cos Interface avec les langages Ecrit en C++ réduit (GNU

L’implémentation du nano-noyau e. Cos Interface avec les langages Ecrit en C++ réduit (GNU tools) L’interface publique en C définie dans <kapi. h> Interfaces standard du noyau Fournis par des packages spécialisés Appels directs aux fonctions du nano-noyau e. Cos Assertions utilisées pour valider la consistance globale de l’OS. 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 12

Le modèle d’exécution d’e. Cos 4 contextes d’exécution Initialisation, ISR, DSR et Thread Les

Le modèle d’exécution d’e. Cos 4 contextes d’exécution Initialisation, ISR, DSR et Thread Les primitives ne sont pas toutes permises dans tous les contextes Pas de privilège réduit pour les applications Tout le code est lié statiquement Tout l’espace mémoire est accessible Pas de nettoyage automatique des ressources 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 13

Le Moniteur Red. Boot Redhat Enhanced Debug and BOOTstrap Moniteur de démarrage Commandes de

Le Moniteur Red. Boot Redhat Enhanced Debug and BOOTstrap Moniteur de démarrage Commandes de configuration Gestion de la mémoire Flash système Chargement et lancement du système Serveur GDB (Gnu De. Bugger) Connexion distante (LAS, Ethernet, …) Contrôle de l’exécution du système Introspection du système 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 14

Les Outils de Configuration Langage de configuration (CDL) Valeurs, contraintes, description, … Niveaux de

Les Outils de Configuration Langage de configuration (CDL) Valeurs, contraintes, description, … Niveaux de configuration Packages, Options Fichiers texte modifiables Par un éditeur de texte standard Par un outil graphique Génération automatique d’un arbre Fichiers paramètres, makefile, sources, Fichier de configuration ‘ecos. ecc’ 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 15

Les Outils de Développement Chaîne de compilation GNU GCC, Binutils & GDB Avantages Outils

Les Outils de Développement Chaîne de compilation GNU GCC, Binutils & GDB Avantages Outils croisés sur tous systèmes pour tous µprocesseurs 32 bit ou 64 -bit Evolution rapide (extensions) R&D mondiale Free ("not as a free beer but as a free speech") Inconvénients Pas d’évolution si personne pour la coder Pas de support garanti 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 16

Développement d'Applications La vue du programmeur d'applications e. Cos est un sous ensemble de

Développement d'Applications La vue du programmeur d'applications e. Cos est un sous ensemble de Linux, grosso modo ISO-C (toutes les fonctions de libc) POSIX Le développement d'applications peut être fait entièrement sous Linux grâce à l'émulateur "e. Cos synthétique" Développement sous Linux ou Windows 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 17

Les Composants Disponibles (1) Systèmes d’exploitation e. Cos + Red. Boot Embedded Linux et

Les Composants Disponibles (1) Systèmes d’exploitation e. Cos + Red. Boot Embedded Linux et variantes Pilotes multiples Périph. : Ethernet, UART, … Bus: USB, SPI, I 2 C, CAN, … Outils GNU pour la plupart des microprocesseurs 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 18

Les Composants Disponibles (2) Utilitaires Téléchargement Flash File System Couches réseaux Plusieurs piles TCP/IP

Les Composants Disponibles (2) Utilitaires Téléchargement Flash File System Couches réseaux Plusieurs piles TCP/IP Light Weight IP SLIP, PPP Services Internet Serveur Web embarqué Serveur FTP embarqué Mail embarqué 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 19

Les Composants Disponibles (3) Java Sécurité PKI http: //www. europepki. org Librairies Crypto Protocoles:

Les Composants Disponibles (3) Java Sécurité PKI http: //www. europepki. org Librairies Crypto Protocoles: Open. SSH / Open. SSL 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 20

Les Composants Disponibles (3) Java Sécurité PKI http: //www. europepki. org Librairies Crypto Protocoles:

Les Composants Disponibles (3) Java Sécurité PKI http: //www. europepki. org Librairies Crypto Protocoles: Open. SSH / Open. SSL 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 21

Le monde Open Source Linux Ressources Linux µCLinux 4èmes Journées Linux Grenoble http: //www.

Le monde Open Source Linux Ressources Linux µCLinux 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG RTLinux, RTAI, Embedix, Jaluna, Hard Hat, … e. Cos Temps Réel 22

L’Offre Silicomp Offre de services spécifiques autour de e. Cos (ou Linux). Développement et

L’Offre Silicomp Offre de services spécifiques autour de e. Cos (ou Linux). Développement et support du BSP exact du client Répond aux questions de suivi technologique de support de non régression de maîtrise du coût de métier 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 23

La Demo Contrôle de moteur en temps réel OS+ JVM + TCP/IP + Application

La Demo Contrôle de moteur en temps réel OS+ JVM + TCP/IP + Application < 256 K 4èmes Journées Linux Grenoble http: //www. guilde. asso. fr/rencontres/4 JLG 24