Architecture and Real-Time Systems (ARTS) Laboratory

 Architecture and Real-Time Systems (ARTS) Laboratoryclock

RAMP: Reliability Model

PVM Extensions

PVM, or "Parallel Virtual Machine", is a system that allows a network of computers to model a single distributed-memory parallel computer.

We created several PVM extensions for use in this project. Below is a list of relevant PVM commands; our extensions are in bold.


  • pvm_notify notifies a task via a message when hosts are added/removed from the virtual machine, or when a task exists. the notification is not immediate; the task needs to check the message buffer to see if an event has occurred.
  • pvm_addeventhandler is an extension of pvm_notify:
    • Tasks are notified via UNIX signals when an event occurs so that there is no time wasted for polling
    • Tasks can be notified of a new message arrival
  • pvm_select is an extension of pvm_trecv - it allows a task to specify multiple precess tids/message tags to wait for, and returns the task id of the first message received rather than the buffer