Simulateur de réseau
History /
Edit /
PDF /
EPUB /
BIB /
Updated: May 16, 2018 / Status: unknown / 1 min read (~146 words)
Updated: May 16, 2018 / Status: unknown / 1 min read (~146 words)
Description
Le simulateur de réseau émule un système de communication faisant usage de sémaphores afin de partager un nombre limité d'imprimantes communes. Tous les ordinateurs reçoivent une partie différente d'un «feed» qui contient des instructions sur ce que l'ordinateur doit effectuer. L'une de ces instructions est d'imprimer le contenu actuel de la mémoire de l'ordinateur. Pour se faire, il faut toutefois obtenir une imprimante, ce qui n'est pas toujours possible.
Snippet
// Attendre le mutex de cet ordinateur
sem_wait(&mutexOrdinateurs[ordi->mId-1]);
// Si terminé, simplement activer le prochain ordi
if (ordi->aTermine) {
// Libérer le mutex du prochain ordinateur
prochain = (ordi->mId) % nbOrdinateurs;
if (prochain != 0) {
sem_post(&mutexOrdinateurs[prochain]);
} else {
// Libérer le mutex principal
sem_post(&mutexPrincipal);
}
continue;
}
// Quelle instruction?
instructionMaintenant = ordi->instructions.front();
Options(features)
Aperçu