Outils d'analyse de performance de systèmes d'exploitation avec partitionnement spatial et temporel

Guillaume Champagne

Mémoire de maîtrise (2019)

Accéder à ce document
Disponible
Libre accès au texte intégral dans PolyPublie
Texte Texte • 1MB •

Résumé

Dans le domaine de l'avionique commerciale, les systèmes informatisés sont de plus en plus nombreux et complexes. Le partage des ressources devient alors une nécessité afin de limiter leur croissance en masse et en coût. Puisque ces systèmes embarqués évoluent dans un environnement imposant des contraintes temporelles et de sécurité très strictes, les systèmes d'exploitation temps réel utilisés doivent être conçus spécialement pour ces conditions. Dans ce contexte, le standard ARINC 653 définissant le comportement et les interfaces de systèmes avec partitionnement spatial et temporel a été publié. Ces systèmes d'exploitation fournissent les garanties nécessaires au partage des ressources dans un domaine temps réel critique. Lors du développement d'applications sur ce genre de systèmes, les techniques de débogage classiques ne sont pas adaptées pour tous les types de problèmes pouvant survenir. En effet, l'arrêt complet de l'exécution d'un programme temps réel influence trop son comportement pour que la chaîne d'évènements menant au problème recherché soit observable. Par conséquent, l'enregistrement d'informations durant l'exécution pour une analyse a posteriori est une méthode avantageuse pour ce type de situation. Le traçage est une technique qui permet aussi de récupérer l'information sur le temps d'exécution de certaines composantes, ce qui peut être utile pour la caractérisation de performances du système. Pourtant, la disponibilité de tels outils pour les systèmes d'exploitation temps réel avec partitionnement spatial et temporel est très limitée en ce moment. Dans ce mémoire, nous présentons un environnement d'analyse de traces pour les systèmes temps réel avec partitionnement spatial et temporel. Nous considérons l'exécution de processus à l'intérieur de partitions et l'ordonnancement de ces deux éléments par le système d'exploitation. Grâce à l'information contenue dans une trace, un historique des états des processus à travers le temps est reconstruit. La solution est testée sur Linux et Xen, deux systèmes pour lesquels nous créons des configurations s'approchant du comportement d'un système d'exploitation avec partitionnement spatial et temporel. Pour montrer l'utilité de cet outil de visualisation pour le diagnostic de problèmes de performances, nous développons un banc d'essai adapté aux systèmes avec partitionnement spatial et temporel. Le banc d'essai est conçu pour être utilisé de façon indépendante ou de pair avec l'environnement d'analyse de traces. Cette deuxième option permet d'identifier automatiquement les valeurs extrêmes dans les résultats afin d'observer l'état du système lors de leurs occurrences. Avec cette fonctionnalité, nous montrons comment notre solution permet aussi le diagnostic de problèmes causés par l'exécution concurrente d'applications mal isolées.

Programme:
Génie informatique
Directeurs ou directrices:
Adresse URL de PolyPublie:
Université/École:
Polytechnique Montréal
OAI:
oai:publications.polymtl.ca:4014
ORCID
Date du dépôt:
18 nov. 2019 13:27
Dernière modification:
14 oct. 2026 10:42
Citer en APA 7:
Champagne, G. (2019). Outils d'analyse de performance de systèmes d'exploitation avec partitionnement spatial et temporel [Mémoire de maîtrise, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/4014/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Actions réservées au personnel

Afficher document
Afficher document