• Unit 3: Synchronization

    Because a number of different entities will need to access data, it is important to learn how to maintain a consistent view of data across the OS. This is why we need a good synchronization management system. We will begin this section with an overview of why synchronization is so important to an Operating System and the problems that could arise if synchronization is not handled properly. The discussion will continue with an overview of Race Conditions (or system flaws in which the output of a given process is problematically dependent on the sequence of other events), and finally, Semaphores as a way of preventing Race Conditions and other more advanced alternatives to Semaphores, such as Monitors and Messages.

    Completing this unit should take you approximately 12 hours.