1 / 25

Généralités

Généralités. Objectif du chapitre. Présentation de notions de base Système temps réel Système embarqué Configurations de base Process, thread, tâche Operating System (OS) Architecture mémoire. Système PC et système embarqué. PC ou station de travail Prix élevé

isla
Download Presentation

Généralités

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Généralités Généralités

  2. Objectif du chapitre • Présentation de notions de base • Système temps réel • Système embarqué • Configurations de base • Process, thread, tâche • Operating System (OS) • Architecture mémoire Généralités

  3. Système PC et système embarqué • PC ou station de travail • Prix élevé • Processeur très puissant • Mémoire de grande taille • OS adapté à de nombreuses applications • Système embarqué • Contrainte de prix • Processeurs de consommation minimale • Mémoire limitée • OS dédié à l’application souhaitée Généralités

  4. Système embarqué • Embedded system • Système enfoui • Image en ROM ou en FLASH • Exemples • Injection électronique • Téléphone portable • Appareil photo numérique • … • Système éventuellement modifiable par téléchargement Généralités

  5. TEMPS RÉEL • Système qui doit faire un ensemble d’actions dans un temps imparti • Temps réel critique : résultat catastrophique si le temps imparti est dépassé • Temps réel mou : résultat non catastrophique et cependant encore utile malgré le non respect des contraintes de temps Généralités

  6. Objectifs de CE 4.x • OS entièrement réécrit « from scratch » (CE 3.X) • OS compact et modulaire • Construit à partir d’un catalogue de composants • OS temps réel mou • Peut couvrir 90% des besoins temps réel actuels • Nombreuses possibilités de communication • Réseaux filaires et sans fils (Bluetooth, WiFi) • Orienté multimédia et multilingue • Grand nombre de codecs audio et vidéo • Nombreux langages (chinois, coréen, japonais…) Généralités

  7. Outils de développement • Platform Builder • Construction de l’OS : Kernel + BSP • Construction d’applications simples • Téléchargement et debug sur émulateur et cible • Embedded Visual C++ • Applications C++ natives complexes • Téléchargement et debug sur émulateur et cible • Visual Studio.net • Applications en : C++, C#, VB.net, etc. • Nécessite le Compact FrameWork • Téléchargement et debug sur émulateur Généralités

  8. Processeurs supportés Généralités

  9. Création de l’OS • Construction à partir du catalogue de composants • On met dans le noyau un à un tous les composants désirés • Utilisation de configurations préétablies, orientées pour cibler des applications • En fonction du projet à réaliser choisir une configuration proche des besoins comprenant un ensemble de composants de base • Retirer les composants inutiles • Ajouter les composants manquants Généralités

  10. Configurations de base (1) • Digital Media Receiver • Appareils légers gérant l’audio et/ou la vidéo • Enterprise Terminal • Points de vente, caisses enregistreuses, bornes libre service • Enterprise Web Pad • Client internet sans fil avec interface tactile • Gateway • Partage de connexions internet sur de petits réseaux privés • Industrial Controller • Applications industrielles avec ou sans interface homme-machine • Internet Appliance (Borne Internet avec écran et clavier) Généralités

  11. Configurations de base (2) • IP Phone • Voix sur IP avec ou sans graphisme • Mobile Handheld • Assistants personnels de poche (PDA) • Mobile Phone (téléphonie mobile) • Set Top Box • Appareils connectables à la télé (internet, décodeurs…) • Tiny Kernel (Noyau minimal) • Windows Thin Client • Petite configuration permettant la prise de contrôle à distance d’un poste de travail ou d’un serveur en utilisant le protocole RDP (Remote Desktop Protocol) Généralités

  12. ARCHITECTURE APPLICATION NOYAU STANDARD ADAPTATION HARDWARE Généralités

  13. BOARD SUPPORT PACKAGE (BSP) • La couche d’adaptation est à la charge du concepteur du hardware • Elle comprend • des fonctions d’adaptation au hardware OAL (OEM Adaptation Layer, OEM:Original Equipment Manufacturer) • un certain nombre de drivers (pilotes de périphériques) • Le Boot Loader • L’ensemble de cette couche est appelé BSP • Des BSP existent pour des cartes industrielles de référence Généralités

  14. PROCESS (CE4.2) • Un process ou processus est une instance d’application en cours ou en attente d’exécution • Allocation de ressources au niveau du process • 32 MB d’adressage virtuel par process • Un process démarre avec un seul thread (Primary Thread) mais il peut créer d’autres threads • Plusieurs threads peuvent s’exécuter simultanément • Un process peut aussi créer d’autres process • Windows CE peut gérer jusqu’à 32 process simultanément Généralités

  15. PROCESS (CE6.0) • 2 GB d’adressage virtuel par process • CE6.0 peut gérer jusqu’à 32000 process simultanément Généralités

  16. THREAD • La plus petite unité d’exécution • Plusieurs threads peuvent s’exécuter simultanément • Les threads ont accès à l’ensemble des ressources du process • Ordonnancé (schédulé) par le noyau • Quantum de temps configurable (100ms) • Préemptif • 256 niveaux de priorités • Priorité tournante pour des threads de même priorité Généralités

  17. Synchronisation des tâches • Il est bien évident puisque les threads peuvent s’exécuter simultanément qu’il faut coordonner les exécutions pour obtenir un résultat valide dès que plusieurs threads sont en jeu • Une situation désespérée se présente lorsque une tâche est bloquée en attente d’un résultat d’une autre tâche (voire sur elle-même) et réciproquement • Nous consacrerons un chapitre à ce sujet • Dans certains cas, l’inversion de priorité suffit Généralités

  18. Inversion de priorité • Si un thread A de haute priorité est en attente d’une ressource bloquée par un thread B de moindre priorité, la priorité de B est alignée temporairement sur celle de A pour permettre la libération de la ressource bloquante • Ce mécanisme qui peut perturber le fonctionnement déterministe d’un système, est à éviter dans la mesure du possible Généralités

  19. Système de base NOYAU (1) • Principaux blocs constitutifs KERNEL GWES DEVICE MANAGER FILESYS DEVICE DRIVERS OAL Généralités

  20. NOYAU (2) • KERNEL • OS minimal ; il gère les process, les threads, la mémoire, les interruptions, etc. • GWES (Graphics Windowig Events Subsystem) • Gère l’interface graphique et les entrées-sorties (I/O) des utilisateurs • DEVICE DRIVERS • Native Drivers : interface utilisateur de base sauf clavier, écran et souris qui sont gérés par GWES et chargés lors du boot • Stream Drivers : gérés par le Device Manager Généralités

  21. NOYAU (3) • DEVICE MANAGER • Gère les Stream Drivers : charge lors du boot ceux qui sont listés dans la Registry • Gère de manière dynamique les drivers chargeables à la demande • FILESYS • Gère le système de fichiers, la registry et la Property Data Base (base de donnée non hiérarchisée pour stocker des adresses, des mails et des informations) Généralités

  22. PROCESS SYSTÈME • Windows CE utilise 4 des 32 process disponibles • NK.EXE et COREDLL.DLL • FILESYS.EXE • DEVICE.EXE • GWES.EXE Généralités

  23. Architecture mémoire • Espace virtuel de 4 GB • Partage mémoire • Adresses de 0 à 2GB : user mode (process) • Adresses de 2GB à 4GB : kernel mode (system) • Mémoire user mode ou mode application • 33 slots de 32MB • 32 slots pour les process (numéros 1 à 32) • 1 slot pour le process en cours (numéro 0) • Le reste (1GB moins 32MB) est partagé entre tous les process Généralités

  24. Gestion mémoire • Mémoire gérée par le mécanisme de pages à la demande • Page de 4KB ou de 1KB suivant les versions de CE et les processeurs cibles • Possibilité de réserver des régions de 64KB • Les process s’exécutant dans des slots distincts il y aura un problème de communication entre process Généralités

  25. Conclusion • Survol de quelques notions de base des systèmes d’exploitation appliquées à nos développements avec Windows CE Généralités

More Related