Projet de fin d études Technology & Strategy Engineering

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

Download "Projet de fin d études Technology & Strategy Engineering"

Transcription

1 Projet de fin d études Technology & Strategy Engineering Sujet : Plateforme Linux & Combi Instrument. 1 Février Juillet 2010 Société : Technology & Strategy Engineering 4 avenue de la Paix Strasbourg Établissement : INSA Strasbourg 24 Boulevard de la Victoire Strasbourg Professeur référent : M. Boyer Bertrand Responsable : M. Roth Matthieu Étudiant : M. Heinrich Yannick

2 1. CAHIERS DES CHARGES 1 Cahiers des charges Recherche et étude des différentes plate-formes Linux existantes sur le marché. Connexion d un écran tactile à la plate-forme Linux choisie. Ajout d une connexion CAN à la plate-forme. Réalisation éventuelle d une carte regroupant l ensemble des composants. Développement du software nécessaire en langage C. Connexion de la plate-forme au système lève-vitres rétroviseurs de T&S. Archivage des différentes versions de SW dans un logiciel de gestion de configuration de type SVN. Possibilité d ajout d un chip GPS ou d autres fonctionnalités si le temps restant le permet. 1

3 Résumé Le stage s est déroulé au sein du laboratoire de recherche et développement de la société Technology & Strategy Engineering. Le sujet portait sur la réalisation d une plate-forme d instrumentation à l aide d une carte embarquée GNU/Linux et un écran AMOLED tactile. Le développement incluait la réalisation du pilote pour le noyau Linux et le développement d un PCB pouvant accueillir l écran et son alimentation. La carte principale provient de la société ARMADEUS Systems et est articulée autour d un processeur Freescale imx27 avec une architecture ARM9. L intégration d un noyau Linux de génération 2.6 et d un shell BusyBox s est réalisé avec la suite Buildroot et les sources fournies. La conception du PCB a été réalisé sous le logiciel KICAD. Le développement des applicatifs s est basé sur la librairie SDL et a été programmer en C. My training session took place in the research & development laboratory of the Technology & Strategy Engineering society. The subject dealed with the conception of an instrumentation platform with an GNU/Linux embedded board and an AMO- LED touchscreen. The development covered the software part by the conception of a Linux driver and the hardware part by the design of an PCB hosting the screen and its power supply. The main board was bought to the ARMADEUS Systems society and is based on a imx27 Freescale processor with an ARM9 architecture. The integration of a 2.6 Linux kernel and a Busybox shell was made with the Buildroot toolchain and the source codes provided by the supplyer. The PCB design was made with KICAD. The applications was developed using the SDL library in the C language.

4 1. CAHIERS DES CHARGES Table des matières 1 Cahiers des charges 1 2 Introduction 3 3 Remerciements 4 4 Présentation de l entreprise Historique Le groupe Technology & Strategy Quelques chiffres Particularité de la division Engineering Présentation du sujet Le laboratoire de R & D Projet Combi instrument & plateforme linux Cahiers des charges Cycle de développement et organisation dans le temps Outils mis à disposition Du processeur au noyau Rôle d un système d exploitation Adressage mémoire Représentation Mode réel Mode protégé et segmentation Pagination Le mode noyau et le mode utilisateur Lancement d un système Présentation de GNU Présentation de Linux Développement Un couple gagnant Linux et la mémoire Naviguer dans les sources du Noyau Les pilotes sous Linux Le framebuffer Réalisation Choix de la plateforme GNU/Linux Carte retenue Présentation de l architecture ARM (32 bits) Composants logiciels Sur l ordinateur

5 1. CAHIERS DES CHARGES Buildroot Sur la carte Interfaces avec la carte Écran AMOLED Tactile Interface RGB Parallèle Interface SPI "3-wire" Écriture du pilote Alimentation Conception de la carte Contraintes de routage Schéma Routage Soudure Conclusion 45 A The GNU General Public Licence 51 A.1 Preamble A.2 Terms and conditions for copying, distribution and modification A.3 Appendix : How to Apply These Terms to Your New Programs B Code sources 56 B.1 Module Noyau B.2 Code d essai SDL - Fractale de MandelBrot B.3 Ajout de la librairie CWIID dans buildroot B.3.1 libcwiid.mk B.3.2 configure_.patch B.3.3 makefile_in.patch

6 2. INTRODUCTION 2 Introduction Le monde de l électronique ne cesse d envahir notre quotidien : récepteurs GPS dans nos voitures, baladeurs audio et vidéo de dernières générations, appareils photos numériques, robots Wi-fi[1][2]... un trait d union relie tout ce petit monde : l univers des systèmes embarqués. Depuis l AGC[3] du programme Apollo à l hélicoptère télécommandé de la société Parot [4], 40 ans se sont écoulés et ont permis une véritable démocratisation des systèmes intelligents. Ce déploiement fut possible grâce à l intégration constante des puces électroniques et l évolution en parallèle des concepts et des langages informatiques. On peut s abstenir de coder en assembleur pour gérer la pagination et passer à des langages haut - niveau comme le Pascal, Ada voire même C++ pour réaliser ses propres noyaux et systèmes d exploitation. L arrivée d outils libres de droits comme GNU, BSD ou Linux ont offert à tous la possibilité de développer des systèmes autonomes à moindres frais sans s écarter des standards de l industrie. De nombreuses entreprises de différents secteur basent leur travail sur ces outils : des lecteurs DVD, des baladeurs, des robots domestiques, des motos, des voitures, des routeurs... tous ces produits sont susceptibles de contenir un noyau embarqué du type Linux ou un mini système GNU. De nos jours, il n est plus nécessaire d être un génie de l électronique et de l informatique pour utiliser une caméra sur son ordinateur, il suffit de disposer du pilote adéquat. Mais comment ce pilote est il réalisé et comment est il intégrer au coeur du système d exploitation de nos machines? Ces deux questions nous amène au sujet de mon projet de fin d étude : Comment relier le monde de l électronique et de l informatique au coeur d un système d exploitation existant? J ai été amener à couvrir de nombreuses thématiques pour la réalisation de ce projet. Du côté de l informatique embarquée, la recherche partait de la préemption au protocole VGA en passant par les nombreux outils de compilation et gestions de dépendances utilisés dans le monde libre. Pour la partie électronique, j ai été confronté aux problèmes de routage, d alimentation, de connexion de bus dont les solutions nécessitaient de nombreuses investigations. C est avec un très grand intérêt que j ai mené ce projet et c est avec plaisir que je vous présente le résultat de mon travail. 3

7 3. REMERCIEMENTS 3 Remerciements Je voudrais tout d abord remercier l équipe enseignante de l INSA Strasbourg de m avoir transmis le bagage nécessaire à la réalisation d un projet comme celui-ci et pour l encadrement de tous les sujets proposés durant cette dernière année. Je remercie M. Mathieu Roth, responsable du laboratoire R & D, pour son aide, son encadrement et pour l expérience qu il a volontièrement partagée. Je remercie ensuite M. Jérémie Huss, responsable du département Engineering et M. Frédéric Bonnet, responsable du département Holding, de la confiance et de la liberté de travail qu ils m ont accordées pendant tout la durée de mon PFE. Je souhaite remercier M. Pascal Tourenne,M. Pascal Prim et M. Patrice Paulus pour le temps qu ils m ont accordé et leur intérêt à mon sujet. Je voudrais également saluer M. Thomas Caucigh, Mlle Élodie Poulain, M. Alexandre Carrier, M. Vercruysse Pierre-Alain, M. Johan Clauss et M. Loïc Bailleau, stagiaires au laboratoire R & D pour leur aide volontaire et leur amitié qu ils ont exprimée pendant ces six mois. Je suis également reconnaissant du travail réalisé à notre égard par Mme Sylvia Pradillon lors des cours d Allemand du mardi et du jeudi matin. Je remercie également tous les employés de TS Engineering, TS Holding, TS Informations Technologies pour leur accueil chaleureux et leur sympathie lors de mon passage au sein du groupe TS. 4

8 4. PRÉSENTATION DE L ENTREPRISE 4 Présentation de l entreprise 4.1 Historique Une première société,beratta, avait été fondée par les dirigeants de chacune des entités avant d être rachetée par un des leaders du conseil : le groupe Altran. Préférant une indépendance financière et décisionnelle, ils créent la société Technology & Strategy en 2008 avec une équipe issue à la fois d Altran et de Beratta. La société retrouve une structure plus "familiale" et sa division en trois parties répartie au mieux les compétences. La maison mère de la société se situe sur l avenue de la paix à Strasbourg et depuis peu une filiale s est crée dans la région parisienne. 4.2 Le groupe Technology & Strategy Le nom "Technology & Strategy" regroupe implicitement trois entités distinctes (cf Fig. 1) : Technology & Strategy Engineering centrée sur les métiers de l ingénierie des systèmes embarqués majoritairement dans le monde des transports (automobile, ferroviaire, aéronautique) et aussi le domaine de l énergie. Technology & Strategy Information Technologies focalisée sur les technologies de l information dans les solutions collaboratives sur le Web (organisation de projets, aide à la décision, plate-forme de gestions de contenus). Technology & Strategy Holding qui assure les fonctions de gestions pour les deux autres sociétés (ressources humaines, administration centralisée, aspects financiers et gestion du personnel). FIGURE 1 Le groupe Technology & Strategy 5

9 4.3. QUELQUES CHIFFRES 4. PRÉSENTATION DE L ENTREPRISE La famille TS compte depuis peu une nouvelle division nommée RheinBrücke Consulting concentrée sur le conseil en milieu franco-allemand. Elle recherche des compétences bilingues par approche directe. F IGURE 2 Logos de la société RheinBrucke Consulting. 4.3 Quelques chiffres Le groupe Technology & Strategy représente aujourd hui [5] : plus d une centaine de collaborateurs avec l objectif de doubler l effectif fin un groupe solide avec 3 entités bien distinctes. une croissance régulière du nombre de clients depuis un chiffre d affaire cumulé de 6,5 M d euros en Particularité de la division Engineering Cette division est une société sur le Rhin : elle réalise 80% de son activité outre Rhin et travaille pour des grands noms de l industrie automobile comme l équipementier Bosch ou divers constructeur comme BMW. L entité engineering est également la plus grande en termes de création de valeurs et du nombre de collaborateurs. F IGURE 3 La zone d activité vue par la société Elle possède également un laboratoire de recherche et développement qui permet à l entreprise d acquérir des compétences sur des projets d actualités, offrir une vitrine des savoirs faires à l entreprise et former ses futurs collaborateurs. 6

10 5. PRÉSENTATION DU SUJET 5 Présentation du sujet 5.1 Le laboratoire de R & D Le laboratoire de la société comptait 5 projets technologiques et un projet de d étude de marché durant le même laps de temps. Ils s organisait autour d un thème commun : l automobile.ils devaient se rencontrer lors des phases terminales (cf Fig. 4). FIGURE 4 Les projets du laboratoire en Projet Combi instrument & plateforme linux L intitulé officiel du sujet est le suivant : Afin de continuer son développement dans le secteur des Systèmes Embarqués Automobiles, le laboratoire Engineering de T&S souhaite développer un tableau de bord tactile sur une plate-forme Linux embarqué. Outre la possibilité d afficher la vitesse sous différentes formes, le combi tactile devra également permettre d enregistrer et de représenter différentes mesures comme l accélération, la distance de freinage ou le temps au tour dans le cas de mesures sur circuit. De plus, des fonctions de diagnostique embarquées doivent également être possible Cahiers des charges Le cahier des charges se décompose comme suit : Recherche et étude des différentes plate-formes Linux existantes sur le marché. Connexion d un écran tactile à la plate-forme Linux choisie. 7

