Chapter 13. Blackboard Architectures Using PVM, Threads, and C Components

Chapter 13. Blackboard Architectures Using PVM, Threads, and C++ Components

"The human brain is far more complicated than any computer, and in any event the benchmark to be attained by some super microchip of the future is to match the performance, not of an isolated human brain, but of a brain reared in a society comprising many humans ..."

Timothy Ferris, The Universe and Eye

In this Chapter

  • The Blackboard Model

  • Approaches to Structuring the Blackboard

  • The Anatomy of a Knowledge Source

  • The Control Strategies for Blackboards

  • Implementing the Blackboard Using CORBA Objects

  • Implementing the Blackboard Using Global Objects

  • Activating Knowledge Sources Using Pthreads

  • Summary

One of the primary goals in parallel programming is to divide the work a program must do into a set of tasks that may be executed with as much concurrency as necessary. This goal is an elusive one. Finding the correct WBS (Work Breakdown Structure) that will support parallelism and produce correct and efficient results can be a challenge. We use a modeling and architectural approach to achieve an acceptable WBS. In practice the process of modeling the problem and solution as naturally as possible with either objects or processes reveals any necessary parallelism. The model also identifies where the parallelism occurs within the problem or the solution. It's not necessary to introduce parallelism into a solution. If the problem and solution are appropriately modeled , then any necessary parallelism will be discovered . The blackboard architecture helps with this modeling process. In particular, the blackboard model helps to organize and conceptualize the concurrency and the communication within a system that requires parallelism or distributed programming.



Parallel and Distributed Programming Using C++
Parallel and Distributed Programming Using C++
ISBN: 0131013769
EAN: 2147483647
Year: 2002
Pages: 133

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net