Linux pour les systèmes embarqués



Documents pareils
Construction et sécurisation d'un système Linux embarqué. Frédéric AIME

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

Linux embarqué: une alternative à Windows CE?

Linux pour l embarqué. 1 Module E4 : Systèmes temps-réel Audrey Marchand

Systèmes informatiques

Comment travailler avec les logiciels Open Source

Personnes ressources Tice. Académie de Rouen

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

Traitement de données

Virtualisation sous Linux L'age de raison. Daniel Veillard

Linux 1: Présentation

Parallels Transporter Lisez-moi

NON URGENTE TEMPORAIRE DEFINITIVE OBJET : RÉCUPÉRATION DES DONNÉES CLIENT SUR DISQUE DUR DÉFECTUEUX OU INVALIDÉ

Systèmes d exploitation

Environnement Informatique EMSE Linux

Session 8: Android File System

qwertyuiopasdfghjklzxcvbnmqwerty uiopasdfghjklzxcvbnmqwertyuiopasd fghjklzxcvbnmqwertyuiopasdfghjklzx cvbnmqwertyuiopasdfghjklzxcvbnmq

Linux embarqué, Linux Temps Réel : présentation

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4.

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

VMware ESX : Installation. Hervé Chaudret RSI - Délégation Centre Poitou-Charentes

Tivoli Endpoint Manager Introduction IBM Corporation

Formations Evolix Catalogue

Compilation croisée sous Linux et Windows

Tutorial uclinux ARM7 Development Starter Kit. Pragmatec Produits et services dédiés aux systèmes embarqués. uclinux - Mise en oeuvre

LINUX - ADMINISTRATION PROGRAMME DE FORMATION

Linux pour l embarqué Introduction

Linux. embarqué. 2 e édition. Pierre Ficheux. Avec deux études de cas

Le stockage. 1. Architecture de stockage disponible. a. Stockage local ou centralisé. b. Différences entre les architectures

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

Leçon 1 : Les principaux composants d un ordinateur

Déploiement de Linux en réseau avec Kickstart. Mars

Stéphane DERACO, DSI CNRS l Argos Devops : de l hyperviseur aux conteneurs l 11/12/2014 DOCKER

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

ST50 Projet de fin d études Noyau Linux et multi-processeur pour une plateforme embarquée

Département de génie électrique. ELE784 - Ordinateurs et programmation système. Laboratoire #1

Catalogue des stages Ercom 2013

Unix/Linux I. 1 ere année DUT. Université marne la vallée

Windows Server Chapitre 1: Découvrir Windows Server 2008

Systèmes Embarqués Libres

Outils de développement collaboratif

Éléments de programmation et introduction à Java

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

Tutoriel Création d une source Cydia et compilation des packages sous Linux

VMWARE VSPHERE ESXI INSTALLATION

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

EMC NetWorker Version 7.4 Version multiplate-forme

MI03 TP. Objectifs du TP 1ère séance. 2ème séance. Construction d'un système linux embarqué complet

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

Découverte des Logiciels Libres. Gilles Dequen

Programmation C. Apprendre à développer des programmes simples dans le langage C

ndv access point : Installation par clé USB

Concept de machine virtuelle

Chapitre 3 : Système de gestion de fichiers

FOG : Free Open-Source Ghost. Solution libre de clonage et de déploiement de systèmes d'exploitation.

Sébastien Geiger IPHC Strasbourg

Cours 13. RAID et SAN. 2004, Marc-André Léger

Retrouver de vieux programmes et jouer sur VirtualBox

Architecture de la plateforme SBC

Virtualisation CITRIX, MICROSOFT, VMWARE OLIVIER D.

INSTALLATION DE WINDOWS 2000 SERVER POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé

PROFIL EXPERIENCE ARCHITECTE LINUX, OPEN SOURCE, COORDINATEUR SÉCURITÉ EMEA

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

PPE 1 PRISE EN MAIN DE VMWARE VSPHERE 5.5 & CONFIGURATION D UNE MACHINE VIRTUELLE

Openmoko, free your phone!

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Linux embarqué Retour d expérience et temps réel. Denis Coupvent-Desgraviers

IV- Comment fonctionne un ordinateur?

Synerway Guide de Compatibilité. Version 4.0

40èmes Olympiades des métiers

Démarrage à partir du réseau

Acronis True Image 10 Home Edition

Livre blanc Haute disponibilité sous Linux

Fiche technique: Sécurité des terminaux Symantec Endpoint Protection La nouvelle technologie antivirus de Symantec

Solutions de Virtualisation du poste de travail. ViewSonic vous présente le poste de travail virtuel du futur

SQL Server 2008 et YourSqlDba

Guide pour l Installation des Disques Durs SATA et la Configuration RAID

Cours Informatique 1. Monsieur SADOUNI Salheddine

