Central Queensland University

MyInfocom

Faculty of Informatics and Communication

Olive - 85349 Home
Resources Communication Assessment About help

85349: Lecture 6

85349 Study Schedule

You are here: 85349 -> Resources -> Lectures -> 6

Search | Site Map

[ Questions or Comments ]


Lecture 6 is a large lecture examining very complex concepts related to mutual exclusion, process synchronisation, co-operating concurrent processes and critical sections. It includes a look at synchronisation tools such as semaphores and monitors and provides a number of examples of how these tools can be used to solve classic concurrency problems.

For 85349 this lecture is being spread over two weeks. Slides 1 through 32, which introduce the problem with cooperating concurrent processes and then examines some possible solutions to this problem, are covered during week 4. The remaining slides, looking at critical regions, monitors and transactions are covered during Week 5.

This lecture includes both audio and animations. What audio there is (not all the slides have audio, especially those with the animations) was produced in May 1998 in that little black room at DDCE.

Slides
The lecture slides are available individually or all on a single page (likely to be quite large).
Slide Title Slide Title
1 Process Synchronization 2 Background
3 Bounded-Buffer 4 Bounded­Buffer (Cont.)
5 Animation: Bounded-Buffer with Counter 6 Animation: Problem with Bounded-Buffer with Counter
7 The Critical­Section Problem 8 Solution to Critical­Section Problem
9 Initial Attempts to Solve Problem 10 Algorithm 1
11 Algorithm 2 12 Algorithm 3
13 Bakery Algorithm 14 Bakery Algorithm (Cont.)
15 Bakery Algorithm (Cont.) 16 Synchronization Hardware
17 Mutual Exclusion with Test­and­Set 18 Semaphore
19 Example: Critical Section for n Processes 20 Animation: Mutual Exclusion with Semaphores
21 Semaphore Implementation 22 Implementation (Cont.)
23 Semaphore as General Synchronization Tool 24 Animation: Semaphores as Process Synchronization
25 Deadlock and Starvation 26 Two Types of Semaphores
27 Implementing S as a Binary Semaphore 28 Implementing S (Cont.)
29 Classical Problems of Synchronization 30 Bounded­Buffer Problem
31 Bounded­Buffer Problem (Cont.) 32 Bounded­Buffer Problem (Cont.)
33 Readers-Writers Problem 34 Readers-Writers Problem (Cont.)
35 Dining­Philosophers Problem 36 Dining­Philosophers Problem (Cont.)
37 Critical Regions 38 Critical Regions (Cont.)
39 Example - Bounded Buffer 40 Bounded Buffer Example (Cont.)
41 Implementation: region x when B do S 42 Implementation (Cont.)
43 Implementation (Cont.) 44 Monitors
45 Monitors (Cont.) 46 Dining Philosophers Example
47 Monitor Implementation Using Semaphores 48 Monitor Implementation (Cont.)
49 Monitor Implementation (Cont.) 50 Monitor Implementation (Cont.)
51 Solaris 2 52 Atomic Transactions
53 Log­Based Recovery 54 Log­Based Recovery (Cont.)
55 Checkpoints - Reduce Recovery Overhead 56 Concurrent Atomic Transactions
57 Concurrent Atomic Transactions (Cont.) 58 Example of a Concurrent Serializable Schedule
59 Concurrent Atomic Transactions (Cont.) 60 Concurrent Atomic Transactions (Cont.)
61 Schedule Possible under Timestamp Protocol

[ Questions or Comments ]

You are here: 85349 -> Resources -> Lectures -> 6

Search | Site Map

Olive - 85349 Home Resources Communication Assessment About Help 85349 Study Schedule

Edit | © Central Queensland University
Last modified: Mon Apr 2 15:56:32 2001 by webmaster