Parallel Sytems Flashcards
Name the 4 fundamental concepts of PS
Processes, Channels, Timers, Alternative Selection
Name a key aspect of parallel system design
Processes can be composed into larger networks of processes
What is a Process
defines a sequence of instructions that are to be carried out
What does a Process do
a process will communicate with another process using a channel to transfer data from one to the other
How many methods does a process have
one - run() - this is used to invoke the process
What is PAR
Parallel object - PAR takes a list of processes and causes them to be run in parallel
How do you execute processes in parallel
Pass a list of process instances to the PAR Object which when run causes parallel execution of all the processes in the list
How is data handled by a process
A process encapsulates the data upon which it operates. Such data can only be communicated to or from another process and hence all data is private to a process.
What is a Channel
A channel is the means by which a process communicates with another process
A channel is a one-way, point-to-point connection between two processes
What is the role of a Channel
A process writes to a channel and another process reads from the channel.
Give advantages of Channels
They are unbuffered, data cannot be lost
Give an example of a design pattern used in parallel systems
Producer-Consumer
what is a producer process
A Producer process is one that outputs a sequence of distinct data values
what is a consumer process
one that inputs a stream of such data values and then processes them in some way
name an advantage of the Producer Consumer process
the processes synchronise with each other when they transfer data over the channel