LES OLYMPIADES DES METIERS. paration aux sélections s. Guide de préparation. régionalesr. Métier n 39 : GESTION DES RESEAUX INFORMATIQUES

HSM, Modules de sécurité matériels de SafeNet. Gestion de clés matérielles pour la nouvelle génération d applications PKI

Installation et prise en main d UBUNTU

Comment bien installer, configurer, utiliser, administrer, personnaliser et optimiser une distribution Debian GNU/Linux

Administration de Parc Informatique TP07 : Installation de Linux Debian

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT

Tutoriel déploiement Windows 7 via serveur Waik

Exigences système Edition & Imprimeries de labeur

Naissance d'un REPTAR

Serveur Acronis Backup & Recovery 10 pour Linux. Update 5. Guide d'installation

Présentation Windows 7 &

Boot Camp Guide d installation et de configuration

Exigences système Edition & Imprimeries de labeur

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

Notre Catalogue des Formations IT / 2015

Prestations informatiques Taux horaires. Prix / T.T.C 35 TTC 15 (offert si réparer par nos soins) Problème materiel :

Serveur de sauvegarde à moindre coût

WORKSHOP OBIEE 11g (version ) PRE-REQUIS:

Sauvegardes sous Mac OS X

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

Nouveautés Ignition v7.7

Transcription:

http://www-adele.imag.fr/users/didier.donsez/cours Linux pour les systèmes embarqués Didier DONSEZ Université Joseph Fourier Grenoble 1 PolyTech Grenoble LIG/ADELE Didier.Donsez@imag.fr, Didier.Donsez@ieee.org

Linux pour l embarqué Inconvénients Empreinte mémoire minimum : 4 Mo Problème GPL/LGPL Standard 2

Différentes approches Création d une distribution from scratch de la distribution standard (Linus Torvald) Explications: http://www.linuxfromscratch.org/ http://www.kernel.org Puis make xconfig Produit commercial Outil de création/ gestion de projet graphique Vente du support technique (bug, drivers, ) Embedix (Embedix Inc.; http://www.embedix.com/) BlueCat Linux (LynuxWorks; http://www.linuxworks.com/) MontaVista Linux ( ex Hard Hat Linux http://www.mvista.com/) Embedded Linux (Red Hat; http://www.redhat.com/) Choix d un outil libre PeeWee Linux, Embedded Debian Project, ETLinux, uclinux 3

Distribution embarquée PeeWee Linux RT/Linux RT/AI MontaVista: SOftRT µclinux Blue Cat 4

Empreinte mémoire Embarqué typique Embarqué très embarqué µclinux Sans MMU 5

Facteurs de forme (Form factor) PC 104 (90x96 mm) Empilable par un bus ISA 104 broches x86 (386/25 au PIII/700) ou autre 16 Mo RAM ou plus CompactFlash/miniDD RS232/CAN/Ethernet VGA parfois Basse consommation PC104+ Comporte un bus PCI (120 broches) en plus CompactPCI (170x170mm), Micro-ITX (170x170mm), Nano-ITX (120x120mm) PC de bureau + ports complet DIL Dual In Line (82x28mm) SIMM (30 broches) Dédié PC104 Quand on peut en produit des dizaines de milliers! (console de jeux, ) Quand la forme est importante : portable, caméscope, 6

Facteurs de forme (Form factor) Exemple en boîtier industriel 7

Langages utilisés Assembleur depuis longtemps C/C++ (gcc Os), shell (version réduites: ash, msh), HTML/CGI (mhttpd) Perl, Python, Tcl/Tk peu utilisé à cause de la taille BusyBox: version simplifiée des commandes UNIX+shell Java J2ME / CDC ou CDLC 8

Phases de contruction d un système Optimisation de la procédure de démarrage <10s en général Réduction drastique du nombre de commandes disponibles et des bibliothèques partagées Optimisation du noyau en fonctionnalités nécessaires Réduction et simplification du nombre de fichiers et répertoires de configuration comme /etc Suppression du système de swap Surtout si c est de la flash 9

Optimisation du démarrage 1. Boot du système par LILO ou équivalent 2. Chargement du noyau 3. Lancement par le noyau du processus /sbin/init 4. Lecture de /etc/inittab par le processus init qui contient en general le nom du script runlevel rcx.d Rc.S effectue les actions suivantes Démarrage de /sbin/update destiné à vider les buffers mémoire 10

Réduction du nombre de commandes et de bibliothèques Graphe de dépendance direct donné /usr/bin/ldd et chroot Mklibs.sh (DEBIAN) v d /mnt/emb/lib bin/* sbin/* Recompiler les packages Os, pas de PAM (Pluggage Authentication Module) Ash plutot que bash Attention aux bibliotheque chargées a l execution non visibles (dlopen) Configuration du /etc et /dev Peu volumineux 11

Optimisation du noyau Ne jamais utiliser la configuration standard du noyau Il faut recompiler le noyau http://www.kernel.org/pub/linux/kernel/v2.4/ Eviter les distributions contructeurs car il faudra appliquer les patchs!!! Pilote péripherique non utilisée Pilote de FS non utilisé MSDOS, VFAT, Voir instructions dans les commentaires 12

Mimimun Si application unique LILO: linux init=/bin/mon_programme Utilisation d un RAMDisk si pas de probleme de perte de données 13

Interface graphique Concerne une partie des systèmes embarqués STB, TV Numérique, PDA, Smart Phone Pas pour les serveurs FTPD, XFree86 : plusieurs méga quand même Mais Mode VESA Frame-Buffer Linux Qt/Embedded QT base de KDE Saurus de Sharp (GPL) -> applications doit etre GPL Micro-Windows/Nano-X GTK DILLO Mini brouteur HTML 14

Config Statique /boot vmlinux Dynamique /lib/module On ne peut laisser que les modules nécessaires Q: statique/module + Module: maj pour faible surcout mem 15

Choix d un système de fichiers (File system) Systèmes de fichiers journalisés résistant aux arrêts imprévus Ext3 Évolution de Ext2. Compatible Ext2 ReiserFS Performant mais partition >32Mo JFFS2 Adapté aux mémoires Flash SF pour ROM Car tient compte de la dégradation du point mémoire Flash lors des écritures CRAMFS (Compressed ROM FS) ROM, Image ISO du CRROM, Read only, compression zlib - fichier < 16Mo, partition < 256Mo RAMDisk + accès rapide, + coût inférieure de la RAM / FlashRAM Parfois RAM sauvegardée par pile (TINI) 16

Amorçage du noyau LILO GRUB LoadIn LinuxBIOS RedBoot 17

Mise au point JTAG (Joint Test Advisory Group) IEEE1149.1 Interface de test pour système enfoui, ASIC, http://www.temento.com/ftestinto.htm 18

Linux et Temps-Réel 19

Standardisation Linux embarqué consortium ELC (Embedded Linux Consortium) http://www.embedded-linux.org/ Acteurs IBM, 20

µclinux http://www.uclinux.org/ Portage du noyau Linux Cibles: µp et µc 16-bits et 32-bits sans MMU Motorola 683xx, Motorola ColdFire, Intel i960 d Intel, ARM7TDMI, Altera NIOS, Empreinte mémoire Noyau inférieure à 512 Ko. Noyau + commandes Linux inférieures à 900 Ko. Limitations d usage Pas de mémoire virtuelle Pas de espace protégé (overflow possible) Pile fixé pour chaque processus (pas de sbk()) Pas de fork() mais vfork() L appelant est bloqué du exec() jusqu au exit() Image binaire d un processus < 256Ko Outils de développement GNU gcc, gdb, Portage de shells, serveur Web, Pile TCP/IP complète 21

Bibliographie Karim Yaghmour,»Building Embedded Linux Systems», Ed O'Reilly, April 2003, ISBN 0-596-00222-X, p416 Un des plus détaillés Pierre Ficheux, «Linux embarqué», Eyrolles, 2005, 2 ème édition, ISBN : 2-212- 11674-8 En français Dr. Craig Hollabaugh, "Embedded Linux: Hardware, Software and Interfacing", Ed Addison Wesley Professional, ISBN: 0672322269 John Lombardo, "Embedded Linux", Ed New Riders Publishing 07/2001, 0-7357-0998-X, http://safari.informit.com/?xmlid=0-7357-0998-x Abbott, "Linux for Embedded and Real-Time Applications", Ed Butterworth- Heinemann, (September 2002), ISBN: 0750675462 Daniel P. Bovet, Marco Cesati, "Understanding the Linux Kernel", 2nd Edition, Ed O'Reilly, December 2002, ISBN : 0-596-00213-0, Pages : 784 La bible sur les internes du noyau!! Claudia Salzberg Rodriguez, Gordon Fischer, Steven Smolski, Linux Kernel Primer, The: A Top-Down Approach for x86 and PowerPC Architectures, Prentice Hall, Date: September 19, 2005, ISBN-10: 0-13-118163-7 22

Webographie Livre «Linux From Scratch» en Ligne (et en français) http://www.fr.linuxfromscratch.org/view/lfs-5.0-fr/ Liste des devices EL http://www.linuxdevices.com/ 23

Linux sur une disquette (d apres Kadionik) Tom s Boot Root http://www.toms.net/~toehser/rb Boot/root rescue/emergency floppy image with more stuff than can fit. Bzip2, 1722Mb formatting, and tight compilation options helped jam a lot on. It is useful for "learn unix on a floppy" as it runs from ramdisk, includes the manpages for everything, and behaves in a generally predictable way. Linux Router Project :(IS DEAD) http://www.linuxrouter.org LRP is small enough to fit on a single 1.44MB floppy disk, and makes building and maintaining routers, access servers, thin servers, thin clients, network appliances, and typically embedded systems next to trivial. 24