2.  In simple form you put a mutex around the resource(s).  It's like a 
semaphore but holds the process ID of the holder of the resource(s). 

If the mutex is non zero you can't have the resource(s). Either turning off 
interrupts for older smaller processors or the link lock sequence for 
multi-core/thread/task processors prevents those issues. 

Priority inversion where a low priority task now owns the mutex is different. 
Capturing a mutex can often result in the low priority task being raised high 
so it can finish, release the mutex and the revert to low priority. 

But that's all more app dependent. 
John. 



Sent from John's iPhone 4S

On 2019-07-27, at 11:21 AM, Chris Albertson <albertson.ch...@gmail.com> wrote:
.
> 2. what if the process uses two queues?  Process A might hold access to
> Queue X and process B holds Y and then each waits for the other process to
> release the other queue and the system deadlocks.
>>> 


_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to