os211

Top 10 Interesting Link of Week 07

01. Process Synchronization

Process synchronization in Linux involves providing a time slice for each process so that they get the required time for execution. This link is interesting because it explains about Orphan and Daemon process to the point.

02. Deadlock

Deadlock occurs when multiple threads need the same locks but obtain them in different order. This article tells us about deadlock with a few examples which help us understand about deadlock and that’s what make this link interesting.

03. Reasons to Avoid Synchronization Deadlocks

While synchronization carries a performance penalty, the penalty associated with uncontended synchronization is not as great as some sources have suggested, and has reduced steadily with each successive JVM implementation. This interesting article will explain about all of that very thoroughly with many source code examples.

04. Shared Memory and Distributed Memory

Individual CPU-cores can be put together to form large parallel machines in two fundamentally different ways: the shared and distributed memory architectures. This article will explain about shared memory and distributed memory. This link is interesting because it explains shared memory and distributed memory in a simple way.

05. Critical Section Problem

Critical Section is the part of a program which tries to access shared resources. This article explains about it pretty neatly and it has got some illustrations which make this link interesting.

06. Semaphore

Semaphore was proposed in 1965 which is a very significant technique to manage concurrent processes by using a simple integer value, which is known as a semaphore. This article helps us understand more about semaphore. This interesting also provides us with many examples and diagram.

07. Set Up Setuid, Setgid, and Sticky Bits on Linux

Setuid, Setgid and Sticky Bits are special types of Unix/Linux file permission sets that permit certain users to run specific programs with elevated privileges. This article helps us on do the set up. This link is interesting because it provides us with many example of the implementation.

08. Peterson’s Problem

Petersons solution provides a good algorithmic description of solving the critical-section problem and illustrates some of the complexities involved in designing software that addresses the requirements of mutual exclusion, progress, and bounded waiting. This article is interesting because beside explaining about the Peterson’s Solution flow, he also tells us about the disadvantage of this solution.

09. Resource and Allocation Graph

Resource allocation graph tells us what is the state of the system in terms of processes and resources. Like how many resources are available, how many are allocated and what is the request of each process. A full explanation can be read on the above article. This link is interesting because it provides us with many diagram which help me understand.

10. Recovery from Deadlock

When a Deadlock Detection Algorithm determines that a deadlock has occurred in the system, the system must recover from that deadlock. This short article tells us about the two approaches of breaking a Deadlock; process termination and resource preemption. This article is interesting because it’s short but managed to delivers all the important parts.