No label defined (Q4024005)

From MaRDI portal

!

This is the item page for this Wikibase entity, intended for internal use and editing purposes. Please use the normal view instead:

scientific article; zbMATH DE number 108539
Language Label Description Also known as
default for all languages
No label defined
    English
    No label defined
    scientific article; zbMATH DE number 108539

      Statements

      0 references
      23 January 1993
      0 references
      parallel programming
      0 references
      concurrent programming
      0 references
      programming logic
      0 references
      synchronization
      0 references
      semaphores
      0 references
      communications
      0 references
      message passing
      0 references
      remote procedure calls
      0 references
      Turing Plus
      0 references
      Occam
      0 references
      Ada
      0 references
      SR
      0 references
      Linda
      0 references
      This book is a university text for a comprehensive course on concurrent programming. Its ``ultimate goal'' is to make readers ``understand how to construct correct concurrent programs'' (p. 7). It starts from a short introduction to programming logic as applied to sequential programming (Chapter 1). Then, it introduces notions of concurrency and synchronization, and extends the programming logic to include concurrent execution, interference and freedom from interference (Chapter 2). Both chapters, 1 and 2, form an introduction to the book, i.e., its Part 1. Part 2 (Chapters 3-6) is devoted to concurrent programming with the use of shared memory (variables). It presents various synchronization and concurrent programming abstraction mechanisms, including critical sections, semaphores, conditional critical regions, and monitors. Part 3 (Chapters 7-9) concerns concurrent programming based on communications, i.e., message passing, without shared memory. It presents notions of asynchronous message passing (distributed programming), synchronous message passing (heartbeat algorithms, broadcast algorithms, etc.), remote procedure calls and rendezvous. Part 4 (Chapter 10) is an overview of five concurrent programming languages: Turing Plus, Occam, Ada, SR, Linda, each with an example of a program showing the strength of the language. Chapters 2-9 all have a similar systematic structure. They start from programming notation used for the corresponding kind of concurrent programming. Then, they present its formal semantics and proofs, followed by a number of examples -- problems posed and solved in the given notation. Each of the chapters includes also a section on possible implementations of the notions concerned, historical notes and references, and a variety of exercises. The book has become popular in a number of universities throughout the world because: (a) it is a good text for a concurrent programming course, and (b) it can be accompanied by a freely available implementation of SR -- one of the languages mentioned above, that includes majority of concurrent programming facilities described and explained in the text.
      0 references

      Identifiers

      0 references
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references