Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
4.3
20 avis
niveau Avancées
Expérience recommandée
Expérience recommandée
Niveau avancé
Des compétences en programmation C, une expérience préalable avec un système d'exploitation et une expérience préalable avec du matériel embarqué sont un plus.
Obtenez un aperçu d'un sujet et apprenez les principes fondamentaux.
4.3
20 avis
niveau Avancées
Expérience recommandée
Expérience recommandée
Niveau avancé
Des compétences en programmation C, une expérience préalable avec un système d'exploitation et une expérience préalable avec du matériel embarqué sont un plus.
Lorsque vous vous inscrivez à ce cours, vous êtes également inscrit(e) à cette Spécialisation.
Apprenez de nouveaux concepts auprès d'experts du secteur
Acquérez une compréhension de base d'un sujet ou d'un outil
Développez des compétences professionnelles avec des projets pratiques
Obtenez un certificat professionnel partageable
Il y a 4 modules dans ce cours
Ce cours fournit une dérivation mathématique complète et approfondie et un examen des modèles pour les politiques d'ordonnancement et la détermination de la faisabilité à la main et avec des outils monotones de taux, ainsi qu'une comparaison avec les performances réelles pour les threads planifiés en temps réel fonctionnant sur un système Linux natif. A la fin de ce cours, l'apprenant sera capable de dériver entièrement la borne supérieure de la politique monotone de taux de priorité fixe pour la faisabilité ainsi que de justifier la politique monotone de taux et sera capable de comparer avec l'ordonnancement dynamique des priorités, y compris la politique du délai le plus court en premier et la politique du moindre laxisme.
A la fin de ce cours, les apprenants seront capables de dériver et d'expliquer le modèle mathématique de la moindre borne supérieure monotone, ainsi que d'effectuer une analyse des diagrammes de temps pour les services logiciels à priorité fixe et dynamique. On apprendra à utiliser des outils d'analyse (Cheddar) pour automatiser l'analyse du temps et la comparer à la performance réelle.
Les objectifs spécifiques incluent :
● Théorie du taux monotone (modèles mathématiques complets) ● Différences entre la politique de taux monotone à priorité fixe et les politiques de priorité dynamique " earliest deadline first " et " least laxity " ● Théorie de l'ordonnancement et pratique de l'écriture de code pour des cadres multifréquences, des services RTOS préemptifs prioritaires, et des services threadés en temps réel sur des systèmes d'exploitation traditionnels (Linux) ● Construction d'un système Linux multiservice simple utilisant des extensions POSIX en temps réel sur Raspberry Pi 3b en utilisant le séquençage et des méthodes pour enregistrer et vérifier l'accord entre la théorie et la pratique ● Génération et analyse de diagrammes de temps à l'aide de Cheddar Ce cours comprend des exigences matérielles et logicielles spécifiques. Veuillez consulter la FAQ ci-dessous pour plus de détails.
A la fin de ce module, vous serez en mesure d'analyser les mathématiques impliquées dans la condition de la moindre borne supérieure monotone, ainsi que ses défis et ses alternatives. Une extension de la politique d'ordonnancement RM, c'est-à-dire la politique d'ordonnancement monotone par échéance, ainsi que l'implémentation d'un test d'achèvement pour déterminer la faisabilité exacte de la politique d'ordonnancement monotone par taux font également partie du champ d'application de ce module. Les travaux de programmation permettront de mettre en œuvre des services en temps réel au niveau du système et de déterminer les meilleures politiques d'ordonnancement pour respecter les délais des systèmes en temps réel conçus, ainsi que leurs avantages et inconvénients.
Inclus
14 vidéos12 lectures1 devoir3 devoirs de programmation3 évaluations par les pairs1 sujet de discussion
Afficher les informations sur le contenu du module
14 vidéos•Total 191 minutes
Cours Connaissances présumées en temps réel et vue d'ensemble•12 minutes
Code Walkthrough : Syslog pour le traçage et les affectations autogradées•7 minutes
Politique de priorité fixe monotone et optimalité (révision)•10 minutes
Ordonnancement monotone des taux dans la limite supérieure la plus basse•13 minutes
Défis et alternatives à la politique de RM à priorité fixe•16 minutes
Extensions monotones de la politique de tarification monotone en fonction de l'échéance•11 minutes
Ordonnancement en fonction de l'échéance : utilisation d'alternatives dynamiques de priorité•14 minutes
Dérivation RM LUB - Introduction•13 minutes
Deux cas qui déterminent la limite supérieure la plus basse de la RM•13 minutes
RM Limite supérieure la plus basse Point d'intersection•10 minutes
Dérivation de la limite supérieure la plus basse du RM - Conclusion•23 minutes
Faisabilité nécessaire et suffisante par l'analyse du pire cas (test exact)•12 minutes
Faisabilité exacte d'une politique monotone avec point d'ordonnancement•24 minutes
Faisabilité exacte d'un taux monotone à l'aide d'un test d'achèvement•13 minutes
12 lectures•Total 214 minutes
Mises à jour des cours et soutien à l'accessibilité•1 minute
Étudiants sans crédit : Bienvenue et où trouver de l'aide•10 minutes
Exigences matérielles et logicielles•10 minutes
AIDE SUPPLÉMENTAIRE : Installation d'un laboratoire à domicile•10 minutes
Guide du code pour les Peer-To-Peer•10 minutes
Lignes directrices pour l'examen par les pairs de la qualité du code•10 minutes
CODE : CU Boulder Linux Example Code - Public•10 minutes
Manuel : RTECS avec Linux et RTOS•10 minutes
Compétences de base en matière de Makefile à l'aide d'un exemple•10 minutes
Exemples d'analyse de synchronisation pour RM, EDF et LLF•10 minutes
Lisez, examinez et comprenez les dérivations dans le document original de la RMA (Liu & Layland)•120 minutes
Facultatif : Analyse exacte du taux monotone•3 minutes
1 devoir•Total 30 minutes
Module 1 - Étapes clés de la dérivation de la borne inférieure supérieure de la RM•30 minutes
3 devoirs de programmation•Total 540 minutes
Affectation 1 : Emulation de diagramme de temps - non harmonique, inférieur à LUB, faisable, marge (sûre)•180 minutes
Affectation 2 : Emulation de diagramme de temps - non harmonique, supérieur à LUB, faisable, marge (sûre)•180 minutes
Affectation 3 : Emulation de diagramme de temps - RM réussit, Fair échoue•180 minutes
3 évaluations par les pairs•Total 180 minutes
Affectation 1 : Emulation de diagramme de temps - non harmonique, inférieur à LUB, faisable, marge (sûre)•60 minutes
Affectation 2 : Emulation de diagramme de temps - non harmonique, supérieur à LUB, faisable, marge (sûre)•60 minutes
Affectation 3 : Emulation de diagramme de temps - RM réussit, Fair échoue•60 minutes
1 sujet de discussion•Total 10 minutes
Présentez-vous•10 minutes
Conception des services Analyse de faisabilité Pratique et méthodes de mise en œuvre
Module 2•19 heures à terminer
Détails du module
À la fin de ce module, les apprenants seront en mesure de décrire le modèle de conception des services en temps réel, de décrire les difficultés de mise en œuvre telles que le blocage sans limite et de décrire le fonctionnement normal - demande de service, synchronisation entre un ISR et chaque thread ou tâche, initialisation, envoi de messages d'alerte, gestion des erreurs et terminaison.
Inclus
15 vidéos2 lectures1 devoir3 devoirs de programmation3 évaluations par les pairs
Afficher les informations sur le contenu du module
15 vidéos•Total 229 minutes
Comparaison entre la politique RM et le Round Robin•14 minutes
Méthode de rappel pour l'ordonnancement à priorité fixe de RM Création de diagrammes de temps•8 minutes
Diagrammes de synchronisation RM plus complexes•12 minutes
Diagramme de temps avec un cas harmonique•7 minutes
Diagramme de synchronisation avec un cas d'harmonique d'utilité totale•6 minutes
Exemple de diagramme de temps comparant RM et EDF•14 minutes
Prise en charge de l'extension POSIX RT•17 minutes
Modèle de conception général Partie 1 : Fonctions, services et systèmes AMP RT•20 minutes
Modèle général de conception, partie 2 : systèmes AMP multiservices à plusieurs noyaux•20 minutes
Modèle de mise en œuvre : Services périodiques avec POSIX RT Threads, Interval Timers et Signals•19 minutes
Files d'attente de messages pour la synchronisation et le partage des données•18 minutes
Code Walkthrough : Démonstration de la fonctionnalité POSIX RT•9 minutes
Méthodes de détermination du pire temps d'exécution (WCET)•26 minutes
Méthodes d'accélération du WCET pour respecter les délais•24 minutes
Gigue et dérive de la période de demande de service•15 minutes
2 lectures•Total 183 minutes
Extensions RT de POSIX - 1003.1 dans Linux, QNX, Solaris, FreeBSD, etc.•180 minutes
Ressources optionnelles pour les extensions POSIX 1003.1 RT•3 minutes
1 devoir•Total 30 minutes
Module 2 | Mise en œuvre du service et admission au temps réel à l'aide de l'ARM, du point d'ordonnancement, du test d'achèvement•30 minutes
3 devoirs de programmation•Total 540 minutes
Affectation 4 : Emulation de diagramme de temps - non harmonique, supérieur à LUB, non faisable•180 minutes
Affectation 5 : Émulation de diagramme de temps - Harmonique, au-dessus de LUB, faisable, marge zéro (non sûr)•180 minutes
Affectation 6 : Emulation de diagramme de temps - non harmonique, échec RM, succès DM•180 minutes
3 évaluations par les pairs•Total 180 minutes
Affectation 4 : Emulation de diagramme de temps - non harmonique, supérieur à LUB, non faisable•60 minutes
Affectation 5 : Émulation de diagramme de temps - Harmonique, au-dessus de LUB, faisable, marge zéro (non sûr)•60 minutes
Affectation 6 : Emulation de diagramme de temps - non harmonique, échec RM, succès DM•60 minutes
Priorité dynamique Délai le plus court d'abord et Laxité la plus faible d'abord
Module 3•10 heures à terminer
Détails du module
À la fin de ce module, les apprenants sauront quand utiliser les politiques de priorité dynamique, leurs avantages pour le temps réel doux, leurs inconvénients pour la détection et la récupération des erreurs, les défis de la détermination de la faisabilité et de l'efficacité par rapport à la priorité fixe.
Inclus
6 vidéos4 lectures1 devoir1 devoir de programmation1 évaluation par les pairs
Afficher les informations sur le contenu du module
6 vidéos•Total 73 minutes
Avantages des priorités dynamiques et utilisation du FED•17 minutes
Inconvénients des priorités dynamiques et cas où le FED ne doit pas être utilisé•10 minutes
Avantages de la programmation dynamique et adaptative : Quand utiliser LLF•13 minutes
Inconvénients de l'ordonnancement adaptatif dynamique : Quand le LLF ne doit pas être utilisé•4 minutes
Comparaison finale des modes de défaillance et de rétablissement de l'EDF et du LLF•11 minutes
Introduction et aperçu de l'outil Cheddar•18 minutes
4 lectures•Total 210 minutes
Taux monotone contre EDF - Document de synthèse•180 minutes
Principes fondamentaux du FED Livre et documents clés•10 minutes
Référence : Key Least Laxity First Papers•10 minutes
Mise à jour des outils et exemples de Cheddar 3.2 !•10 minutes
1 devoir•Total 30 minutes
Module 3 - L'échéance la plus proche d'abord, la laxité la plus faible d'abord•30 minutes
1 devoir de programmation•Total 180 minutes
Affectation 7 : Emulation de diagramme de temps - non harmonique, échec RM, succès EDF et LLF•180 minutes
1 évaluation par les pairs•Total 120 minutes
Affectation 7 : Emulation de diagramme de temps - non harmonique, échec RM, succès EDF et LLF•120 minutes
Synchronisation et blocage limité ou non limité
Module 4•13 heures à terminer
Détails du module
À la fin de ce module, les apprenants seront en mesure de décrire les problèmes liés aux ressources utilisées en dehors de l'unité centrale (mémoire, E/S et stockage) et de savoir comment les éviter ou les résoudre
Inclus
12 vidéos2 lectures1 devoir2 évaluations par les pairs
Afficher les informations sur le contenu du module
12 vidéos•Total 152 minutes
Note sur les méthodes de synchronisation de Linux par rapport au RTOS•17 minutes
Blocage libérable pour la libération des services•6 minutes
Blocage limité et impact de l'efficacité d'exécution sur les systèmes RT•25 minutes
Définition du blocage non limité et exemples de causes racines•18 minutes
Code Walkthrough : Attente circulaire - Démonstration d'un blocage•6 minutes
Guide du code : Pouvez-vous trouver un moyen simple de sortir d'une impasse après un délai d'attente ?•4 minutes
Examen de l'utilisation des sémaphores et de la nécessité d'une section critique (S.C.)•4 minutes
Code Walkthrough : Démonstration de l'inversion de priorité non bornée•8 minutes
Héritage de priorité, plafond de priorité et émulation de plafond de priorité•19 minutes
Mars Pathfinder Problem - Rolling Reset 3 jours avant l'approche la plus proche de Mars•19 minutes
Analyse des causes profondes de la sonde Mars Pathfinder•10 minutes
Mars Pathfinder - La localisation des bogues et la correction•16 minutes
2 lectures•Total 250 minutes
Protocole d'inversion de priorité (non borné) et d'héritage de priorité•240 minutes
OPTIONNEL : L'évolution de Linux en temps réel•10 minutes
1 devoir•Total 30 minutes
Module 4 | Synchronisation des threads•30 minutes
2 évaluations par les pairs•Total 360 minutes
Linux n'a pas de protocole d'héritage de priorité ou de plafond - Pourquoi ? Que peut-on faire ?•180 minutes
Qu'est-il réellement arrivé au Mars Pathfinder ? Pourquoi y a-t-il plusieurs histoires ?•180 minutes
Obtenez un certificat professionnel
Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.
Préparer un diplôme
Ce site cours fait partie du (des) programme(s) diplômant(s) suivant(s) proposé(s) par University of Colorado Boulder. Si vous êtes admis et que vous vous inscrivez, les cours que vous avez suivis peuvent compter pour l'apprentissage de votre diplôme et vos progrès peuvent être transférés avec vous.¹
Consulter les diplômes éligibles
Préparer un diplôme
Ce site cours fait partie du (des) programme(s) diplômant(s) suivant(s) proposé(s) par University of Colorado Boulder. Si vous êtes admis et que vous vous inscrivez, les cours que vous avez suivis peuvent compter pour l'apprentissage de votre diplôme et vos progrès peuvent être transférés avec vous.¹
¹La réussite de la candidature et de l'inscription est requise. Les conditions d'admissibilité s'appliquent. Chaque établissement détermine le nombre de crédits reconnus en complétant ce contenu qui peut compter pour les exigences du diplôme, en tenant compte de tout crédit existant que vous pourriez avoir. Cliquez sur un cours spécifique pour plus d'informations.
CU Boulder est une communauté dynamique de chercheurs et d'apprenants sur l'un des campus universitaires les plus spectaculaires du pays. En tant que l'un des 34 établissements publics américains membres de la prestigieuse Association des universités américaines (AAU), nous sommes fiers de notre tradition d'excellence universitaire, avec cinq lauréats du prix Nobel et plus de 50 membres d'académies académiques prestigieuses.
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?
Felipe M.
Étudiant(e) depuis 2018
’Pouvoir suivre des cours à mon rythme à été une expérience extraordinaire. Je peux apprendre chaque fois que mon emploi du temps me le permet et en fonction de mon humeur.’
Jennifer J.
Étudiant(e) depuis 2020
’J'ai directement appliqué les concepts et les compétences que j'ai appris de mes cours à un nouveau projet passionnant au travail.’
Larry W.
Étudiant(e) depuis 2021
’Lorsque j'ai besoin de cours sur des sujets que mon université ne propose pas, Coursera est l'un des meilleurs endroits où se rendre.’
Chaitanya A.
’Apprendre, ce n'est pas seulement s'améliorer dans son travail : c'est bien plus que cela. Coursera me permet d'apprendre sans limites.’
Quelles sont les exigences matérielles et logicielles pour ce cours ?
Configuration requise
● Un ordinateur Windows ou MAC pour l'accès à distance au Raspberry Pi
● Un réseau domestique avec accès à Internet et un routeur permettant d'atteindre le Raspberry Pi sur le réseau local (Wi-Fi ou Ethernet)
● SSH activé sur le Raspberry Pi (obligatoire)
● VNC activé sur le Raspberry Pi (facultatif, pour l'accès au bureau à distance)
Exigences matérielles
Pour compléter cette spécialisation, vous aurez besoin d'une configuration de laboratoire à domicile basée sur une plate-forme Linux embarquée prise en charge. La configuration suivante est requise et testée pour toutes les activités du cours.
Matériel requis
● Plate-forme matérielle Linux embarquée - Recommandée : Raspberry Pi 3B+ (famille Raspberry Pi ou équivalent)
● Carte MicroSD (16 Go minimum ; 32 Go recommandés)
● Alimentation [context sensitive] de 5V / 2,5A avec interrupteur
● Caméra USB compatible UVC (USB 2.0 ou supérieur)
● Carte microSD (préchargée avec NOOBS ou Raspberry Pi OS)
● Dissipateurs thermiques
● Boîtier
● Alimentation [context sensitive] 5V / 2,5A avec interrupteur
● Câble HDMI
● Caméra USB compatible UVC (USB 2.0 ou mieux)
Configurations matérielles alternatives
Bien que le Raspberry Pi 3B+ soit la plateforme officiellement prise en charge, vous pouvez utiliser d'autres plateformes embarquées compatibles avec Linux à vos propres risques :
● Raspberry Pi 4 (offre USB 3.0, 2+ Go de RAM et Gigabit Ethernet)
Remarque : tout le code de démarrage fourni dans cette spécialisation est testé et vérifié sur le Raspberry Pi 3B+ avec Raspberry Pi OS (anciennement Raspbian).
Exigences logicielles
Capacité à installer et à utiliser l'un des outils d'accès à distance suivants sur votre ordinateur :
● MobaXterm (recommandé pour Windows)
● PuTTY
● VNC Viewer
Quand aurai-je accès aux cours et aux devoirs ?
Pour accéder aux supports de cours, aux devoirs et pour obtenir un certificat, vous devez acheter l'expérience de certificat lorsque vous vous inscrivez à un cours. Vous pouvez essayer un essai gratuit ou demander une aide financière. Le cours peut proposer l'option "Cours complet, pas de certificat". Cette option vous permet de consulter tous les supports de cours, de soumettre les évaluations requises et d'obtenir une note finale. Cela signifie également que vous ne pourrez pas acheter un certificat d'expérience.
Qu'est-ce que je recevrai si je souscris à cette Specializations ?
Lorsque vous vous inscrivez au cours, vous avez accès à tous les cours de la spécialisation et vous obtenez un certificat lorsque vous terminez le travail. Votre certificat électronique sera ajouté à votre page Réalisations - de là, vous pouvez imprimer votre certificat ou l'ajouter à votre profil LinkedIn.
Une aide financière est-elle disponible ?
Oui, pour certains programmes de formation, vous pouvez demander une aide financière ou une bourse si vous n'avez pas les moyens de payer les frais d'inscription. Si une aide financière ou une bourse est disponible pour votre programme de formation, vous trouverez un lien pour postuler sur la page de description.