begin process at 2012 05 29 12:46:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Système

 > 

Autre

 > 

moniteur_hoare


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

moniteur_hoare

vendredi 21 décembre 2007 à 16:10:38 | moniteur_hoare

nabilwael

Bonjour,
Je veux bien avoir quelqu'un qui peut m'aider à propos d'un sujet de Moniteur de Hoare (Algorithmique ou C).
Mon problème est le suivant:
1/voici l'interface:
Ressources:Moniteur
var max_ressources :entier;
....
proc Allouer (N:entier,...);
proc Libérer (N:entier,...);
Fin ressources
2/Sujet:
lorsq'un processus désire obtenir l'accès a plusieurs ressources critiques d'une même classe, il est souhaitable qu'il puisse acquérir ces ressources sous forme d'une seule requete.il en est de même pour la libération de l'accès à ses ressources.

Les solutions de l'allocateur multiple comportent les points suivants:
i-lors de l'appel d'une requête de N ressources, le nombre de ressources disponibles peut être suffisant et conduire donc, à satisfaire immédiatement cette requête alors qu'il existe ,d'autres requêtes plus élevés en attente.Une telle approche comporte un risque de "famine" pour les processus demandant beaucoup de ressources.
ii-lors d'une restitution de M ressources, le nombre de ressources disponibles peut permettre de satisfaire éventuellement plusieurs requête en attentes.il n'y a alors plus en relation entre processus libérant des ressources et un seul processus demandeur.En effet, une libération peut conduire à satisfaire plusieurs demandeurs.

3/Ce que je demande:
L'écriture de des procédures (Allouer et Libérer) pour résoudre ce problème avec deux stratégie:
i-FIFO:
Cette stratégie consiste à servir les requête dans leur ordre d'arrivé.Lors de l'appel d'une requête de N ressources, il ne peut pas satisfaire une nouvelle requête s'il existe déjà au moins une requête en attente.
ii-Ascenceur:
cette stratégie à pour but d'éviter la famine en assurant une répartition équitable des requêtes servis.Pour cela, on assure une satisfaction des requêtes selon un ordre croissant lorsqu'il y a des requêtes en attente, une requête peut être servie si le nombre de ressources est suffisant.
Il est nécessaire dans cette stratégie d'associer une condition à chaque niveau de requête de 1 à MAX_RESSOURCES.
De cette façon, il est possible de réveiller à coup sur un processus ayant demandé un nombre fixé de ressources.
Par ailleurs, il faut gérer le seuil de la dernière requête servie de façon à connaitre, lors d'une restitution de ressources, à partir de quel seuil des requêtes peuvent être servies.

Merci de bien m'aider.



Cette discussion est classée dans : requête, ressources, processus, requêtes, moniteur


Répondre à ce message

Sujets en rapport avec ce message

a laiiiiiiiiiiiiiiiiiiiiiiide svp [ par madVinz ] Salut,voila, j'ai visual studio 6.0, un jour, j'ai lancé le C++ alors que je n'avais plus beaucoup de ressources systèmes disponible, et ca ne ma pa a [MFC] Problème de combo box : affichage de la liste [ par robby ] Je n'arrive pas à voir ma drop down list (quand je clique sur ma combo box, la drop down list doit faire quelques pixels d'épaisseur!) et pourtant qua processus sous linux [g++] [ par satanik_mike ] Bonjour,Je suis en train de d?velopper un serveur POP, SMTP en C++ sous linux, mais je bloque sur une petit probl?me d'ex?cution.J'ai fait un ex?cutbl menu et ressources [ par Xs ] salut !!vala un pb de plus de ma part.donc, il est simple, j'ai fait une dialog en ressource, je l'ai intégrée a mon prog, ele marche trés bien, mais bitmap et ressources [ par Xs ] salut !ben si le titre n'en dit pas assez : comment inserer des bitmap dans des ressources ? (sous VC++ 6)j'ai bien "dessiné" son emplacement, mais je COMMENT ARRETER UN PROCESSUS [ par bily ] Vegeta :-)Salut les colleguesje voudrais savoir quelle est la commande qui me permettra d'arreter un processus , un programme qui tourne quoi, genre Comment integrer une dll dans les ressources et l'utiliser ? [VC++6] [ par dread ] Salut, j'aimerai savoir comment integrer une dll dans les ressources et l'utiliser comme bon me semble ensuite. Est ce possible ?MerciDread Ressources et VC++6 [ par Toobad ] Mon VC++ pose des prob avec les rc. Y en a qu'il ne charge pas lorsque je les appelle avec LoadIcon par ex et d'autres qu'ils chargent sans prob. J'ai le "kill(0,SIGTERM)" de Linux sous Win32 ? [ par Wulfaz ] je cherche une fonction C pour winNT & win98, équivalente à celle sous Linux/Unix : kill(0,SIGTERM). Pour ceux qui ne la connaisse pas elle envoie un commande PS [ par golgorak ] salut a tous ;je cherche a refaire la commande PS sous linux en c sous GTK+, mais je n'arrive pas a trouve l'adresse du tableau des processus ou une f


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales