Flylib.com
Parallel and Distributed Programming Using C++
Parallel and Distributed Programming Using C++
ISBN: 0131013769
EAN: 2147483647
Year: 2002
Pages: 133
Authors:
Cameron Hughes
,
Tracey Hughes
BUY ON AMAZON
Main Page
Table of content
Copyright
Preface
The Challenges
The Approach
Why C?
Libraries for Parallel and Distributed Programming
The New Single UNIX Specification Standard
Who is This Book For?
Development Environments Supported
Ancillaries
Acknowledgments
Chapter 1. The Joys of Concurrent Programming
1.1 What is Concurrency?
1.2 The Benefits of Parallel Programming
1.3 The Benefits of Distributed Programming
1.4 The Minimal Effort Required
1.5 The Basic Layers of Software Concurrency
1.6 No Keyword Support for Parallelism in C
1.7 Programming Environments for Parallel and Distributed Programming
SummaryToward Concurrency
Chapter 2. The Challenges of Parallel and Distributed Programming
2.1 The Big Paradigm Shift
2.2 Coordination Challenges
2.3 Sometimes Hardware Fails and Software Quits
2.4 Too Much Parallelization or Distribution Can Have Negative Consequences
2.5 Selecting a Good Architecture Requires Research
2.6 Different Techniques for Testing and Debugging are Required
2.7 The Parallel or Distributed Design Must Be Communicated
Summary
Chapter 3. Dividing C Programs into Multiple Tasks
3.1 Process: A Definition
3.2 Anatomy of a Process
3.3 Process States
3.4 Process Scheduling
3.5 Context Switching
3.6 Creating a Process
3.7 Terminating a Process
3.8 Process Resources
3.9 What are Asynchronous and Synchronous Processes?
3.10 Dividing the Program into Tasks
Summary
Chapter 4. Dividing C Programs into Multiple Threads
4.1 Threads: A Definition
4.2 The Anatomy of a Thread
4.3 Thread Scheduling
4.4 Thread Resources
4.5 Thread Models
4.6 Introduction to the Pthread Library
4.7 The Anatomy of a Simple Threaded Program
4.8 Creating Threads
4.9 Managing Threads
4.10 Thread Safety and Libraries
4.11 Dividing Your Program into Multiple Threads
Summary
Chapter 5. Synchronizing Concurrency between Tasks
5.1 Coordinating Order of Execution
5.2 Synchronizing Access to Data
5.3 What are Semaphores?
5.4 Synchronization: An Object-Oriented Approach
Summary
Chapter 6. Adding Parallel Programming Capabilities to C Through the PVM
6.1 The Classic Parallelism Models Supported by PVM
6.2 The PVM Library for C
6.3 The Basic Mechanics of the PVM
6.4 Accessing Standard Input ( stdin ) and Standard Output ( stdout ) within PVM Tasks
Summary
Chapter 7. Error Handling, Exceptions, and Software Reliability
7.1 What is Software Reliability?
7.2 Failures in Software Layers and Hardware Components
7.3 Definitions of Defects Depend on Software Specifications
7.4 Recognizing Where to Handle Defects versus Where to Handle Exceptions
7.5 Software Reliability: A Simple Plan
7.6 Using Map Objects in Error Handling
7.7 Exception Handling Mechanisms in C
7.8 Event Diagrams, Logic Expressions, and Logic Diagrams
Summary
Chapter 8. Distributed Object-Oriented Programming in C
8.1 Decomposition and Encapsulation of the Work
8.2 Accessing Objects in Other Address Spaces
8.3 The Anatomy of a Basic CORBA Consumer
8.4 The Anatomy of a CORBA Producer
8.5 The Basic Blueprint of a CORBA Application
8.6 The Naming Service
8.7 A Closer Look at Object Adapters
8.8 Implementation and Interface Repositories
8.9 Simple Distributed Web Services Using CORBA
8.10 The Trading Service
8.11 The ClientServer Paradigm
Summary
Chapter 9. SPMD and MPMD Using Templates and the MPI
9.1 Work Breakdown Structure for the MPI
9.2 Using Template Functions to Represent MPI Tasks
9.3 Simplifying MPI Communications
Summary
Chapter 10. Visualizing Concurrent and Distributed System Design
10.1 Visualizing Structures
10.2 Visualizing Concurrent Behavior
10.3 Visualizing the Whole System
Summary
Chapter 11. Designing Components That Support Concurrency
11.1 Taking Advantage of Interface Classes
11.2 A Closer Look at Object-Oriented Mutual Exclusion and Interface Classes
11.3 Maintaining the Stream Metaphor
11.4 User-Defined Classes Designed to Work with PVM Streams
11.5 Object-Oriented Pipes and fifos as Low-Level Building Blocks
11.6 Framework Classes Components for Concurrency
Summary
Chapter 12. Implementing Agent-Oriented Architectures
12.1 What are Agents?
12.2 What is Agent-Oriented Programming?
12.3 Basic Agent Components
12.4 Implementing Agents in C
12.5 Multiagent Systems
Summary
Chapter 13. Blackboard Architectures Using PVM, Threads, and C Components
13.1 The Blackboard Model
13.2 Approaches to Structuring the Blackboard
13.3 The Anatomy of a Knowledge Source
13.4 The Control Strategies for Blackboards
13.5 Implementing the Blackboard Using CORBA Objects
13.6 Implementing the Blackboard Using Global Objects
13.7 Activating Knowledge Sources Using Pthreads
Summary
Appendix A. Diagrams
A.1 Class and Object Diagrams
A.2 Interaction Diagrams
A.3 State Diagrams
A.4 Package Diagrams
Appendix B. System Interfaces
Bibliography
Parallel and Distributed Programming Using C++
ISBN: 0131013769
EAN: 2147483647
Year: 2002
Pages: 133
Authors:
Cameron Hughes
,
Tracey Hughes
BUY ON AMAZON
VBScript Programmers Reference
Variables and Procedures
Classes in VBScript (Writing Your Own COM Objects)
Client-Side Web Scripting
Super-Charged Client-Side Scripting
Remote Scripting
Kanban Made Simple: Demystifying and Applying Toyotas Legendary Manufacturing Process
Initial Startup and Common Pitfalls
Auditing the Kanban
Appendix B Kanban Supermarkets
Appendix E EOQ vs. Kanban
Appendix J Abbreviations and Acronyms
Microsoft Windows Server 2003(c) TCP/IP Protocols and Services (c) Technical Reference
Wide Area Network (WAN) Technologies
User Datagram Protocol
Transmission Control Protocol (TCP) Connections
Domain Name System (DNS)
File and Printer Sharing
Persuasive Technology: Using Computers to Change What We Think and Do (Interactive Technologies)
Computers as Persuasive Media Simulation
Computers as Persuasive Social Actors
Credibility and the World Wide Web
The Ethics of Persuasive Technology
Captology Looking Forward
Quantitative Methods in Project Management
Introduction to Probability and Statistics for Projects
Organizing and Estimating the Work
Making Quantitative Decisions
Expense Accounting and Earned Value
Special Topics in Quantitative Management
Understanding Digital Signal Processing (2nd Edition)
A COMPLEX DOWN-CONVERSION EXAMPLE
INCOHERENT AVERAGING
FILTERING ASPECTS OF TIME-DOMAIN AVERAGING
BLOCK FLOATING-POINT BINARY FORMAT
AN EFFICIENT ARCTANGENT APPROXIMATION
flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net
Privacy policy
This website uses cookies. Click
here
to find out more.
Accept cookies