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.
Explore les moniteurs comme une construction de synchronisation fournissant l'exclusion mutuelle et la coopération entre les threads, avec des exemples comme le tampon d'un seul endroit.
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 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 les mécanismes de synchronisation évolutive pour de nombreux systèmes d'exploitation de base, en mettant l'accent sur les défis de la gestion de la croissance des données et des régressions dans le système d'exploitation.
Explore l'importance de la synchronisation sans verrouillage pour obtenir une faible latence dans les systèmes distribués et discute des solutions pratiques pour la génération d'identificateurs uniques et les files d'attente de messagerie.
Explore les écueils de concurrence primitives, d'exclusion mutuelle et de synchronisation dans les systèmes d'exploitation, en mettant l'accent sur les variables de condition et les sémaphores.
Explore la sécurité des fils, la synchronisation et les collections simultanées dans Scala, en mettant l'accent sur une implémentation de file d'attente simultanée sans verrou.
Explore le parallélisme dans la programmation, en mettant l'accent sur les compromis entre la programmabilité et la performance, et introduit la programmation parallèle en mémoire partagée à l'aide d'OpenMP.
Explore l'importance de la concurrence dans l'amélioration des performances et de la réactivité du système, en mettant l'accent sur la nécessité de la synchronisation et de l'atomicité pour prévenir les conditions de course et le non-déterminisme.
Explore les threads dans la programmation, les défis de données partagées, les verrous et la gestion des threads dans les interfaces graphiques et les applications web.
Couvre les bases des opérations atomiques dans la proximité et le parallélisme, y compris les opérations fournies par le matériel et les algorithmes synchronisés.
Explique le modèle de cohérence séquentiel dans la concordance et le parallélisme, couvrant l'ordre des programmes, l'atomicité et les implications de performance.
Couvre la transition de la programmation mono-thread à la programmation multithread, en se concentrant sur les modèles de mémoire et les problèmes de cohérence.