11 5.3. CYCLE DE DÉVELOPPEMENT ET ORGANISATION DANS LE TEMPS 5. PRÉSENTATION DU SUJET Ajout d une connexion CAN à la plate-forme. Réalisation éventuelle d une carte regroupant l ensemble des composants. Développement du software nécessaire en langage C. Connexion de la plate-forme au système lève-vitres rétroviseurs de T&S. Archivage des différentes versions de SW dans un logiciel de gestion de configuration de type SVN. Possibilité d ajout d un chip GPS ou d autres fonctionnalités si le temps restant le permet. 5.3 Cycle de développement et organisation dans le temps Le processus de développement devait suivre le processus du cycle en V : FIGURE 5 Le cycle en V Ce cycle hiérarchisé minimise la perte de temps et les erreurs de conceptions en fin de projet. Dans notre cas, le cahier des charges répondait largement à l analyse des besoins et la partie spécifications correspondait à une recherche documentaire. La majeur partie du travail s est située sur les phases de spécifications et de conceptions. J étais responsable de la planification des tâches sur l ensemble du stage et de l organisation de mon temps sur la semaine. De même, le choix des outils de travail et les orientations techniques relevaient de ma propre responsabilité. J ai pu ainsi m immerger plus rapidement sur le fond de ma problématique sans me heurter d emblée à un environnement inconnu. Le projet nécessitait plusieurs travaux distincts en informatique, électronique et en recherche documentaire. Le travail a été réparti sur les 6 mois de stage à l aide d un diagramme de Gantt. (cf. pages suivantes) 5.4 Outils mis à disposition Mon principal environnement de travail comportait les éléments suivants : Station de travail sous environnement GNU/Linux > 2.6. Un dépôt subversion sur un serveur de l entreprise accessible en dehors du réseau interne. Une station de soudure, 3 alimentations stabilisées, un oscilloscope et un multimètre. Possibilité de commande de composants auprès des entreprises Farnell, Dahms et Radio Spare. Accès à internet et à IRC. 8

12

13

14 6. DU PROCESSEUR AU NOYAU 6 Du processeur au noyau Cette partie se veut être une transition avant d entrer techniquement dans le sujet. Elle résume les notions nécessaires à la compréhension de la problématique et à la justification des différents choix techniques. L évolution des architectures de ces puces a façonné les méthodes de conception des systèmes d exploitations et des noyaux informatiques concernant les fonctions vitales (gestion de la mémoire, commutation de contexte pour des systèmes multi-tâches,...). Les différences aux niveaux supérieurs ne relèvent que de choix stratégiques moins dépendants de l électronique et du processeur (organisation des pilotes de périphériques, systèmes de fichiers,...). 6.1 Rôle d un système d exploitation Que ce soit au travail, dans notre voiture ou sur notre téléphone portable, nous sommes tous les jours confrontés à des systèmes d exploitations. Ils réalisent le lien entre l utilisateur et la partie électronique du système. FIGURE 6 Rôle d un système d exploitation - Source : wikipédia Son rôle est en règle générale de garantir un environnement multi-tâches, préemptible (il existe des exceptions dans le monde de l embarqué) et stable pour l utilisateur. On peut le décomposer en différents éléments : Le noyau : C est la partie centrale du système qui fait le lien avec les composants électroniques. Il est composé de plusieurs sous parties : L ordonnanceur (cf Fig. 7) : Ce composant gère la préemption et la partie multi-tâches. À l aide d un algorithme d ordonnancement (Round Robin, Dead Monotics Analysis,etc..) il attribut un temps d exécution à chaque processus au détriment de tous les autres. Sa vitesse d exécution donne l illusion que tous les processus fonctionnent en même temps. La gestion de la mémoire vive/virtuelle (cf Fig. 8) : La mémoire est le second élément le plus important après le processeur. Chaque programme y est chargé puis exécuté à des adresses bien précises. Cette partie veille à ce que aucun processus n empiète sur une zone non permise ou déjà utilisée. Elle se charge également de sauvegarder des données non utilisées en zone d échange si le système manque de mémoire vive. Ce composant est lié à un composant matériel le gestionnaire de mémoire virtuelle (MMU en anglais) et n est pas toujours présent dans certains systèmes embarqués. Gestion des pilotes : il offre une architecture et une API pour organiser les pilotes de périphériques. Le système de fichier : il sert à organiser les fichiers et dossiers sur les disques de masses. Gestion du réseau : permet de gérer les protocoles réseau et de communications. Le shell (interface utilisateur) : Il correspond à la frontière sur laquelle l utilisateur peut communiquer ses instructions au noyau. Dans les systèmes actuels, on n accèdent plus directement au shell, une interface graphique se charge de 11

15 6.1. RÔLE D UN SYSTÈME D EXPLOITATION 6. DU PROCESSEUR AU NOYAU FIGURE 7 L ordonnanceur d un noyau - Source : wikipédia FIGURE 8 La gestion de la mémoire au sein d un noyau Source : wikipédia faire la liaison. La conception d un programme de gestion des ressources est intimement liée à l architecture et outils proposés par les processeurs. Les puces des premiers ordinateurs ne proposaient pas de systèmes de protection de la mémoire ou des niveaux de privilèges. C est l évolution du matériel qui a permit l apparition de programmes plus stables et qui a tracé la voie au développement de systèmes d exploitation. L évolution la plus importante concerne la gestion de la mémoire vive. 12

16 6.2. ADRESSAGE MÉMOIRE 6. DU PROCESSEUR AU NOYAU 6.2 Adressage mémoire Représentation La mémoire peut être souvent représentée avec par un empilement d octets formant une zone rectangulaire. Chacun de ses octets est adressé depuis une origine correspondant à l une des extrémités (cf Fig. 9). FIGURE 9 Représentation de la mémoire Mode réel Avec les premiers processeurs, on pouvait adresser au maximum 64 Ko de mémoire. On se servait d adresses de 16 bits pour organiser les programmes dans la mémoire : chaque adresse logique (une adresse manipulée par le programmeur et par les registres du processeurs) correspondait à une adresse physique (adresse réelle d une cellule mémoire dans la RAM). Il fallait allouer la bonne zone à chaque variable utilisée en se souciant de ne pas grignoter une partie déjà occupée. Il faut attendre l apparition des premières puces dédiées à la gestion de la mémoire (MMU) pour améliorer la stabilité et la puissance des systèmes Mode protégé et segmentation La segmentation est le premier système de protection mémoire activable dès que le processeur passe en mode protégé. On divise la RAM en différentes cloisons nommées segments auxquelles on attribut un type (code, segment, pile en lecture/écriture/exécution) et un niveau de privilèges. Si on se penche sur la famille x86, on retrouve dès le 386 des registres dédiés à la navigation dans les segments de code, de pile et de données. On se sert d un registre de 16 bits appelé sélecteur que l on multiplie par 16 pour pointer un segment et d un autre registre appelé offset pour se déplacer l intérieur de celui-ci. Ce mécanisme permet une traduction d adresse logique en adresse physique. Les informations de chacun des segments sont stockées dans un descripteur et chaque descripteur est stocké en mémoire dans la table des descripteurs. Les niveaux de privilèges permettent d instaurer une hiérarchie empêchant un segment de faible privilège d accéder à des segments de plus haut privilège. 13

17 6.2. ADRESSAGE MÉMOIRE 6. DU PROCESSEUR AU NOYAU FIGURE 10 Adressage en mode protégé FIGURE 11 Représentation de la mémoire 14

18 6.2. ADRESSAGE MÉMOIRE 6. DU PROCESSEUR AU NOYAU Pagination Elle permet l utilisation d une mémoire virtuelle qui offre les avantages suivants : Utilisation d une zone de swap sur le disque dur lorsque la limite de la Mémoire est atteinte. Associer à chaque processus son propre espace d adressage. Facilite l allocation ou la désallocation. Ce mécanisme de protection s ajoute juste après celui de la segmentation : l adresse obtenue en sortie de l unité de segmentation n est plus une adresse physique mais un adresse linéaire (virtuelle). On navigue alors dans deux espaces mémoires séparés par la MMU, un virtuel et un réel. Chacun de ces espaces est découpé en zones (soit de 4ko ou de 4Mo) appelées page pour l espace virtuel et cadre pour l espace physique. La MMU fait correspondre les pages et les cadres entre eux. FIGURE 12 Représentation de la mémoire paginée Le mécanisme de traduction se base sur des tables de pages, stockées dans un répertoire de page, un peu comme l on stocke des numéros de téléphone dans un répertoire téléphonique. Chaque répertoire peut adresser au maximum 4 Go de RAM. Ces structures sont stockées en mémoire physique. De même, on peut attribuer des privilèges pour gérer la sécurité. FIGURE 13 Mécanisme simplifié de la pagination Il arrive que la translation d adresse échoue et la MMU lève alors une interruption pour signaler un défaut de page. Cela peut se manifester également par une adresse physique sur le zone d échange du disque dur et il faut demander au processeur de recopier cette page dans la RAM si il reste de la place. Dans le cas échéant, une page victime sera choisie pour être à son 15

19 6.3. LANCEMENT D UN SYSTÈME 6. DU PROCESSEUR AU NOYAU tour stockée dans le swap Le mode noyau et le mode utilisateur Chaque tâche exécutée par le processeur possède également des niveaux de privilèges qui sont analysés pour savoir à quelles zones mémoires elle peut accéder. C est à l OS de définir les structures nécessaires à la segmentation et à la pagination pour séparer la RAM en deux zones distinctes : l espace noyau et l espace utilisateurs. Dans l espace noyau, nous allons trouver les codes permettant d écrire sur un disque, de communiquer avec un périphérique, de tuer une tâche, d afficher un pixel à l écran,etc... Ces tâches doivent avoir accès à toute la mémoire pour gérer l ensemble du système. À l inverse, nous ne souhaitons pas que les tâches provenant de l espace utilisateur puissent corrompre une zone mémoire utilisée pour écrire sur un disque ou pour gérer un niveau de tension d un périphérique. Cependant, on peut communiquer d un espace à l autre via les appels systèmes, un mécanisme qui permet, via une interruption de passer d un code utilisateur à un code noyau. FIGURE 14 Vision schématique d un noyau monolithique modulaire - Source : wikipédia 6.3 Lancement d un système Le noyau et le shell ne sont pas les deux seuls composants logiciels nécessaires l utilisation d un système. On peut prendre l exemple d un ordinateur pour comprendre. Le noyau de votre système d exploitation est le plus souvent un fichier stocké sur votre disque dur. Mais c est également le noyau qui permet à votre système de lire et d exécuter un fichier sur un disque dur. On se retrouve devant le problème de l oeuf et de la poule. Il nous faut donc un composant intermédiaire qui charge le noyau en mémoire, l exécute et qui lui passe la main. Sur nos ordinateurs personnels, le démarrage du système suit l ordre suivant : 1. On alimente l ordinateur 2. Un programme POST s exécute (Power On Self Test) et vérifie qu il n y a pas de problème d alimentation électrique. 3. Le BIOS met en place un système minimal d entrées sorties vers les différents périphériques et cherche un secteur de démarrage valide, le charge en mémoire et l exécute. 4. Le segment de démarrage contient un bootloader qui charge et exécute le noyau en mémoire. À une certaine époque, il était nécessaire d insérer une disquette pour démarrer un système. Sur le premier secteur de disque du support se trouvait ce fameux bout de code qui chargeait le système en mémoire à l aide de routines fournis par le BIOS. 16

20 6.4. PRÉSENTATION DE GNU 6. DU PROCESSEUR AU NOYAU Sur des plate-formes embarquées, on retrouve le plus souvent le bootloader ou encore appelé bootstrap. Le terme désigne littéralement un chausse-pied ou l anneau situé en haut des bottes permettant de les chausser plus facilement. L écriture d un chargeur de démarrage est relative au processeur (la première adresse exécutée au démarrage varie selon les puces). Sur les PC x86, on peut citer les plus usités dans le monde de GNU comme Lilo, Grub ou SysLinux. (a) Grub (b) Lilo (c) SysLinux FIGURE 15 Différents chargeurs de démarrage sous GNU/BSD 6.4 Présentation de GNU En 1984, en chercheur en intelligence du laboratoire du MIT, Richard Matthew Stallman (RMS), se lance dans la réalisation d un système d exploitation libre de droits. Son initiative cherche à faire renaître la philosophie des premiers instants de l informatique où le logiciel n était que la cerise sur le gâteau offert par les industriels après l acquisition de leurs machines onéreuses. GNU est un anagramme récursif signifiant "Gnu s Not Unix" pour rappeler qu il est un système très proche de Unix et en même temps un système indépendant de toute pression industrielle de la part de AT&T, société créatrice de UNIX. FIGURE 16 Logo de GNU - Source : wikipédia 17

