Programmation de la CPU 948
C79000-G8577-C848-04
Avant chaque positionnement ou libération d'un sémaphore donné, les
instructions SES et SEF contrôlent l'état de ce sémaphore. Les indica-
teurs FL 0 et FL 1 sont alors influencés comme indiqué ci-après.
FL 1
FL 0
Exploitation
0
0
SPZ
1
0
SPN, SPP
Nota
Le processus de test d'un sémaphore (lecture) et le processus de
positionnement ou de libération du sémaphore (écriture) forment
un tout. Durant ces opérations, aucune autre CPU ne peut accéder
à ce sémaphore.
Lors de l'utilisation des sémaphores, il est nécessaire de respecter les
points suivants :
• • Un sémaphore est une variable globale, c'est-à-dire que le séma-
phore ayant par exemple le numéro 16 n'est disponible qu'une seu-
le fois, même lors de l'utilisation de trois CPU.
• • Les instructions SES et SEF doivent être utilisées par toutes les
CPU dont l'accès à une zone de mémoire commune doit être coor-
donné.
• • Toutes les CPU concernées doivent avoir le même mode de démar-
rage. Lors d'un nouveau démarrage, tous les sémaphores sont ef-
facés par le programme système ; lors d'un redémarrage manuel
ou automatique, l'état des sémaphores est conservé.
• • En fonctionnement multiprocesseur, le démarrage doit être syn-
chronisé. De ce fait, le mode de test n'est pas autorisé.
Opérations sur sémaphores
Signification
Le sémaphore a été positionné par
une autre CPU et ne peut pas être
positionné, ni libéré.
Le sémaphore a été positionné ou
libéré.
3 - 77