Concurrent Programming: Algorithms, Principles, and Foundations
Title | Concurrent Programming: Algorithms, Principles, and Foundations PDF eBook |
Author | Michel Raynal |
Publisher | Springer Science & Business Media |
Pages | 530 |
Release | 2012-12-30 |
Genre | Computers |
ISBN | 3642320279 |
This book is devoted to the most difficult part of concurrent programming, namely synchronization concepts, techniques and principles when the cooperating entities are asynchronous, communicate through a shared memory, and may experience failures. Synchronization is no longer a set of tricks but, due to research results in recent decades, it relies today on sane scientific foundations as explained in this book. In this book the author explains synchronization and the implementation of concurrent objects, presenting in a uniform and comprehensive way the major theoretical and practical results of the past 30 years. Among the key features of the book are a new look at lock-based synchronization (mutual exclusion, semaphores, monitors, path expressions); an introduction to the atomicity consistency criterion and its properties and a specific chapter on transactional memory; an introduction to mutex-freedom and associated progress conditions such as obstruction-freedom and wait-freedom; a presentation of Lamport's hierarchy of safe, regular and atomic registers and associated wait-free constructions; a description of numerous wait-free constructions of concurrent objects (queues, stacks, weak counters, snapshot objects, renaming objects, etc.); a presentation of the computability power of concurrent objects including the notions of universal construction, consensus number and the associated Herlihy's hierarchy; and a survey of failure detector-based constructions of consensus objects. The book is suitable for advanced undergraduate students and graduate students in computer science or computer engineering, graduate students in mathematics interested in the foundations of process synchronization, and practitioners and engineers who need to produce correct concurrent software. The reader should have a basic knowledge of algorithms and operating systems.
Parallel and Concurrent Programming in Haskell
Title | Parallel and Concurrent Programming in Haskell PDF eBook |
Author | Simon Marlow |
Publisher | "O'Reilly Media, Inc." |
Pages | 322 |
Release | 2013-07-12 |
Genre | Computers |
ISBN | 1449335926 |
If you have a working knowledge of Haskell, this hands-on book shows you how to use the language’s many APIs and frameworks for writing both parallel and concurrent programs. You’ll learn how parallelism exploits multicore processors to speed up computation-heavy programs, and how concurrency enables you to write programs with threads for multiple interactions. Author Simon Marlow walks you through the process with lots of code examples that you can run, experiment with, and extend. Divided into separate sections on Parallel and Concurrent Haskell, this book also includes exercises to help you become familiar with the concepts presented: Express parallelism in Haskell with the Eval monad and Evaluation Strategies Parallelize ordinary Haskell code with the Par monad Build parallel array-based computations, using the Repa library Use the Accelerate library to run computations directly on the GPU Work with basic interfaces for writing concurrent code Build trees of threads for larger and more complex programs Learn how to build high-speed concurrent network servers Write distributed programs that run on multiple machines in a network
On Concurrent Programming
Title | On Concurrent Programming PDF eBook |
Author | Fred B. Schneider |
Publisher | Springer Science & Business Media |
Pages | 482 |
Release | 2012-12-06 |
Genre | Computers |
ISBN | 1461218306 |
Here, one of the leading figures in the field provides a comprehensive survey of the subject, beginning with prepositional logic and concluding with concurrent programming. It is based on graduate courses taught at Cornell University and is designed for use as a graduate text. Professor Schneier emphasises the use of formal methods and assertional reasoning using notation and paradigms drawn from programming to drive the exposition, while exercises at the end of each chapter extend and illustrate the main themes covered. As a result, all those interested in studying concurrent computing will find this an invaluable approach to the subject.
Concurrent Programming on Windows
Title | Concurrent Programming on Windows PDF eBook |
Author | Joe Duffy |
Publisher | Addison-Wesley Professional |
Pages | 958 |
Release | 2009 |
Genre | Computers |
ISBN | 9780321434821 |
This practical book includes a tutorial of the entire set of Windows and .NET APIs required to write concurrent programs. Because so much of the threading and synchronization features of the platform are Windows-general, the author, Joe Duffy, focuses first on the general behavior and then on the API details of native and managed code. Interspersed among the tutorial are many difficult-to-discover, useful insights, and internal details about how things work.
Concurrent Programming in Java
Title | Concurrent Programming in Java PDF eBook |
Author | Douglas Lea |
Publisher | Addison-Wesley Professional |
Pages | 426 |
Release | 2000 |
Genre | Computers |
ISBN | 9780201310092 |
Software -- Programming Languages.
Start Concurrent
Title | Start Concurrent PDF eBook |
Author | Barry Wittman |
Publisher | Purdue University Press |
Pages | 598 |
Release | 2013-12-31 |
Genre | Computers |
ISBN | 1626710104 |
Multicore microprocessors are now at the heart of nearly all desktop and laptop computers. While these chips offer exciting opportunities for the creation of newer and faster applications, they also challenge students and educators. How can the new generation of computer scientists growing up with multicore chips learn to program applications that exploit this latent processing power? This unique book is an attempt to introduce concurrent programming to first-year computer science students, much earlier than most competing products. This book assumes no programming background but offers a broad coverage of Java. It includes over 150 numbered and numerous inline examples as well as more than 300 exercises categorized as "conceptual," "programming," and "experiments." The problem-oriented approach presents a problem, explains supporting concepts, outlines necessary syntax, and finally provides its solution. All programs in the book are available for download and experimentation. A substantial index of at least 5000 entries makes it easy for readers to locate relevant information. In a fast-changing field, this book is continually updated and refined. The 2014 version is the seventh "draft edition" of this volume, and features numerous revisions based on student feedback. A list of errata for this version can be found on the Purdue University Department of Computer Science website.
The Origin of Concurrent Programming
Title | The Origin of Concurrent Programming PDF eBook |
Author | Per Brinch Hansen |
Publisher | Springer Science & Business Media |
Pages | 532 |
Release | 2013-06-29 |
Genre | Computers |
ISBN | 1475734727 |
An essential reader containing 19 important papers on the invention and early development of concurrent programming and its relevance to computer science and computer engineering. All of them are written by the pioneers in concurrent programming, including Brinch Hansen himself, and have introductions added that summarize the papers and put them in perspective. The editor provides an overview chapter and neatly places all developments in perspective with chapter introductions and expository apparatus. Essential resource for graduates, professionals, and researchers in CS with an interest in concurrent programming principles. A familiarity with operating system principles is assumed.