21 6.5. PRÉSENTATION DE LINUX 6. DU PROCESSEUR AU NOYAU RMS est aussi à l origine de la licence public générale (GPL) qui interdit toute fermeture de code source d un logiciel ou d un dérivé publié sous GPL. Cette notion est également appelée "gauche d auteur" ou "copyleft" en référence au "droit d auteur" ou copyright. En 1990, le devient suffisamment abouti mais il manque une pièce essentielle au puzzle : le noyau. C est à ce moment qu intervient un jeune étudiant finlandais. 6.5 Présentation de Linux En 1991, Linus Torvalds, élève en informatique à l université de Helsinki, travaillait à gérer la commutation des tâches en mode protégé sur son PC compatible Il se met en tête de créer un véritable système d exploitation et un noyau plus performants que ceux qu il étudie en classe (Minix). Le 5 octobre 1991, il publie sur le serveur Usenet dédié à Minix la version de Linux. Convaincu par RMS de publier son code sous la licence GPL, Linus permit au monde entier de disposer de son travail et d y contribuer. Le noyau Linux devient le noyau le plus utilisé avec GNU. FIGURE 17 Tux la mascotte de Linux - Source : wikipédia Depuis sa version 1.2, (la version actuelle en développement est la 2.6.) Linux est un noyau monolithique modulaire, entièrement paramétrable et ouvert sur les standards industriels. Le code est entièrement codé en C (aucune partie en C++). Il a été conçu pour utilisé le compilateur GCC dont il utilise beaucoup de macros non standards. Le noyau ne compilera pas avec un n importe quel compilateur ANSI C. Le minimum nécessaire pour le faire fonctionner est un processeur 32 bits avec ou sans bloc MMU Développement Le développement de Linux est supervisé par une hiérarchie précise au sein de la communauté, le haut de celle - ci étant toujours représenté par Linus Torvalds. Les publications de codes se font au travers des branches de développement qui intègrent les changements majeurs et les nouvelles fonctionnalités. Au bout d un certain temps, si une branche de développement est assez mature (cf Fig. 18), elle devient une base pour la prochaine version stable. Une branche stable du noyau est publiée tous les deux ou trois ans. Les branches peuvent être identifiées par leur numéro de version : Le numéro de branche est pair pour les versions stables. Exemple : 1.0, 2.0, 2.4. Il est impair pour les branches de développement. Exemple : 2.1, 2.5. Les publications mineurs se voient attribuer un ou des numéros supplémentaires. Exemple : ,

22 6.6. UN COUPLE GAGNANT 6. DU PROCESSEUR AU NOYAU FIGURE 18 Cycle de développement - Source : Association Free-Electrons 6.6 Un couple gagnant Les parts de marché de GNU/Linux ne cessent de monter en tant qu OS de station de travail, mais reste encore minoritaire (0,80 % en avril 2010). Cependant, il est de plus en plus utilisé dans le monde de l embarqué (26 % en 2008). Le succès dans le monde des systèmes intelligents peut s expliquer d un point de vue marketing : Le code de GNU et de Linux sont mis à disposition sans frais. Les outils nécessaires à leur mise en place et utilisation sont également libres de droits. Une communauté bénévole et gigantesque, toujours en activité autour d Internet. (Le développement de Fedora 9 est estimé à 10,2 milliards de dollars de $) Les avantages sont avant tout techniques : Linux est certifié POSIX. Linux fonctionne sur plus de 20 architectures différentes. Un grand nombre de librairies et de composants compatibles GNU existent sur la toile avec un code ouvert. La similarité du système avec UNIX est un atout pour les développeurs. Des versions allégées permettent de l utiliser sur des systèmes non dotés de MMU (µclinux) (Un seul processus est lancé sans commutation de contexte). La modularité du noyau permet de l adapter au ressources de la machine. On peut faire tourner un noyau, GNU et un serveur graphique sur des machines avec 8 Mo de mémoire vive et 50 Mo de capacité de disque. Possibilité de support Temps Réel. Existence de distributions prêtes à l emploi suivant l usage : Téléphone, serveur, routeur Linux et la mémoire Les mécanismes de segmentation et de pagination peuvent se retrouver difficile à gérer d une architecture à une autre. Le support de la segmentation sur une architecture RISC est limité, contrairement à la pagination. Ces deux mécanismes offrent des possibilités similaires, Linux ne supporte donc que la segmentation au minimum. Tous les processeurs auront le même adressage logique avec un nombre limité de segments uniquement enregistré dans la table globale des segments. On aura : Les segments du Noyau (Code et Données en Ring 0) Les segments de données utilisateurs (Code et Données en Ring 3) Un TSS par coeur. Le TSS (Task Segment State) est une structure qui permet de sauvegarder le contexte lors des interruptions ou des commutations de tâches Un segment pour une table locale des descripteurs de segments. Cette LDT ne contiendra qu un descripteur nul et est commune à tous les processus 4 Segments pour le code et les données du BIOS (ou chargeur de démarrage). La pagination est implémentée avec un répertoire principale contenant les autres répertoires de pages. 19

23 6.8. NAVIGUER DANS LES SOURCES DU NOYAU 6. DU PROCESSEUR AU NOYAU FIGURE 19 Segmentation sous Linux FIGURE 20 Pagination sous Linux 6.8 Naviguer dans les sources du Noyau Les différents répertoires du noyau sont répertoriés dans le tableau de la figure 21. Le répertoire contenant la documentation se révèle très important dans le cadre de l embarqué puisqu il n existe aucune documentation spécialisée pour une autre architecture que x86. L ensemble des procédures pour initialiser les ports SPI ou I 2 C restent des spécificités du monde de l embarqué et les seules informations se trouvent le dossier source du noyau. En dehors du dossier /arch, relatif à l architecture du CPU, le reste du code doit être portable. Cette compatibilité se base sur des macros et des fonctions qui crée une interface pour les parties propres au processeur : Problème d endianness Accès aux ports E/S en mémoire L API pour le DMA L API interne du noyau est en constante évolution et il n est pas rare qu un pilote nécessite une réécriture après la publication d une nouvelle version non majeure. La partie suivante parle de ce point plus en détail. 20

24 6.8. NAVIGUER DANS LES SOURCES DU NOYAU 6. DU PROCESSEUR AU NOYAU arch/ Code dépendant de l architecture COPYING Conditions de copie de Linux (GNU GPL) CREDITS Contributeurs principaux de Linux crypto/ Bibliothèques de cryptographie Documentation/ Documentation du noyau. drivers/ Pilotes de périphériques (drivers/usb/, etc.) fs/ Systèmes de fichier (fs/ext3/, etc.) include/ Entêtes du noyau include/asm<arch> Entêtes dépendant de l architecture include/linux Entêtes du coeur du noyau Linux init/ Initialisation de Linux (contient main.c) ipc/ Code utilisé pour la communication entre processus kernel/ Coeur du noyau Linux lib/ Bibliothèques diverses (zlib, crc32...) MAINTAINERS Responsables de parties du noyau Makefile Makefile principal (définit arch et version) mm/ Code de la gestion mémoire net/ Support réseau (protocole uniquement) README Introduction et instructions de compilation REPORTINGBUGS Instructions pour le rapport de bogues scripts/ Scripts utilisés en interne ou en externe security/ Implémentations du modèle de sécurité (selinux...) sound/ Support du son et pilotes usr/ Utilitaires FIGURE 21 Les différents dossiers du noyau et le type de code qu ils contiennent FIGURE 22 Taille des différents répertoires - Source : Association Free Electrons 21

25 6.9. LES PILOTES SOUS LINUX DU PROCESSEUR AU NOYAU 6.9 Les pilotes sous Linux 2.6 Les pilotes sont le plus souvent écrit sous forme de modules. Ce sont des petits bout de code que l on peut charger dynamiquement pendant l exécution du système ou compiler statiquement dans le noyau. Pour chacun de ses modules, il faut définir une licence pour son code : GPL, Dual BSD/GPL, DUAL MPL/GPL ou Propriétaire. Cette licence va déterminer le comportement de son code avec les autre modules disponibles. Si un module est propriétaire, il n aura pas le droit d interagir avec un autre module. C est pourquoi la plupart des modules et des pilotes sont publiés sous licence libre ou open source. La gestion des périphériques a grandement évoluée depuis les premières versions. Cette politique oblige souvent le code à être réécrit, mais du fait de l ouverture du code, il est assez aisé de faire la transition. Si l on prends l exemple de l API USB, elle a changé trois fois et est devenue l implémentation la plus rapide du protocole. Sous Windows XP, elle a également changé trois fois, mais du fait de la fermeture du code, il a été nécessaire de garder une rétro compatibilité pour les pilotes binaires. Ces opérations sont un coût en développement, sécurité, stabilité et performance. On peut également écrire un pilote en espace utilisateur. Cela présente l avantage de pouvoir utiliser n importe quel langage et assure de ne pas créer d erreur critique dans la mémoire noyau. Il n est pas rare de voir des système de gestions de périphériques utiliser les deux espaces : une partie noyau et une partie utilisateur qui communiquent entre eux (On peut citer le fameux serveur graphique X Window) Il existe 3 types de pilotes différents : Pilotes de caractères : communication avec le matériel via un flux de caractère. (Clavier, souris, port série, consoles) Pilotes de blocs : communication avec le matériel via des blocs de données. (Disques durs, système de fichiers, etc...) Pilotes Réseaux : communication avec le matériel via un protocole de communication Des pilotes utilisant le modèle unifié. Chacun de ses périphériques se trouve en espace noyau. Il est courant de créer un lien avec l espace utilisateur ( au moyen des dossier /proc et /sys). Il apparaît comme un fichier dans l arborescence sur lequel les opérations d écriture et de lecture se font comme avec n importe qu elle autre fichier. Ces actions sont définies dans le module à l aide d une structure et de pointeurs de fonctions Le framebuffer Ce composant permet de dialoguer directement avec la mémoire vidéo. Il permet de s affranchir de système de fenêtrage plus lourd comme le serveur X. C est un atout majeur dans le monde de l embarqué puisque l on peut intégrer un véritable système graphique avec une consommation de ressources amoindrie. C est ce composant que l on peut retrouver au démarrage de la plupart des "Live CD" GNU/Linux. FIGURE 23 Démarrage de knoppix avec framebuffer - Source : Wikipédia [6] 22

26 7. RÉALISATION 7 Réalisation Cette partie présente les différents choix techniques et les outils qui ont été nécessaires à la réalisation du projet. 7.1 Choix de la plateforme GNU/Linux Carte retenue La solution retenue était une carte proposée conjointement par l association française et l entreprise ARMADEUS. Les raisons de ce choix sont les suivantes : Un support gratuit en français par mail ou sur IRC [7] en contact direct avec les développeurs. Une base de données techniques complête basée sur le moteur de Wikipédia [8]. Schémas des cartes disponibles en open source. Une utilisation à 100% d outils de développement libres. Un système avec MMU et FPGA pour une stabilitée accrue et évolution facilitée vers de nouveaux projets. Un prix inférieur par rapport aux cartes de mêmes caractéristiques. Ces points constituent un réel avantage, car il n existe actuellement aucun ouvrage traitant directement de la réalisation de pilotes ou de l implémentation de GNU/Linux sur une carte embarquée. Les seuls ouvrages existants concernent les plateformes x86 des PC actuels. La seule manière de se documenter restent les sources de Linux et les codes sources disponibles sur internet. Association et compagnie Armadeus L association ARMADEUS Project est une organisation à but non lucrative proposant des solutions embarquées basées sur des logiciels libres conçues via l entreprise ARMADEUS Systems. Elle propose des kits de développement à bats coûts comprenant : Une carte "processeur" comprenant : Un processeur de chez Freescale. Une mémoire volatile. Une mémoire non volatile. Un FPGA de chez Xilinx. Une carte de développement comprenant divers périphériques connectés aux blocs fonctionnels du processeur. FIGURE 24 Logo de l entreprise Armadeus 23

