General
About CSC
Organisation

People
Process for CSC hosting
School Models
Role of Local Organisers
Other Roles

Participants
Past Schools

2004 2005 2006 2007 2008 2009 2010 2011

Diploma at CSC
Sport at CSC
Inverted CSCs

iCSC05 iCSC06 iCSC08 iCSC10 iCSC11

Special schools

School@chep06

Inverted School 2006

CSC 2006

CSC2006 Overview

Practical Information

Programme

Schedule

Lecturers

Participants

Organisers

 
Examination results
 
Grants from EU -FP6

Eligibility Conditions

Level of grant support

How to apply
 

CSC-Live

School at chep06

     

inverted CERN School of Computing 2006 6-8-March 2006, CERN

Programme Overview

Computational Intelligence for HEP Data Analysis

The Art of Designing Parallel Applications

Software Testing: Fundamentals and Best Practices

Schedule

Lecturers

Lecturer Bios

Printable Version

Synchronizing Threads and Processes

   

Tuesday 7 March

 
10:05 - 11:00

Lecture 2

Synchronizing Threads and Processes

 

Marek Biskup

The lecture will give an overview of ways and means of synchronizing threads and processes of a parallel application running on a multi-CPU system.  It is meant for programmers designing multithreaded applications and willing to learn more about general techniques.


It requires basic understanding of multiprogramming computer systems (threads, processes).


Additional knowledge of Java will help in better understanding of the examples.

 

Introduction and Motivation
- Concurrent Programs

- Example: a Concurrent Web Server

- Parallel Execution

- Processes and Threads


Synchronizing Access to Memory

- Example of Memory Corruption

- Critical Section

- Hardware Support - the test-and-set Instruction

 

Means of Synchronization

- Mutexes

- Bounded Buffer Example

- Semaphores

- Monitor Objects

- Java Monitors

- Condition Variables

- Bounded Buffer with Monitor Object and Condition

 

Using Threads

- Java

- Complete Bounded-Buffer example

- C-Language Threads - the pthreads

 

The new Concurrent Java API

 

Interprocess Communication in UNIX

 

 

iCSC
All on iCSCs
News
Registration

Post-reg.

Handouts
Forum
Programme

Computational Intelligence
Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

All lectures

Parallel Application

Theme

Lecture1

Lecture2

Lecture3

Lecture4

Lecture5

All lectures

SW Testing
Theme

Lecture1

Lecture2

All lectures

Exercises
FAQ
Social Events

Feedback: Computing (dot) School (at) cern (dot) ch
Last update: Thursday, 14. November 2013 11:49

Copyright CERN