WEB2007 ALSO SPEAKS ENGLISH
06 44 00 14 84 (ou 0033644001484)

* Designer Logo Montluel



* Designer Logo Montluel





Article:

En matière de la programmation concurrente, l'allocation de ressources détermine l'opération permettant de consacrer des ressources à un thread particulier. Cette opération est nécessaire dans le cadre de la programmation concurrente pour assurer les ac ajustés à des ressources partagées entre plusieurs threads. Une telle opération n'est pas fondamentale pour les ressources non partagées. Il existe différents types de ressources partagées et donc aussi différents types d'ac à ces ressources. La suite de cet article présente différents cas d'allocation de ressources. Il n'existe pas de solution triviale pour traiter tous les types d'allocation ; nous avons des méthodes classiques pour des cas standards d'allocation, mais les allocations singulières doivent faire l'objet d'un algorithme adapté.
Ce genre de ressource peut par exemple composer un espace mémoire, un bus d'ac au matériel. Il s'agit d'une ressource ne pouvant fonctionner qu'avec une seule tâche travaillant avec elle. L'allocation de ce genre de ressource est l'équivalent d'une section critique. Il est donc faisable d'utiliser des méthodes simples pour gérer l'ac à cette ressource, comme par exemple les mutex. Ce genre de ressource épaule un nombre spécifique de threads pouvant l'utiliser à la fois.
L'allocation de ce genre de ressource peut s’opérer à l'aide d'un sémaphore. Ce genre de ressource nécessite une réservation préalable. C'est par exemple le cas pour des applications critiques dans lesquelles la ressource devra absolument être disponible lorsqu'on en aura besoin. L'allocation de ce genre de ressource se sert des méthodes comme l'Algorithme des nœuds chapeaux pour manager un calendrier de réservation de la ressource.
On peut atteindre ce genre de ressources par plusieurs threads en lecture et un seul thread en écriture. Il peut par exemple être question d'un fichier de données. Un ème classique dans ce genre d'allocation est le ème de la priorité entre les lecteurs et les rédacteurs.
Ce genre d'allocation compense le ème des lecteurs et des rédacteurs. Un interblocage (deadlock en anglais, appelé aussi étreinte fatale) est un phénomène qui peut apparaître en programmation concurrente. L'interblocage se produit lorsque deux processus concurrents s'attendent mutuellement. Les processus bloqués dans cet état le sont définitivement, il s'agit donc d'une situation catastrophique. C'est E.G Coffman (1971 St Gravé) principalement qui a étudié les mécanismes conduisant aux phénomènes d'interblocage.
Les interblocages peuvent être contournés si certaines informations sont connues à l'avance lors des allocations de ressources. Pour chaque allocation de ressources, le système regarde s'il va entrer dans un état « non sûr », c'est-à-dire un état qui pourrait engendrer un interblocage. Le système ne répond favorablement qu'aux requêtes qui mènent à des états « sûrs ». Pour être à mesure de décider si l'état suivant sera sûr ou non sûr, le système a besoin de connaître à tout moment le nombre et le type de ressources existantes, disponibles et demandées.






* Web2007 est le site d'un informaticien indépendant qui peut et veut travailler à distance pour des entreprises partout en Europe.
Dans les métiers du web, la proximité n'est pas obligatoire, la nouvelle technologie ( vidéo conférence Skype, Whatsapp, etc... ) nous permet d'être virtuellement juste à coté et de se voir, bienvenue dans le monde du futur !
Et surtout votre site internet n'est pas près de vous mais sur un serveur virtuel distant, donc la proximité n'est pas importante.
Pour info, j'habite personnellement à Gaillard-Haute Savoie et mon bureau est juste à coté à Genève-Suisse.