27 7.1. CHOIX DE LA PLATEFORME GNU/LINUX 7. RÉALISATION Le prix de la carte processeur varie en fonction de la quantité de mémoire et la puissance du processeur. Celui de la carte de développement change en suivant le nombre de périphériques de communication déjà soudés et configurés. Les cartes choisies furent la carte processeur apf27 et la carte de développement APF27DevFull. Les caractéristiques sont présentées à la figure 26. (a) La carte processeur APF27 (b) La carte processeur APF27DevFull (c) Les deux cartes assemblées FIGURE 25 Les cartes de développement de l APF27 et APF27Dev 24

28 7.1. CHOIX DE LA PLATEFORME GNU/LINUX 7. RÉALISATION Carte processeur APF27 [9] Processeur Freescale i.mx27 400MHz) FPGA Xilinx Sparant 3A XC3S200A RAM Mobile DDR, 2 64 MB FLASH Mobile NAND, 256 MB Module Processeur [10] 6 x RS232 2 x I2C 3 x SPI 2 x SSI (High speed synchronous serial port) 1 x USB OTG Hi-Speed host 1 x USB Host (Hi-Speed) 1 x USB Host (Full-Speed) 1 x 10/100Mbits Ethernet MAC 2 x SD/MMC 1 x RTC (no battery) 1 x PWM 16bits resolution 6 x Timer 32 bits with input capture/output compare 1 x adjustable Watchdog 1 x LCD controller STN / TFT interface resolution up to 800 x 600 px, 18 bits 1 x MPEG/H.264 codec 1 x CSI (CMOS sensor interface) Up to 107 total I/O pins multiplexed with most dedicated functions for pin efficiency (GPIO) Carte de développement APF27Dev [10] One high speed and one full speed USB 2.0 port Touchscreen controller One microsd Audio in/stereo audio out controller (TSC2101 codec) 2 user leds : one connected to the i.mx27 microprocessor and the other to the FPGA 2 user switches : one connected to the i.mx27 microprocessor and the other to the FPGA CAN(1) controller ADC (7 channels, 10 bits) type MAX1027(1) DAC (2 channels, 10 bits) type MAX5821(1) RTC with backup battery(1) HDMI/DVI controller.(1) For DVI usage, an additional HDMI/DVI cable is required Reset switch FIGURE 26 Caractéristiques de l APF27 et APF27Dev chez T & S - Le nombre de I/O est relatif au nombre de module activés. 25

29 7.2. PRÉSENTATION DE L ARCHITECTURE ARM (32 BITS) 7. RÉALISATION 7.2 Présentation de l architecture ARM (32 bits) ARM est l abbréviation de Advanced Risc Machine. Cette architecture a été développée à l origine pour un ordinateur de la société ACORN puis est devenue une offre de coeur à part entière. La spécificité de l entreprise ARM Ltd est de ne vendre aucune puce physique mais uniquement les IPs aux différents fondeurs ou développeurs. Les coeurs ARM ont inondé le marché, notamment dans le domaine de la téléphonie mobile qui utilise de plus en plus des systèmes d exploitations semblables à ceux de nos ordinateurs. Nous pouvons citer les dérivés de Linux avec Maemo, Symbian de Nokia ou Android sur le Nexus One de Google/HTC ou dans un autre registre l iphone OS de la marque à la pomme. L IP la plus connue est l ARM7TDI comportant un niveau de pipeline sur 3 étages et une possibilité de basculé le jeu d instructions de 32 à 16 bits (Mode THUMB), mode utilse pour une économie de mémoire dans le monde de l embarqué. Son successeur, le ARM9, passe sur 5 niveaux de pipeline. ARM Ltd. propose les blocs logiques suivants dans ses processeurs : MMU : disponible sur les ARM710 et ARM9. DSP FPU Jazelle : une machine virtuelle cablée dans le processeur La majorité des fondeurs proposent des coeurs ARM aujourd hui (Fresscale,Qualcomm,Marvell, Cypress, NXP, STMicroelectronics, TI, Samsung, Toshiba..). 7.3 Composants logiciels Tous les composants cités dans cette partie sont publiés sous une licence libre de type GPLv2 ou BSD Sur l ordinateur Pour créer des binaires exécutables ARM sans utiliser la plateforme (compiler sur la carte prendrait énormément de temps), il faut utiliser une chaîne de compilation croisée. La démarche à suivre pour la construire est la suivante : 1. Récupérer les entêtes du noyau. 2. Récupérer, configurer et compiler les outils pour la manipulation des binaires de l architecture embarquée (assembleur, éditeur de lien, inspecteur de code et archiveur de code au minimum) et les installer sur la machine. 3. Installer une première version du compilateur pour "cross compiler" les librairies standards (uclibc). 4. Reconfigurer et recompiler une version de compilateur avec les librairies créées. 5. Récupérer les sources du noyau, les configurer et les recompiler. 6. Compiler chaque programme ou librairies avec ses dépendances et les intégrer au futur système de fichiers de la carte. Ces étapes peuvent se réveler complexe : un simple programme peut recquérir 10 dépendances qui dépendent elles mêmes d autres codes... Heureusement, il existe des outils spécialisés permettant la géneration de la chaîne de compilation croisée, mais aussi de modifier la plupart des composants du système final. Nous pouvons cité LTIB, OpenEmbedded, PTXdist,Openwrt ou Buildroot. C est ce dernier qu a choisi ARMADEUS pour travailler sur ses cartes et elle n est pas la seule : THALES, ATMEL, GUMSTIX s en servent depuis de nombreuses années, bien avant la sortie d une version stable. Avantages Buildroot OpenEmbedded Openwrt Évolutif,puissant, configuration graphique,géneraliste Inconvénients Gourmand en ressources, pas de paquets Géneraliste Lourd, configuration avec des fichiers textes Création de paquets Lourd, orienté IAD 26

30 7.3. COMPOSANTS LOGICIELS 7. RÉALISATION Buildroot À l origine, cet outil n était utilisé qu en interne par les développeur de la librairie uclibc. Depuis 2009, il est devenu un outil à part entière. Sa relative simplicité d utilisation vient du fait qu il utilise des outils bien connus de la part de la communauté GNU et des développeurs du noyau Linux. FIGURE 27 Interface buildroot sous ncurses. Il est constitué d un ensemble de Makefile et de script shell qui téléchargent, configurent, compilent et intègrent automatiquement les programmes souhaités. Il est assez facile d intégrer ses propres patchs ou librairies en ajoutant ses fichiers de configuration type Makefile dans la gestion des dépendances et de la construction. Une fois la phase de compilation terminée, on obtient 3 fichiers : 1. Un noyau Linux bootable 2. Une image du système de fichier jffs2 3. Un binaire U-Boot Sur la carte Les composants utilisés sur la plateforme sont répertoriés dans le tableau suivant : Bootloader Noyau Librarie Shell Compilateur Système de fichier U-Boot Linux uclibc Busybox GCC jffs2 FIGURE 28 Composants logiciels utilisés sur la carte. U-Boot : Ce bootloader possède une pile TCP/IP et une couche permettant de flasher la mémoire vive. Passer par le réseau ethernet pour charger les composants représente un gain de temps non négligeable. Linux : Sa configuration passe par de nombreux patchs mais des modules sont déja présents pour chaque plate-forme. 27

31 7.4. INTERFACES AVEC LA CARTE 7. RÉALISATION uclibc : C est une librairie statique fournit pour l utilisateur du système, lui permettant d utiliser simplement les appels systèmes définis dans le noyau. Elle présente l avantage d être réduite par rapport à sa grande soeur la glibc et suffisante pour les sytèmes embarqués. glibc uclibc "hello world" 475k 25k busybox 843k 311k FIGURE 29 Comparaison de la taille de la glibc et la uclibc en compilation statique Busybox : Ce programme réimplémente toutes les commandes du système GNU dans un seul exécutable pour économiser de la RAM. Il est très répendu dans les produits grands publics (Freebox par exemple). GCC : (Gnu Compiler Collection ) La collection officielle de compilateur GNU. Elle supporte un grand nombre de langages pour une multitude de plate-formes (dont ARM). jffs2 : (Journaling Flash File System) Un système de fichier journalisé qui répartie l écriture sur l ensemble des cellules de la mémoire flash pour économiser le matériel. Une compression est réalisée pour stocker autant de données que possible. NAND flash address range 0x x0009FFFF (640KB, incluant la NAND SPL et 384KB d économie de mémoire pour les bloc défectueux) 0x000A0000-0x000FFFFF (384KB) 0x x0017FFFF (512KB) 0x x0067FFFF (5MB) 0x Limite de la FLASH Type U-Boot Variables d environnement U-BOOT FPGA bitfile Image du noyau Linux Système de fichiers racine FIGURE 30 Répartition des différents composants au sein de la RAM de l APF Interfaces avec la carte L entrée et la sortie standards de la carte correspondent à la liaison série (ce qui corresponds respectivement au clavier et à l écran sur un ordinateur). La carte émule un terminal à la manière d un modem auquel on peut envoyer des ordres via un cable Null-Modem (Rx Tx croisé) avec une configuration bauds 8N1. Le transfert de fichiers se fait via un protocole dérivé de FTP depuis le PC jusqu en RAM de la carte qui copie les fichiers de manière résidente sur la mémoire flash. La communication depuis la machine hôte se fera depuis un logiciel de communication vers des modems. Sous Linux, les plus connus restent Minicom, Kermit et GtkTerm. 7.5 Écran AMOLED Tactile L écran utilisé est un écran P0430WQLB-T de la société Densitron avec une résolution en RGB de 480 x 272. Il possède en plus une interface tactile résistive déjà posée sur l écran : 28

32 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION FIGURE 31 Liens entre les différentes mémoires FIGURE 32 Utilisation de la carte sur le réseau FIGURE 33 Écran P0430WQLB-T de la société Densitron 29

33 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION L avantage par rapport aux technologies à matrices actives est un contraste de couleur beaucoup plus nette et, dans la plupart des cas, une puissance consommée beaucoup plus faible. Les écrans AMOLED possèdent comme leurs cousins alphanumériques, une interface de communication standardisée avec laquelle. La puce utilisée est un HX5116. FIGURE 34 Interface de la puce HX Interface RGB Parallèle Cette interface est héritée des premiers moniteurs VGA que les générations suivantes n ont pas fait disparaître. Ces appareils utilisaient un canon à électrons qui balayait une grille tricolore afin de faire apparaitre les pixels. La projection partait du bord haut gauche de l écran et descendait ligne par ligne avant de retourner à son point de départ. On se servait de 3 signaux pour gérer ces évenènements dans le temps et trois signaux analogiques codant la valeur du pixel affiché. FIGURE 35 Les premiers moniteurs RGB Dans notre écran, on garde le même principe en ajoutant les éléments communs à la majorité des composants numériques : une horloge, une entrèe de validation et un bus de données parrallèle de 24 bits (il est possible d utiliser un bus série). 30

34 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION FIGURE 36 Interface parallèle 480x212 RGB Le contrôleur LCD du microprocesseur ne peut contrôler que des écrans dont la résolution RGB est inférieure ou égale à 18 bits. Nous relierons les 2 bits de poids faible de chaque couleur à la masse, nous laissant encore largement assez de couleurs pour notre projet Interface SPI "3-wire" Cette interface permet la configuration de l écran et lui spécifie l interface à utiliser. La particularité de cette interface est qu elle n utilise qu un seul fil, contrairement à la carte embarquée qui utilise un bus de deux fils. Aucun problème de connexion ne se pose si l on ne souhaite communiquer que dans un seul sens. On a trois fils : une horloge, un bus de donnés et une entrée d activation. L initialisation de l écran en mode 480 x 272 en mode RGB requiert une trame spécifique à la mise sous tension de l écran. Si l on souhaite lire des données présentes en mémoire du contrôleur, il faut user d une petite astuce à la conception et à la programmation sur le seul bus de communication. Pour permettre au contrôleur de l écran de prendre la main sur le bus, il faut forcer l état de la pin MOSI à l état haut en envoyant constamment 0xFF pendant la procédure de réception Écriture du pilote Choix de la connexion sur la carte Il faut un bus SPI libre sur la carte pour communiquer avec l écran. D après la documentation, la carte possède trois bus SPI. Nous souhaitions préservez les ports USB et nous avons sacrifié l un des deux bus gérant la connexion à une carte MMC en se basant sur le bus 3. Les informations nécessaires pour configurer les différents éléments se trouvent dans le dossier documentation du noyau. Dans notre cas, c est le fichier Documentation/spi/spi-summary qui fut d une grande aide. La procédure est la suivante : 1. Déclarer les ports SPI présents sur la carte (cette partie était déjà présente dans les sources fournit par ARMADEUS). 2. Déclarer les périphériques utilisés sur les ports. 3. Indiquer le pilote utiliser. 31

