Alors les gars, discutons maintenant du dernier sujet de la mémoire partagée dans ce cours vidéo.
Nous allons voir comment la mémoire vive peut être utilisée comme source de données lorsqu'il s'agit de mémoire partagée.
Vous pouvez donc voir dans ce diagramme que nous avons un processus P un et un processus P deux.
Une chose que vous pouvez remarquer ici est que nous n'avons pas de source externe ou de mémoire
externe sur ce que les processus P1 et P2 ont cartographié.
Il s'agit de pages virtuelles.
Rappelez-vous que ces pages virtuelles de couleur verte ont été créées par un appel système à la carte.
Ainsi, les deux processus P1 et P2 ont créé leurs pages virtuelles à l'aide du système de cartes.
Call et les affecter aux deux pages physiques qui sont chargées dans la mémoire vive.
D'accord.
Cela signifie simplement que ces deux pages physiques chargées dans la mémoire vive sont partagées par le processus
P1 et le processus P2 et que cette exigence est suffisante lorsque les deux processus ou plus présents dans le système doivent effectuer
une communication interprocessus.
D'accord.
Ainsi, chaque fois qu'il est nécessaire qu'un processus p one partage ses données avec un autre processus.
P deux Dans ce cas, il est amplement suffisant d'utiliser la mémoire vive comme source de données.
D'accord.
Ainsi, les CPU accèdent à la RAM des millions de fois plus rapidement que les CPU accèdent au disque dur ou à toute autre source externe de
mémoire.
Ainsi, lorsque le processus doit communiquer intégralement et qu'il est nécessaire d'utiliser
une approche de mémoire partagée, il est plus que suffisant de mapper les pages de mémoire virtuelle avec
les pages physiques.
C'est plus que suffisant.
Dans ce cas, il n'est absolument pas nécessaire de disposer d'une source de mémoire externe.
Supposons que le processus P1, au cours de son fonctionnement, maintienne une sorte de structure de données, une
sorte de tableau dans sa mémoire virtuelle.
D'accord.
Ainsi, dès que le processus effectue une opération de mise à jour, cette table, la même table, et les modifications apportées
à cette table sont instantanément répercutées dans le processus.
P2 Mémoire virtuelle car la table est en fait plafonnée dans les pages physiques qui sont partagées par
les deux processus.
D'accord.
Évidemment, la table des pages du processus P1 sera mise à jour, comme je l'ai décrit dans le cours vidéo
précédent, afin que leurs pages de mémoire virtuelle respectives, qui sont créées par l'appel système map,
correspondent aux pages de mémoire physique qui sont chargées dans la RAM.
Les pages virtuelles sont donc à la fois des cartes de processus pour les mêmes pages physiques qui sont chargées dans ces pages.
Cette technique est largement utilisée chaque fois que les processus doivent être communiqués pour résoudre
la logique de l'entreprise.
D'accord.
Et comme je l'ai dit, il n'y a pas de mémoire externe impliquée.
Donc des pages physiques.
Les pages physiques n'ont donc pas besoin de synchroniser leurs données avec une source externe, car cette
dernière n'est pas nécessaire.
Lorsque je parle de source externe, il s'agit d'une mémoire externe.
D'accord.
Il s'agit donc du dernier concept lié à la mémoire partagée.
Nous avons passé suffisamment de temps à discuter de la théorie de la mémoire partagée.
A partir du dernier cours, nous allons écrire quelques programmes dans lesquels nous nous familiariserons
avec l'appel système map et les API associées, qui fonctionnent avec la mémoire partagée.
Nous verrons également comment, en utilisant l'approche de la mémoire partagée, nous pouvons mettre en œuvre la communication entre les processus.