Concurrent and Distributed Programming and Systems

Service description

Processes and threads. Purpose of programming with processes and threads. Life cycle and scheduling of processing and threads in operating systems. Examples of thread usage. Creating and terminating threads. Thread synchronization. Shared variables, critical sections. The problem of mutual exclusion and possibilities of addressing it. Semaphores, mutexes, condition variables. Pairwise simulations of different synchronization mechanisms in computer systems. Threads in UNIX systems. Threads in Java. Monitor. Thread safety.. Deadlock, livelock, polling. Correctness of multithreaded programs. Efficiency of multithreaded programs. Parallel scientific computing with shared memory. Related information technologies. Parallel programming.

Type of methodology: Combination of lecture and hands-on

Participants receive the certificate of attendance: Yes

Paid training activity for participants: Yes, for all

Participants prerequisite knowledge: Numerical methods (linear algebra, statistics) Domain-specific background knowledge

Level
Potential users
Scientific Domain
Mathematics
Category
Training events
Service valid until
Audience
Research and Academia
Location category
Language
English
Technical Domain
Not Relevant
Format
In person
Initiative
Castiel and EuroCC
Country