Couvre la cohérence des caches dans les systèmes multiprocesseurs et les défis du maintien de la cohérence et de la cohérence dans les processeurs modernes.
Releve les défis de la synthèse de haut niveau et de l'optimisation des constructions de boucles en utilisant le modèle polyédrique pour améliorer les performances et la planification.
Couvre les principes de la synchronisation dans le calcul parallèle, en mettant l'accent sur la synchronisation de la mémoire partagée et différentes méthodes comme les verrous et les barrières.
Fournit une vue d'ensemble de l'architecture informatique, en se concentrant sur l'architecture de von Neumann et ses composants, y compris les unités de gestion du processeur et de la mémoire.
Couvre l'optimisation logicielle, l'efficacité du cache, la planification parallèle et les stratégies de distribution de travail pour les programmes parallèles rapides.
Couvre les bases de la programmation parallèle, y compris la concurrence, les formes de parallélisme, la synchronisation et les modèles de programmation tels que PThreads et OpenMP.
Explore l'organisation de la mémoire, la virtualisation, l'attribution dynamique de la mémoire, la pile, le tas et les techniques de virtualisation de la mémoire comme le registre de base et la segmentation.
Couvre l'abstraction des threads dans les systèmes informatiques, en se concentrant sur la concurrence, le parallélisme et la gestion des threads à l'aide de l'API POSIX.
Introduit la recherche dans les systèmes d'exploitation, expliquant les unités de gestion de la mémoire, l'abstraction de l'espace d'adresse, les tableaux de pages, et TLB.
Explore la virtualisation de la mémoire, les espaces d'adressage, les tables de pages, la mise en cache et les constantes de conception du système pour optimiser les performances et la fiabilité de la mémoire.
Couvre la virtualisation de la mémoire, en se concentrant sur l'abstraction de l'espace d'adressage et la gestion des ressources mémoire par le système d'exploitation.