CST334: Week 6 Journal

     This week i learned about semaphores. Semaphores are atomic operations that allow processes to synchronize.  Semaphores can encounter non-deadlock bugs such as atomicity-violation bugs and order violation bugs. Atomicity can be solved by creating a lock around shared variable references, while order violation bugs can be enforced using condition variables. They can also encounter various deadlock bugs. Circular wait deadlocks can be prevented via a total ordering on lock acquisition. Hold-and-wait deadlocks can be prevented by acquiring all locks at once. Deadlocks can be avoided via scheduling if global knowledge of what multiple threads may grab during their execution. 

Comments

Popular posts from this blog

CST438 Week 6 Journal

CST439 Week 10 Journal

CST499 Week 14 Journal