35 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION (a) Format des données verticale (b) Format des données horizontales (c) Forme de l horloge et des donnés sur le bus FIGURE 37 Chronogrammes des différents signaux de l écran 32

36 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION FIGURE 38 SPI 3 wire (a) Connexion des bus MOSI et MISO ensemble (b) Émission de de 0xFF sur le bus pendant l envoie FIGURE 39 Connexion d un bus SPI 3-wire vers un bus half duplex Déclaration du périphérique On déclare le périphérique avec le bout de code suivant : 1 2 static struct spi_board_info spi_board_info[] initdata = { 3 /*... */ 4 5 #ifdef CONFIG_LCD_TS_MODULE 6 { 7.modalias = " l c d _ t s ", 8.controller_data = &lcd_ts_hw, 9.max_speed_hz = , /* 8MHz */ 10.bus_num = 2, /* SPI3 */ 11.chip_select = 0, 33

37 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION 12.platform_data = &apf27_lcd_ts_config, 13 }, 14 #endif /* LCD T&S */ 15 }; /*... */ 18 #ifdef CONFIG_LCD_TS_MODULE #define NCSPIN (GPIO_PORTE 21) /* Adresse des PINS utilisees. On se sert des headers fournit par Motorola */ 21 #define RESETPIN (GPIO_PORTE 19) static int lcd_ts_pins [] ={ /* Pins en sortie */ 26 (NCSPIN GPIO_GPIO GPIO_OUT), 27 (RESETPIN GPIO_GPIO GPIO_OUT), }; static int lcd_ts_init(struct spi_device *spi){ gpio_set_value(resetpin,1); /* Les fonctions gpio_set_value et mxc_gpio_setup_multiple_pins sont relatif a la pateforme MXC */ 34 gpio_set_value(ncspin,1); 35 return mxc_gpio_setup_multiple_pins(lcd_ts_pins, ARRAY_SIZE(lcd_ts_pins), "LCD_TS" ); } static int lcd_ts_exit(struct spi_device *spi){ gpio_set_value(ncspin,1); 42 gpio_set_value(resetpin,0); 43 mxc_gpio_release_multiple_pins(lcd_ts_pins, ARRAY_SIZE(lcd_ts_pins)); 44 return 0; } 49 static int lcd_ts_reset (int value){ 50 gpio_set_value(resetpin,value); 51 return 0; } 55 static void lcd_ts_cs(u32 command) 56 { 57 if (command == SPI_CS_DEASSERT) 58 gpio_set_value(ncspin, 1); 59 else 60 gpio_set_value(ncspin, 0); 61 } static struct spi_imx_chip lcd_ts_hw = { 64.cs_control = lcd_ts_cs, 65 }; static struct lcd_ts apf27_lcd_ts_config = { init = lcd_ts_init, 70.exit = lcd_ts_exit, 71.reset = lcd_ts_reset, 72.ncspin = (int) NCSPIN, 73.resetpin = (int) RESETPIN, }; 76 #endif Les arguments sont les suivants : modalias : le nom du module correspondant au pilote. controller_data : un pointeur vers une structure de contrôl propre à la plateforme (Chip Select). 34

38 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION max_speed_hz : vitesse maximale du bus. bus_num : bus de communication du processeur (SPI3). chip_select : présence d une pin CS. platform_data : un pointeur sur une structure contenant les adresses des fonctions d initialisation du périphérique esclave. Ces fonctions d initialisation se trouvent plus bas dans le code. Elles sont écrites suivants les procédures de démarrage de l écran trouvées dans la datasheet : FIGURE 40 Séquence d allumage de l écran Écriture du pilote Cette section de code se situe au niveau de la communication SPI à proprement parlé, il n y a plus de configuration matériel. Le pilote prend la forme d un module que l on peut appeler et qui est relié au bon périphérique SPI via la structure vue dans la partie précédente. On reprends les informations de la plate-forme via une structure : 1 2 struct lcd_ts { 35

39 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION 3 struct display_device * display_dev; 4 struct spi_device *spi ;/* SPI BUS */ 5 int (*init)(struct spi_device *spi); 6 int (*exit)(struct spi_device *spi); 7 int (*reset)(int value); 8 int ncspin; 9 int resetpin; 10 }; Puis on définit un driver SPI via une nouvelle structure : 1 static struct spi_driver lcd_ts_driver = { 2.probe = lcd_ts_probe, 3.remove = lcd_ts_remove, 4.shutdown = lcd_ts_shutdown, 5.suspend = lcd_ts_suspend, 6.resume = lcd_ts_resume, 7.driver = { 8.name = DRIVER_NAME, 9.owner = THIS_MODULE, 10 }, 11 }; Chacun des éléments est un pointeur sur une fonction de configuration du périphérique. Toutes les références doivent être définies. Les fonctions shutdown, suspend et resume ne seront pas utilisées et ne renverront que 0. La fonction probe correspond à l initialisation du périphérique sur le bus. 1 static int lcd_ts_probe (struct spi_device *spi_device){ 2 3 printk("lcd SPI Bus R e g i s t r a t i o n \ n "); 4 struct lcd_ts *lcd_data; 5 int err = -EINVAL; 6 lcd_data = (struct lcd_ts *)(spi_device->dev.platform_data); 7 lcd_data->init(spi_device); /* Initialise GPIO */ 8 9 lcd_data->spi = spi_device; lcd_data->spi->mode = SPI_MODE_0; 12 lcd_data->spi->bits_per_word = 8; 13 lcd_data->spi->dev.power.power_state = PMSG_ON; 14 err = spi_setup(lcd_data->spi); 15 printk(" Renvoie du s e t u p %i \ n ",err); lcd_ts_init_screen(lcd_data); 18 return 0; } Cette fonction appelle la fonction lcd_ts_init_screen qui va transmettre la trame de configuration de l écran conformément à la datasheet (cf Fig.41) : 1 static int lcd_ts_init_screen( struct lcd_ts * lcd_ts_dev){ 2 3 /* gpio_set_value(lcd_ts_dev->resetpin,1); */ 4 5 /* initial procedure for 24-bit parallel RGB (DE) */ 6 lcd_ts_write (lcd_ts_dev, 0x04, 0x23); /*set display mode 24-bit parallel RGB (DE)*/ 7 lcd_ts_write (lcd_ts_dev, 0x05, 0x82); /*set display mode*/ 8 lcd_ts_write (lcd_ts_dev, 0x07, 0x0F); /*set driver capability*/ 9 lcd_ts_write (lcd_ts_dev, 0x34, 0x18); /*set display timing*/ 10 lcd_ts_write (lcd_ts_dev, 0x35, 0x28); /*set display timing*/ 11 lcd_ts_write (lcd_ts_dev, 0x36, 0x16); /*set display timing*/ 12 lcd_ts_write (lcd_ts_dev, 0x37, 0x01); /*set display timing*/ 13 lcd_ts_write (lcd_ts_dev, 0x02, 0x02); /*OTP On*/ 14 lcd_ts_write (lcd_ts_dev, 0x0A, 0x79); /*VGHVGL=+/-6V*/ 15 lcd_ts_write (lcd_ts_dev, 0x09, 0x20); /*VGAM1OUT=4.85V*/ 16 lcd_ts_write (lcd_ts_dev, 0x10, 0x6A); /*set R slop*/ 17 lcd_ts_write (lcd_ts_dev, 0x11, 0x6A); /*set G slop*/ 18 lcd_ts_write (lcd_ts_dev, 0x12, 0x68); /*set B slop*/ 19 lcd_ts_write (lcd_ts_dev, 0x13, 0x00); /*set R_0*/ 20 lcd_ts_write (lcd_ts_dev, 0x14, 0x04); /*set R_10*/ 36

40 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION FIGURE 41 Initialisation de l écran dans la documentation 37

41 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION 21 lcd_ts_write (lcd_ts_dev, 0x15, 0x05); /*set R_36*/ 22 lcd_ts_write (lcd_ts_dev, 0x16, 0x05); /*set R_80*/ 23 lcd_ts_write (lcd_ts_dev, 0x17, 0x04); /*set R_124*/ 24 lcd_ts_write (lcd_ts_dev, 0x18, 0x03); /*set R_168*/ 25 lcd_ts_write (lcd_ts_dev, 0x19, 0x02); /*set R_212*/ 26 lcd_ts_write (lcd_ts_dev, 0x1A, 0x02); /*set R_255*/ 27 lcd_ts_write (lcd_ts_dev, 0x1B, 0x00); /*set G_0*/ 28 lcd_ts_write (lcd_ts_dev, 0x1C, 0x06); /*set G_10*/ 29 lcd_ts_write (lcd_ts_dev, 0x1D, 0x05); /*set G_36*/ 30 lcd_ts_write (lcd_ts_dev, 0x1E, 0x06); /*set G_80*/ 31 lcd_ts_write (lcd_ts_dev, 0x1F, 0x06); /*set G_124*/ 32 lcd_ts_write (lcd_ts_dev, 0x20, 0x05); /*set G_168*/ 33 lcd_ts_write (lcd_ts_dev, 0x21, 0x05); /*set G_212*/ 34 lcd_ts_write (lcd_ts_dev, 0x22, 0x07); /*set G_255*/ 35 lcd_ts_write (lcd_ts_dev, 0x23, 0x00); /*set G_0*/ 36 lcd_ts_write (lcd_ts_dev, 0x24, 0x07); /*set B_10*/ 37 lcd_ts_write (lcd_ts_dev, 0x25, 0x06); /*set B_36*/ 38 lcd_ts_write (lcd_ts_dev, 0x26, 0x07); /*set B_80*/ 39 lcd_ts_write (lcd_ts_dev, 0x27, 0x07); /*set B_124*/ 40 lcd_ts_write (lcd_ts_dev, 0x28, 0x06); /*set B_168*/ 41 lcd_ts_write (lcd_ts_dev, 0x29, 0x04); /*set B_212*/ 42 lcd_ts_write (lcd_ts_dev, 0x2A, 0x07); /*set B_255*/ 43 lcd_ts_write (lcd_ts_dev, 0x06, 0x03); /*set display on*/ /* gpio_set_value(lcd_ts_dev->resetpin,1);*/ 46 } Une fois la communication terminée, il faut terminer libérer les ressources. C est le but de la fonction resume : 1 static int lcd_ts_remove(struct spi_device *spi_device){ 2 3 struct lcd_ts * lcd_data ; 4 lcd_data = (struct lcd_ts * )(spi_device->dev.platform_data); 5 6 lcd_data->exit(spi_device); /* Free GPIO */ 7 /* Init Sequence */ 8 lcd_data->reset(0); 9 10 return 0; 11 } Nous devons ouvrir notre module à l extérieur et proposer des fonctions d initialisation et de désallocation du pilote dans le système. 1 static int init lcd_ts_init(void) 2 { 3 printk(" Loading LCD D r i v e r module \ n "); 4 int i; 5 i = spi_register_driver(&lcd_ts_driver); 6 printk(" Renvoie : %i \ n ",i); 7 return i; 8 9 } static void exit lcd_ts_exit(void) 12 { 13 printk(" Unloading LCD D r i v e r module \ n "); 14 spi_unregister_driver(&lcd_ts_driver); } module_init(lcd_ts_init); 20 module_exit(lcd_ts_exit); MODULE_AUTHOR("HEINRICH Yannick free. f r >"); 23 MODULE_DESCRIPTION("HX5116 AMOLED D r i v e r "); 24 MODULE_LICENSE("GPL"); Toutes les fonctions sont déclarées statiques de manière à cloisonner la compilation et l édition de liens aux références de ce fichier. Le pilote devra être lancé manuellement dès l identification sur le shell. On pourra par la suite rendre automatiquement le lancement du module. La commande pour lancer le module sera : modprobe lcd_ts. 38

