Couvre les bases de la programmation parallèle, y compris l'exploitation du parallélisme dans les algorithmes et l'importance d'éviter les conditions de race.
Explore la synchronisation sans verrouillage pour des performances et une évolutivité dans les systèmes distribués, couvrant la génération d'identifiants uniques, les files d'attente de messagerie et les lectures RDMA atomiques.
Explore les fondements théoriques de RDMA et de NVRAM dans les technologies multiprocesseurs, couvrant la discorde, le contrôle de la convergence et la tolérance aux défauts.
Couvre Dafny pour la vérification formelle, la concordance de modélisation, les règles de sécurité, la vivacité et les concepts de mémoire transactionnelle.
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.
Couvre le passage aux processeurs multicœurs, à l'architecture de mémoire de processeur, aux défis de concurrence et aux problèmes de synchronisation dans l'informatique moderne.
Discute de la gestion des périphériques dans les systèmes d'exploitation, en se concentrant sur les pilotes de périphériques, la persistance et les techniques d'optimisation des performances.
Explore l'élégance et les défis des transactions, y compris les propriétés ACID et les avantages de la mémoire transactionnelle dans la programmation simultanée.
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.
Couvre le rôle du système d'exploitation en tant qu'arbitre dans la gestion des ressources et la sécurité grâce à l'isolement des pannes, au partage des ressources et à la communication.