Explore le concept de verrouillage pour l'exclusion mutuelle dans le système d'exploitation, couvrant les conditions de race, le parallélisme, les instructions atomiques, la prévention de l'impasse et les meilleures pratiques.
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 é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 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.
Couvre les primitives de verrouillage nécessaires pour empêcher les conditions de course dans la programmation multithread, en se concentrant sur l'exclusion mutuelle et les opérations atomiques.
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 la gestion des transactions, le contrôle de la concurrence, les propriétés ACID, les anomalies et la sérialisation des conflits dans les systèmes de base de données.
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.
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.
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.
Couvre les bases de la concurrence, se concentrant sur les threads et la synchronisation, y compris l'assemblage des threads et les défis de l'exécution non déterministe.
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 mémoire transactionnelle pour le contrôle de la concurrence matérielle, en discutant des mécanismes de verrouillage, des compromis de performance et des modifications matérielles.
Couvre les techniques de contrôle de la concordance et éventuellement la cohérence dans les bases de données, y compris le verrouillage en deux phases, 2PL strict, et l'algorithme de Dynamo.
Se consacre à la gestion des transactions, au contrôle de la concordance et à la récupération dans les bases de données afin d'assurer l'intégrité des données et la résilience des systèmes.
Explore la mémoire transactionnelle et la simplification matérielle pour le contrôle de la concurrence dans les logiciels, mettant l'accent sur les avantages de la spéculation matérielle et de la concurrence déclarative.