42 7.5. ÉCRAN AMOLED TACTILE 7. RÉALISATION Programme Mandel sous SDL La SDL est une librarie libre très utilisée pour créer des jeux vidéos 2D. Son aptitude à dialoguer directement avec le framebuffer linux la rende très rapide. Le programme Mandel affiche une réprésentation de l ensemble de Mandelbrot dans le plan d Argand-Gauss. Son programme est détaillé dans les annexes. FIGURE 42 La fractale de Mandelbrot sur PC avec la librarie SDL Alimentation L écran AMOLED requiert un grand nombre de condensateurs et une alimentation symétrique proche de plus et moins 5V. Il existe des circuits dédiés à l alimentation de ces écrans, basés la plupart du temps sur des pompes de charges, courantes dans l alimentation de petite puissance. Notre choix s est porté sur un contrôleur de ON-Semiconductors : le NCP5810D. Il permet d obtenir une tension symétrique à partir d une tension au maximum de 7 V et peut fournir jusqu à 1 W de puissance. La seule complication est liée à l unique package proposé qui se révèle très difficile à manipuler et à souder. Il est également prévu de pouvoir se connecter à une alimentation extérieure. 39

43 7.6. CONCEPTION DE LA CARTE 7. RÉALISATION FIGURE 43 Présentation du NCP Conception de la carte La conception de la carte s est faite sous deux logiciels différents : une première version fut réalisée sur le logiciel Eagle racheté depuis peu par Farnell (anciennement CADSOFT) et la version finale de la carte fut réalisée sous le logiciel libre Kicad. Ce dernier présentait l avantage de ne pas avoir de fonctionnalité réduite et la licence d utilisation qui, contrairement à Eagle, permettait de concevoir un produit à but commercial Contraintes de routage La carte a été commandée auprès de la société PCB-Pool qui imposait les contraintes de conceptions suivantes en double face 1 : Pad/Via Restring 0.2mm Via/Drill Restring 0.15mm (taille de pastille moins le diamètre de perçage), au moins taille de bande de cuivre/taille entrefer Vernis épargne 0.075mm (taille de pastille sur couche soudée moins taille de pastille sur cs/ss) Ouvertures (antipads) Multicouches 0.35mm (taille de pastille sur couche interne négative moins perçage)

44 7.6. CONCEPTION DE LA CARTE 7. RÉALISATION (a) Logo de eagle (b) Logo de Kicad FIGURE 44 Les deux logiciels de CAO utilisés Diamètre minimal des trous : Diamètre de foret = 0.2 mm (8mil) Schéma Le schématique de la carte n as pas changé entre les deux versions (cf Fig Routage La carte est destinée à se poser au dessus de la carte de développement à l aide d entretoises. La conception à pris en compte l emplacement des différents connecteurs sur la carte mère. La première version de la carte a été réalisée sous eagle. Cette version n as pas été conservée suite à un changement de disposition sur la carte GNU/Linux. La seconde version fut réalisée sous Kicad Soudure Le choix de la soudure s est dirigé vers les fours à refusion du fait de la petite taille des composants utilisés, notamment le NCP5810 et le connecteur HIROSE pour l écran AMOLED.Le projet arrivant à son terme,je n ai pas pu terminer les vérifications et les soudures de la carte, au profit de la partie logicielle qui est totalement achevée. 41

45 7.6. CONCEPTION DE LA CARTE 7. RÉALISATION FIGURE 45 Schématique de la carte 42

46 7.6. CONCEPTION DE LA CARTE 7. RÉALISATION FIGURE 46 Première version de la carte 43

47 7.6. CONCEPTION DE LA CARTE 7. RÉALISATION (a) 2D (b) 3D FIGURE 47 Seconde version de la carte 44

Formation au développement de systèmes Linux embarqué Session de 5 jours

Formation au développement de systèmes Linux embarqué Session de 5 jours Formation au développement de systèmes Linux embarqué Session de 5 jours Titre Aperçu Supports Durée Formateur Langue Public ciblé Pré-requis Formation au développement de systèmes Linux embarqué Chaînes

Plus en détail

Etude et mise en oeuvre de PREEMPT-RT et Xenomai sur cible DSP Blackfin BF537

Etude et mise en oeuvre de PREEMPT-RT et Xenomai sur cible DSP Blackfin BF537 ENSEIRB-MATMECA Rapport de projet avancé 3 ème année électronique Etude et mise en oeuvre de PREEMPT-RT et Xenomai sur cible DSP Blackfin BF537 Etudiants : Alexandre Braconnier Axel Chevalier Jean-Marc

Plus en détail

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

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille PRESENTATION RESSOURCES Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille 1) Introduction, Objectifs et Intentions Le BTS SN (Systèmes Numériques) intègre la formation

Plus en détail

À qui s adresse ce livre?... 3 Structure de l ouvrage... 4 Précisions concernant cette deuxième édition... 4

À qui s adresse ce livre?... 3 Structure de l ouvrage... 4 Précisions concernant cette deuxième édition... 4 Table des matières Remerciements.............................................. V Préface....................................................... 1 Avant-propos................................................

Plus en détail

Architecture logicielle des ordinateurs

Architecture logicielle des ordinateurs Architecture logicielle des ordinateurs Yannick Prié UFR Informatique Université Claude Bernard Lyon 1 des ordinateurs Objectifs du cours Notions générales sur le fonctionnement matériel (un peu) et logiciel

Plus en détail

PROPOSITION D UNE FORMATION CONTINUE POUR LES PERSONNELS DES ETABLISSEMENTS D ENSEIGNEMENT SUPERIEUR

PROPOSITION D UNE FORMATION CONTINUE POUR LES PERSONNELS DES ETABLISSEMENTS D ENSEIGNEMENT SUPERIEUR PROPOSITION D UNE FORMATION CONTINUE POUR LES PERSONNELS DES ETABLISSEMENTS D ENSEIGNEMENT SUPERIEUR Mise en œuvre rapide de chaînes d acquisition / transmission du signal à l aide d un système «on chip»

Plus en détail

LE BIOS : QU EST-CE QUE C EST?

LE BIOS : QU EST-CE QUE C EST? LE BIOS : QU EST-CE QUE C EST? Mewtow 29 octobre 2015 Table des matières 1 Introduction 5 2 Rappels sur le mode réel des processeurs x86 7 2.1 Mémoire en mode réel............................... 7 2.1.1

Plus en détail

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges c Copyleft 2006, ELSE Team 18 avril 2006 Table des matières 1 Introduction 2 2 Présentation du projet 3 2.1 Une distribution Évolulable..................

Plus en détail

Chap. III : Le système d exploitation

Chap. III : Le système d exploitation UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Le système d exploitation (ou O.S. de l anglais Operating System ) d un ordinateur est le programme qui permet d accéder

Plus en détail

Processeur JAP. Le langage JAVA

Processeur JAP. Le langage JAVA Processeur JAP Ce document présente les dernières nouveautés concernant le processeur JAVA de la société AED. Il commence par un rappel sur les caractéristiques du processeur actuel, puis présente les

Plus en détail

Les systèmes d exploitation

Les systèmes d exploitation Définitions Les systèmes d exploitation Version LJV #090915 septembre 2009 Le système d'exploitation: (anglais operating system, en abrégé OS) ensemble des programmes nécessaires et indispensables au fonctionnement

Plus en détail

Du 19 au 22 novembre 2012.

Du 19 au 22 novembre 2012. Formation Linux embarqué et Pierre Ficheux (pierre.ficheux@openwide.fr) Du 19 au 22 novembre 2012. 1 MODIFICATIONS VERSION DATE AUTEUR(S) DESCRIPTION 1.0 20/1/2011 P. Ficheux Création 1.1 5/12/2011 P.

Plus en détail

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation (Operating Systems) Introduction SITE : http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation - Mírian Halfeld-Ferrari p. 1/2 Qu est-ce qu un SE? Ensemble de logiciels

Plus en détail

Supports d exécution matériels pour l embarqué. Jean-Philippe Babau

Supports d exécution matériels pour l embarqué. Jean-Philippe Babau Supports d exécution matériels pour l embarqué Jean-Philippe Babau Département Informatique, INSA Lyon Les contraintes Coût de quelques euros à quelques centaines d'euros Contraintes d énergie (mobilité,

Plus en détail

Découverte des ressources disponibles et de l environnement de développement

Découverte des ressources disponibles et de l environnement de développement Denis Hautot Lycée Victor-Hugo BESANÇON. STS SN Développement à base de cartes de prototypage rapide mbed Découverte des ressources disponibles et de l environnement de développement Prérequis : langage

Plus en détail

1 Le vocabulaire de l informatique

1 Le vocabulaire de l informatique 1 Le vocabulaire de l informatique I Les systèmes informatiques Les ordinateurs sont omniprésents dans notre environnement quotidien. Conçus pour traiter de manière générale des informations, ils ne se

Plus en détail

Faire cohabiter plusieurs mondes

Faire cohabiter plusieurs mondes CHAPITRE 2 Faire cohabiter plusieurs mondes Pourquoi installer plusieurs systèmes d exploitation sur un seul ordinateur Il existe de nombreux systèmes d exploitation (Operating System ou OS, en anglais)

Plus en détail

Apprendre à développer pour créer des objets intelligents

Apprendre à développer pour créer des objets intelligents Arduino Apprendre à développer pour créer des objets intelligents Nicolas GOILAV Geoffrey LOI Table des matières 1 Les éléments à télécharger sont disponibles à l'adresse suivante : http://www.editions-eni.fr

Plus en détail

Structure en couches des systèmes informatiques

Structure en couches des systèmes informatiques Structure en couches des systèmes informatiques Vue simplifiée d un système informatique Ce que le simple utilisateur perçoit «à première vue» d un système informatique : Le boîtier (tour, desktop ou portable)

Plus en détail

SoC : Système on Chip. C est le concept d intégrer une fonction électronique dans un composant programmable.

SoC : Système on Chip. C est le concept d intégrer une fonction électronique dans un composant programmable. 0 Présentation du TP : Pré-requis : Durée estimée : Objectif : Avoir suivi les TP_description_schématic_compteur-FPGA et TP_compteur_VHDL_virtual_instruments-FPGA. Connaissance du langage C ANSI. 2 heures.

Plus en détail

Logiciel Libre Cours 4 Fondements: Systèmes d Exploitation

Logiciel Libre Cours 4 Fondements: Systèmes d Exploitation Logiciel Libre Cours 4 Fondements: Systèmes d Exploitation Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Linux embarqué : le pari réussi d'une PME bordelaise

Linux embarqué : le pari réussi d'une PME bordelaise RTS 2006 Linux embarqué : le pari réussi d'une PME bordelaise email web : kadionik@enseirb.fr : http://www.enseirb.fr/~kadionik http://www.enseirb.fr/cosynux/ Patrice KADIONIK ENSEIRB - IXL pk/enseirb/2006-1-

Plus en détail

Avec le Flyport, Prenez le contrôle & gérez vos objets à distance

Avec le Flyport, Prenez le contrôle & gérez vos objets à distance Avec le Flyport, Prenez le contrôle & gérez vos objets à distance Révolution dans l univers des capteurs intelligents et de l Internet des objets, Giga-Concept, lance le Flyport. Une carte intelligente

Plus en détail

Leçon 1 : Les principaux composants d un ordinateur

Leçon 1 : Les principaux composants d un ordinateur Chapitre 2 Architecture d un ordinateur Leçon 1 : Les principaux composants d un ordinateur Les objectifs : o Identifier les principaux composants d un micro-ordinateur. o Connaître les caractéristiques

Plus en détail

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs

THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et

Plus en détail

Découverte l'ordinateur

Découverte l'ordinateur Découverte de l'ordinateur 1 / 11 Sommaire. Présentation Matériel Logiciel Différence libre / propriétaire Unités de mesure Internet et le web Pour finir Bibliographie Licence 2 / 11 Présentation. Aujourd'hui,

