-1

Schéma de planification: préemptif ordonnancement prioritéEst-ce un exemple de livelock, de blocage ou de famine?

Situation:

processus L (faible priorité) acquiert une spinlock sur une ressource (R). Bien que toujours dans la section critique, L est préempté en raison de l'arrivée d'un autre processus - H (Priorité supérieure) dans la file d'attente prête. . Cependant, H doit également accéder à la ressource R et essaie donc d'acquérir un verrou d'essorage qui fait que H passe en attente d'occupation. Parce que les spinlocks sont utilisés, H ne passe jamais en attente et sera toujours en état En cours ou prêt (au cas où un processus prioritaire supérieur arriverait en file d'attente), empêchant L ou tout processus ayant une priorité inférieure à H de s'exécuter.

A) Tous les processus avec une priorité inférieure à H peut être considéré comme sous Famine

B) Tous les processus avec une priorité inférieure à H, ainsi que le processus H, peut être considéré comme dans une impasse. [Mais, alors les processus doivent-ils être en état d'attente pour que le système soit considéré dans une impasse?]

C) Tous les processus avec priorité inférieure à H ainsi que le processus H, peuvent être considéré comme étant dans un livelock. [Mais, alors seul l'état de H change constamment, tous les processus de priorité basse restent dans l'état Prêt. D) H seul peut être considéré comme étant dans livelock, tous les processus de priorité inférieure sont juste en dessous de l'état de tous les processus. la famine, pas en livelock.

E) H ne progressera pas, mais ne peut pas être considéré comme étant dans livelock. Tous les processus de priorité inférieure sont juste sous la famine, pas dans le livelock.

Lesquels des énoncés ci-dessus sont corrects? Peux-tu expliquer?

Répondre

0

Ce n'est pas un livelock, parce que la définition de livelock nécessite "states of the processes involved in the livelock constantly change with regard to one another", et que les états ici ne changent pas.

Le premier processus peut être considéré comme étant en panne de processeur, car s'il y avait un processeur supplémentaire, il pourrait fonctionner dessus et éventuellement relâcher le verrou et laisser le second processeur s'exécuter. La situation peut également être considérée comme une impasse, avec 2 ressources dans le graphe des ressources, et 2 processus essayant d'acquérir ces ressources dans des directions opposées: le premier processus possède le verrou et a besoin que le processeur continue, tandis que le second processus possède le processeur et a besoin du verrou pour continuer.