Computer Science BooksConcurrent Programming Books

Concurrent Programming Class Notes

Concurrent Programming Class Notes

Concurrent Programming Class Notes

This note focuses on Concurrent Programming, Parallel Programming, Multi-Processing and Multi-Threading. Topics covered includes: Thread, Properties of a Thread, Lifecycle of a process, Concurrent Hardware, Basic Uniprocessor, Multiprocessors, Basic Hardware, Kessel’s Algorithm, Java Threads Scheduling Model, Compiler Optimization and Mutlithreading, Ticket Algorithm, Bakery Algorithm, Semaphores, Concurrency Problems with Deadlock, Speculative Multithreading (SpMT),Lifecycle of a process, Achieving good performances, Concurrent Hardware,  Granularity,  Atomicity,  Race Conditions,  Mutual Exclusion,  Brief Interruption to Introduce Java and PThreads, Java Threads Scheduling Model, Compiler Optimization and Mutlithreading, PThreads, Execution Scheduling Policies, Contention Scope,  Properties of Mutual Exclusion algorithms, Ticket Algorithm, Bakery Algorithm, Hardware Support for Concurrency, Splitter, Practical Lock Design, Tasuki Locks, Barrier, Semaphores, Condition Variables, Broadcasting, Building Semaphores using Monitors, Using Multiple Condition Variables, Readers and Writers Problem, Concurrency Problems with Deadlock, Dining Philosophers, Deadlock Solution, Scheduling and Priorities, Scheduling Guarantees, Priorities, Termination and Suspension, Miscellanous Issues,Memory Consistency, Relaxed Models,  Building Correctly Synchronized Programs,  Java Concurrency API, Condition Variable, Concurrent Data Structures, Message Passing, Process Algebra, Homogenous actors, Irregular Actors

Author(s):

s110 Pages
Similar Books
Concurrent Programming in Pharo

Concurrent Programming in Pharo

This PDF offers a real-world understanding of concurrent programming in the Pharo programming environment by concentrating on it. First, it introduces concurrent programming and leads to a simple example based on which the fundamental ideas are constructed. Some important concepts include creating processes, lifetimes, ProcessorScheduler, priorities of processes, and scheduler rules so that one can understand the management of the flow of executions. Discussions on important APIs accompany working examples of semaphores, which should help developers in their ability to learn synchronization techniques. It is designed for programmers to acquire all the skills one would need to implement concurrent solutions effectively in Pharo and thus can be a valuable member of any programmer's library.

s58 Pages
Advanced Concurrent Programming Notes

Advanced Concurrent Programming Notes

These notes provide a detailed expositions on advanced topics in concurrent programming; these are focused both on theoretical foundations as well as on practical applications of shared-variable programming. Among the various aspects treated are mutual exclusion techniques (such as Petersen's algorithm) and, of course, synchronization methods such as semaphores and monitors. The introduction of paradigms in distributed programming is also covered by means of remote procedure calls (RPC), as well as transactional memory, among other things. The module covers the proof outline logic of concurrent programs that allow for a rigorous approach toward understanding the correctness of concurrent systems. As graduate-level study notes perfect for anyone interested in comprehending concurrency in software development at a deeper level than usual, they provide an excellent approach toward understanding the reasoning of designs and also toward verifying critical properties in concurrent systems.

sNA Pages