Plus en détail

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11) 1/ Généralités : Un ordinateur est un ensemble non exhaustif d éléments qui sert à traiter des informations (documents de bureautique, méls, sons, vidéos, programmes ) sous forme numérique. Il est en général

Plus en détail

C est quoi un ordinateur?

C est quoi un ordinateur? C est quoi un ordinateur? http://vanconingsloo.be/les-cours/modules-informatiques-et-internet/initiation-a-linformatique/decouvertewindows/cest-quoi-un-ordinateur Un ordinateur, c est plusieurs «boites»

Plus en détail

Manuel de System Monitor

Manuel de System Monitor Chris Schlaeger John Tapsell Chris Schlaeger Tobias Koenig Traduction française : Yves Dessertine Traduction française : Philippe Guilbert Traduction française : Robin Guitton Relecture de la documentation

Plus en détail

Systèmes d exploitation

Systèmes d exploitation Systèmes d exploitation Un système d exploitation (SE, en anglais Operating System ou OS) est un ensemble de programmes responsables de la liaison entre les ressources matérielles d un ordinateur et les

Plus en détail

Émission en janvier La bataille des OS

Émission en janvier La bataille des OS Émission en janvier La bataille des OS Introduction : Bonjour, vous êtes sur BAC FM 106.1 dans l émission La matinale geek animée par la classe de BTS SIO2 avec aujourd hui Cédric et Bastien. Nous allons

Plus en détail

A) Le Logiciel : le Software

A) Le Logiciel : le Software A) Le Logiciel : le Software 1) Mise en route d'une machine : RESET Un microprocesseur ne peut exécuter qu'une suite d'instructions qu'il doit aller extraire de sa mémoire. Cette suite d'instructions est

Plus en détail

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

VMware ESX/ESXi. 1. Les composants d ESX. VMware ESX4 est le cœur de l infrastructure vsphere 4. VMware ESX/ESXi 1. Les composants d ESX VMware ESX4 est le cœur de l infrastructure vsphere 4. C est un hyperviseur, c est à dire une couche de virtualisation qui permet de faire tourner plusieurs systèmes

Plus en détail

Système d exploitation

Système d exploitation Cours 1 Université du Luxembourg Enseignement : Professeur:. But du cours : Connaître les systèmes d exploitation. Se familiariser avec UNIX. Environnement de programmation : PC sous Windows avec Cygwin

Plus en détail

Les liaisons SPI et I2C

Les liaisons SPI et I2C DAMÉCOURT BENJAMIN AVRIL 28 Liaisons synchrones Les liaisons SPI et I2C Face arrière d un imac : trois ports USB, un port Firewire 4 et un port Firewire 8 CHRONOLOGIE ANNÉES 7 La liaison SPI et la création

Plus en détail

Chapitre 2 : Architecture d un ordinateur

Chapitre 2 : Architecture d un ordinateur I. Introduction : Chapitre 2 : Architecture d un ordinateur Activité 1 : Q : Comment on peut effectuer un traitement automatique? R : On doit utiliser une machine automatique c est l ordinateur. Q : Quelles

Plus en détail

LA COMMUNICATION DE L INFORMATION EN RESEAUX

LA COMMUNICATION DE L INFORMATION EN RESEAUX LA COMMUNICATION DE L INFORMATION EN RESEAUX A LES RESEAUX Un réseau est un ensemble d objets connectés entre eux. Il permet de faire circuler un certain nombre d information entre ces objets selon des

Plus en détail

Introduction à UNIX et Windows

Introduction à UNIX et Windows 1/39 à UNIX et Windows Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017 Bobigny

Plus en détail

ASSEMBLAGE ET ÉDITION DES LIENS

ASSEMBLAGE ET ÉDITION DES LIENS ASSEMBLAGE ET ÉDITION DES LIENS Mewtow 11 novembre 2015 Table des matières 1 Introduction 5 2 La chaine d assemblage 7 2.1 Résolution des symboles.............................. 7 2.2 Relocation.....................................

Plus en détail

Ordinateur, système d exploitation

Ordinateur, système d exploitation Ordinateur, système d exploitation 2014-09-02 1 Système d exploitation Machine de von Neumann : seul un programme s exécute. Besoins utilisateurs : plein de programmes. Système d exploitation (Operating

Plus en détail

Formation Réseau et Embarqué. Découverte du Raspberry Pi

Formation Réseau et Embarqué. Découverte du Raspberry Pi Formation Réseau et Embarqué Découverte du Raspberry Pi 1 Sommaire Pourquoi Raspberry Pi Un peu d'histoire Stucture du Raspberry Pi Composants et interconnexion Installation Raspbian 2 Pourquoi Raspberry

Plus en détail

Système d exploitation

Système d exploitation Chapitre 2 Système d exploitation 2.1 Définition et rôle Un ordinateur serait bien difficile à utiliser sans interface entre le matériel et l utilisateur. Une machine peut exécuter des programmes, mais

Plus en détail

QCM systèmes d exploitation (Quarante questions)

QCM systèmes d exploitation (Quarante questions) QCM systèmes d exploitation (Quarante questions) QUIZZ OS N 1 (10 questions avec réponses) Question 1: Aux origines de l informatique, l'interface utilisateur des systèmes d exploitations était composée

Plus en détail

Retrouver de vieux programmes et jouer sur VirtualBox

Retrouver de vieux programmes et jouer sur VirtualBox CHAPITRE 3 Retrouver de vieux programmes et jouer sur VirtualBox Ce chapitre présente des notions avancées de VirtualBox. Elles permettront de réaliser des configurations spécifiques pour évaluer des systèmes

Plus en détail

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants : GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours

Plus en détail

Collection d'exercices

Collection d'exercices Collection d'exercices Question 1. Systèmes à temps réel Points Expliquez brièvement la différence entre les contraintes de temps réel strict et de temps réel souple.. Systèmes à temps réel Les dispositifs

Plus en détail

Amiens 2007. Métier 39 : Gestion des réseaux informatiques. Jour 2, première partie. Durée : 3 heures

Amiens 2007. Métier 39 : Gestion des réseaux informatiques. Jour 2, première partie. Durée : 3 heures 39 èmes Olympiades des Métiers Amiens 2007 Métier 39 : Gestion des réseaux informatiques Jour 2, première partie Durée : 3 heures N ote : La correction de cette épreuve se déroulera tout au long de la

Plus en détail

Atelier : Virtualisation avec Xen

Atelier : Virtualisation avec Xen Virtualisation et Cloud Computing Atelier : Virtualisation avec Xen Plan Présentation de Xen Architecture de Xen Le réseau Gestion des domaines DomU dans Xen Installation de Xen Virt. & Cloud 12/13 2 Xen

Plus en détail

MANUEL D' UTILISATION

MANUEL D' UTILISATION MANUEL D' UTILISATION Table des matières Présentation...2 Introduction...2 Matériel nécessaire...2 Logiciel nécessaire...3 Partie A : Installation et Mise en oeuvre du matériel et logiciel...4 Partie B

Plus en détail

Analyse et programmation 1

Analyse et programmation 1 Analyse et programmation Aperçu du fonctionnement de l ordinateur Fonctionnement de l ordinateur Codage de l information Bus d échange d information CPU Exécution d un programme par la CPU Gestion des

Plus en détail

MODULE 1. Installation de Fedora. Objectifs de ce module : Installer le système d exploitation Linux Fedora. Créer des partitions sur le disque dur.

MODULE 1. Installation de Fedora. Objectifs de ce module : Installer le système d exploitation Linux Fedora. Créer des partitions sur le disque dur. MODULE 1 Objectifs de ce module : Installer le système d exploitation Linux Fedora. Installation de Fedora Créer des partitions sur le disque dur. Préparer votre système pour une première utilisation.

Plus en détail

Solutions-Libres J@P Raspberry Pi : Serveur Debian

Solutions-Libres J@P Raspberry Pi : Serveur Debian Solutions-Libres J@P Raspberry Pi : Serveur Debian Table des matières -1) Le Matériel... 2-2) Formater une carte SD avec SD Formatter... 3-3) Télécharger l Image de Debian... 4-4) Installer l Image de

Plus en détail

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

Programmation C. Apprendre à développer des programmes simples dans le langage C Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités

Plus en détail

Fiche d identité produit

Fiche d identité produit Fiche d identité produit Référence DNS-313 Désignation Boîtier de stockage réseau SATA à 1 baie Clientèle cible Particuliers Accroche marketing Proposé à un prix défiant toute concurrence, le boîtier de

Plus en détail

Système d exploitation : introduction

Système d exploitation : introduction Julien Forget Université Lille 1 École Polytechnique Universitaire de Lille Cité Scientifique 59655 Villeneuve d Ascq GIS3 2012-2013 1 / 14 Qu est-ce qu un Système d Exploitation? Definition Un Système

Plus en détail

Systèmes d exploitation

Systèmes d exploitation Systèmes d exploitation Module UE2 : administration de systèmes Licence professionnelle Pierre Nerzic IUT de Lannion 1 LP/UE2 v2 2005-07 Mise en service des postes de travail Ce chapitre présente rapidement

Plus en détail

Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3

Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3 Tsoft et Groupe Eyrolles, 2005, ISBN : 2-212-11623-3 Configuration requise ForestPrep DomainPrep Installation interactive 5 Installation sans surveillance Module 5 : Installation d Exchange Server 2003

Plus en détail

Déploiement et gestion d ordinateurs avec un outil centralisé (Ghost Serveur 7.5)

Déploiement et gestion d ordinateurs avec un outil centralisé (Ghost Serveur 7.5) Déploiement et gestion d ordinateurs avec un outil centralisé (Ghost Serveur 7.5) QU EST CE Q UN SYSTEME D ADMINISTRATION ET DE DEPLOIEMENT?... 1 1. INSTALLATION SUR LE SERVEUR :... 4 2. PREPARATION DE

Plus en détail

Conférence sur les microcontroleurs.

Conférence sur les microcontroleurs. Conférence sur les microcontroleurs. Le microcontrôleur Les besoins et le développement. Vers 1970, pour des calculs (calculatrice). Le premier est le 4004 de Intel, 90K. La technologie. Les 2 principales

Plus en détail

NOTIONS DE RESEAUX INFORMATIQUES

NOTIONS DE RESEAUX INFORMATIQUES NOTIONS DE RESEAUX INFORMATIQUES GENERALITES Définition d'un réseau Un réseau informatique est un ensemble d'équipements reliés entre eux afin de partager des données, des ressources et d'échanger des

Plus en détail

Implémentation d'une pile IP pour le microprocesseur Microblaze sur carte ATLYS

Implémentation d'une pile IP pour le microprocesseur Microblaze sur carte ATLYS Implémentation d'une pile IP pour le microprocesseur Microblaze sur carte ATLYS 1) Problématique Beaucoup de systèmes embarqués communiquent entre eux par l intermédiaire de réseaux LAN Ethernet IP. Il

Plus en détail

PIC EVAL Dev Board PIC18F97J60

PIC EVAL Dev Board PIC18F97J60 PIC EVAL Dev Board PIC18F97J60 2 TP1 : Prise en main de l environnement de programmation pour la carte PIC EVAL-ANFA Pour répondre aux questions et justifier vos réponses, vous pouvez faire des copies

Plus en détail

Page 1 2 La présente invention concerne le domaine des architectures informatiques, et en particulier un procédé pour le développement d applications destiné à un fonctionnement en réseau, par exemple

Plus en détail

Linux embarqué: une alternative à Windows CE?

Linux embarqué: une alternative à Windows CE? embarqué: une alternative à Windows CE? : une alternative à Windows CE Présentation Mangrove Systems Distribution embarqué Perspective WinCe / Questions Mangrove systems Créé en 2001 Soutien Soutien Ministère

Plus en détail

Carte d'extension ADK. http://developer.android.com/tools/adk/index.html. fcamps@laas.fr P5

Carte d'extension ADK. http://developer.android.com/tools/adk/index.html. fcamps@laas.fr P5 Carte d'extension http://developer.android.com/tools/adk/index.html Le kit de développement d'accessoires () est une API qui permet de communiquer avec un carte électronique avec un micro-contrôleur qui

Plus en détail

Projet OS embarqué M2LSE : Utilisation de l'environnement de développement Armadeus : notions pratiques

Projet OS embarqué M2LSE : Utilisation de l'environnement de développement Armadeus : notions pratiques Projet OS embarqué M2LSE : Utilisation de l'environnement de développement Armadeus : notions pratiques 1. Introduction Ce document présente la marche à suivre pour une série d'opérations qui seront à

Plus en détail

Instructions d installation de IBM SPSS Modeler Server 15 pour Windows

Instructions d installation de IBM SPSS Modeler Server 15 pour Windows Instructions d installation de IBM SPSS Modeler Server 15 pour Windows IBM SPSS Modeler Server peut être installé et configuré de manière à s exécuter en mode d analyse réparti, avec une ou plusieurs installations

Plus en détail

Grille finale. Total : /1 000. Montage d un poste informatique /150 Installation de logiciels et de

Grille finale. Total : /1 000. Montage d un poste informatique /150 Installation de logiciels et de Grille finale Montage d un poste informatique /150 Installation de logiciels et de /0 périphériques Rétablissement d un poste /0 Optimisation d un poste /0 Installation d un réseau et /200 administration

Plus en détail

1 - Système Unix - Linux

1 - Système Unix - Linux 1 - Système Unix - Linux Laurent Tichit 5 avril 2011 Laurent Tichit () 1 - Système Unix - Linux 5 avril 2011 1 / 33 Plan 1 Systèmes d exploitation 2 UNIX 3 Les UNIX libres 4 Linux 5 Première connexion

Plus en détail

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES 1 DECOUVERTE DE LA VIRTUALISATION... 2 1.1 1.2 CONCEPTS, PRINCIPES...2 UTILISATION...2 1.2.1 Formation...2

Plus en détail

www.konicaminolta.fr DocMaster La parfaite maîtrise du cycle de production documentaire * L essentiel de l image

www.konicaminolta.fr DocMaster La parfaite maîtrise du cycle de production documentaire * L essentiel de l image www.konicaminolta.fr DocMaster La parfaite maîtrise du cycle de production documentaire * L essentiel de l image * Solution de gestion documentaire DocMaster Avec DocMaster... maîtrisez votre cycle de

Plus en détail

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1 AOLbox Partage de disque dur Guide d utilisation Partage de disque dur Guide d utilisation 1 Sommaire 1. L AOLbox et le partage de disque dur... 3 1.1 Le partage de disque dur sans l AOLbox... 3 1.1.1

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

Linux. embarqué. 4 e édition. Pierre Ficheux Éric Bénard. Nouvelle étude de cas Traite d OpenEmbedded. Groupe Eyrolles, 2012, ISBN : 978-2-212-13482-7

Linux. embarqué. 4 e édition. Pierre Ficheux Éric Bénard. Nouvelle étude de cas Traite d OpenEmbedded. Groupe Eyrolles, 2012, ISBN : 978-2-212-13482-7 Linux 4 e édition embarqué Nouvelle étude de cas Traite d OpenEmbedded Pierre Ficheux Éric Bénard Groupe Eyrolles, 2012, ISBN : 978-2-212-13482-7 Table des matières Avant-propos... 1 À qui s adresse ce

Plus en détail

Conduite du Projet Système

Conduite du Projet Système Conduite du Projet Système Département Télécom 2ème Année Enseignants : Yves Denneulin, Jacques Mossière, Grégory Mounié, Simon Nieuviarts, Franck Rousseau, Sébastien Viardot Résumé Ce document est complémentaire

Plus en détail

03/10/2012. Le Plan. Le travail de l'os. Les éléments logiciels : OS. OS & Logiciels. Systèmes d Exploitation sur Desktop & portables

03/10/2012. Le Plan. Le travail de l'os. Les éléments logiciels : OS. OS & Logiciels. Systèmes d Exploitation sur Desktop & portables OS & Logiciels Le Plan 1. Les Systèmes d Exploitation 2. Matériels & pilotes 3. Environnement Graphique 4. Logiciels i. Installation et désinstallation de logiciels ii. iii. Suites bureautiques Audio et

Plus en détail

Chap. I : Architecture de base d un ordinateur

Chap. I : Architecture de base d un ordinateur UMR 7030 - Université Paris 13 - Institut Galilée Cours Architecture et Système Dans cette partie, nous décrivons rapidement l architecture de base d un ordinateur et les principes de son fonctionnement.

Plus en détail

MANUEL D INSTALLATION

MANUEL D INSTALLATION Data Processing Commission Fast Advanced Software for Table soccer - v 1.0 Logiciel de gestion de tournoi de football de table MANUEL D INSTALLATION INSTALLATION INFORMATIQUE DE LA TABLE DE MARQUE & CONFIGURATION

Plus en détail

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

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Base de l'informatique Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Généralité Comment fonctionne un ordinateur? Nous définirons 3 couches Le matériel

Plus en détail

AXIS Camera Station Guide d installation rapide

AXIS Camera Station Guide d installation rapide AXIS Camera Station Guide d installation rapide Copyright Axis Communications AB Avril 2005 Rev. 1.0 Référence 23793 1 Table des matières Informations importantes................................ 3 AXIS

Plus en détail

Installer Windows Home Server 2011

Installer Windows Home Server 2011 Chapitre 4 Installer Windows Home Server 2011 Windows Home Server 2011 fonctionne uniquement sous l architecture 64 bits : cette contrainte rend impossible la mise à jour de l ancienne version de Windows

Plus en détail

L3 informatique Réseaux : Configuration d une interface réseau

L3 informatique Réseaux : Configuration d une interface réseau L3 informatique Réseaux : Configuration d une interface réseau Sovanna Tan Septembre 2009 Révision septembre 2012 1/23 Sovanna Tan Configuration d une interface réseau Plan 1 Introduction aux réseaux 2

Plus en détail

Guide de l utilisateur pour l Application Builder de LabVIEW

Guide de l utilisateur pour l Application Builder de LabVIEW Guide de l utilisateur pour l Application Builder de LabVIEW Version 7.0 L Application Builder de LabVIEW est un logiciel complémentaire qui sert à créer des applications autonomes et des bibliothèques

Plus en détail

Adressage de réseaux

Adressage de réseaux Page 1 sur 28 Adressage de réseaux 5.1 Adresses IP et masques de sous-réseau 5.1.1 Rôle de l adresse IP Un hôte a besoin d une adresse IP pour participer aux activités sur Internet. L adresse IP est une

Plus en détail

Guest PC. pour Mac OS X. Guide utilisateur. Version 1.6. Copyright 1996-2005 Lismore Software Systems, Ltd. Tous droits réservés.

Guest PC. pour Mac OS X. Guide utilisateur. Version 1.6. Copyright 1996-2005 Lismore Software Systems, Ltd. Tous droits réservés. Guest PC pour Mac OS X Version 1.6 Guide utilisateur Copyright 1996-2005 Lismore Software Systems, Ltd. Tous droits réservés. Table des matières À propos de Guest PC... 1 À propos de votre machine virtuelle...

Plus en détail

Installation classique de Windows XP. Phase texte de l installation :

Installation classique de Windows XP. Phase texte de l installation : Installation classique de Windows XP Voici les trois installations standard de Windows XP : A partir du CD-ROM de Windows XP : Ce type d installation nécessite que vous ayez un lecteur de CD-ROM sur votre

Plus en détail

Cours FPGA 02/01/2014. L architecture SOPC Des FPGAs

Cours FPGA 02/01/2014. L architecture SOPC Des FPGAs L architecture SOPC Des FPGAs 1 Ce document aborde l architecture moderne des FPGA et notamment la technologie SOPC (system on programmable chip). Cette technologie SOPC permet d associer des structures

Plus en détail

M1101 : Introduction aux Systèmes d Exploitation (OS - Operating Systems)

M1101 : Introduction aux Systèmes d Exploitation (OS - Operating Systems) M1101 : Introduction aux Systèmes d Exploitation (OS - Operating Systems) Guillaume Urvoy-Keller Source : A. Tannenbaum "Modern Operating Systems", Pearson Guillaume Urvoy-Keller Source : A. Tannenbaum

Plus en détail

Chapitre 1 : Introduction aux Systèmes d Exploitation (SE)

Chapitre 1 : Introduction aux Systèmes d Exploitation (SE) 1. Introduction Chapitre 1 : Introduction aux Systèmes d Exploitation (SE). 1 système informatique est un ensemble constitué de matériels et de logiciels et qui assure le traitement des données.. Les pgms

Plus en détail

Systèmes d exploitation

Systèmes d exploitation Systèmes d exploitation Dominique PRESENT Dépt S.R.C. - I.U.T. de Marne la Vallée Organisation d un Ordinateur 1-4-5-6 connecteurs (cartes ) 3 chipset (processeur) 9 ports E/S 2 mémoire vive 7-8 connecteurs

Plus en détail

RTS12. Linux embarqué : construire son OS. Tanguy Risset. prénom.nom@insa-lyon.fr Labo CITI, INSA de Lyon, Dpt Télécom. jan. 2011

RTS12. Linux embarqué : construire son OS. Tanguy Risset. prénom.nom@insa-lyon.fr Labo CITI, INSA de Lyon, Dpt Télécom. jan. 2011 RTS12 : Linux embarqué : 1 RTS12 Linux embarqué : construire son OS Tanguy Risset prénom.nom@insa-lyon.fr Labo CITI, INSA de Lyon, Dpt Télécom jan. 2011 RTS12 : Linux embarqué : Introduction 2 Historique

Plus en détail

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon

3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 3ETI, Examen [CSC2] Developpement Logiciel en C CPE Lyon 2014-2015 (1ere session) durée 3h Tous documents et calculatrices autorisés. Répondez aux questions sur une copie séparée Le sujet comporte 8 pages

Plus en détail

Introduction aux systèmes GNU/Linux

Introduction aux systèmes GNU/Linux Introduction aux systèmes GNU/Linux Séance 1 inetdoc.net Philippe Philippe Latu Latu // Université Université Toulouse Toulouse 33 Paul Paul Sabatier Sabatier Document Document sous sous licence licence

Plus en détail

CPU ou UCT. Circuit Intégré. Processor (data processing)

CPU ou UCT. Circuit Intégré. Processor (data processing) CPU ou UCT Processor (data processing) Le processeur est une unité d exécution, plus précisément appelée unité centrale de traitement (désignée en franç.par UCT, en ang. CPU (Central Processing Unit) CPU+mémoire

Plus en détail

Arduino Apprendre à développer pour créer des objets intelligents

Arduino Apprendre à développer pour créer des objets intelligents Le module Arduino 1. Introduction au microcontrôleur 9 1.1 Principales notions 9 1.2 Programmation 11 2. Présentation générale 12 3. Description technique 13 3.1 Alimentation 13 3.2 Horloge 14 3.3 Reset

Plus en détail

Cisco Secure Access Control Server Solution Engine. Introduction. Fiche Technique

Cisco Secure Access Control Server Solution Engine. Introduction. Fiche Technique Fiche Technique Cisco Secure Access Control Server Solution Engine Cisco Secure Access Control Server (ACS) est une solution réseau d identification complète qui offre à l utilisateur une expérience sécurisée

Plus en détail

Processeur Dual Core 1 GHz

Processeur Dual Core 1 GHz Performance et usage Wi-Fi AC1900 - Vitesse 600Mbps (2.4GHz) + 1300 Mbps (5GHz) Processeur Dual Core 1GHz Fonctionnalités avancées pour le jeu en ligne sans latence Bande passante prioritaire pour les

Plus en détail

Théorie des Systèmes d'exploitation : Introduction

Théorie des Systèmes d'exploitation : Introduction Théorie des Systèmes d'exploitation : Introduction Quelques systèmes d'exploitation... 3 Architecture des ordinateurs... 4 Schéma simplifié :... 4 Les concepts des systèmes d'exploitation... 5 Les 2 principales

Plus en détail

Instructions d installation de IBM SPSS Modeler Server 14.2 pour Windows

Instructions d installation de IBM SPSS Modeler Server 14.2 pour Windows Instructions d installation de IBM SPSS Modeler Server 14.2 pour Windows IBM SPSS Modeler Server peut être installé et configuré de manière à s exécuter en mode d analyse réparti, avec une ou plusieurs

Plus en détail