30.12.2013 Views

Virtuoso User Manual - ClassicCMP

Virtuoso User Manual - ClassicCMP

Virtuoso User Manual - ClassicCMP

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Virtuoso</strong> : an overview<br />

on a node. The key to this transparency of topology is the use of a system<br />

definition file (see below). In this context we emphasize that with <strong>Virtuoso</strong> the<br />

node identifier is nothing more than an attribute of the object.<br />

The transparent distributed operation would not work if the semantics of the<br />

microkernel services and their implementation were not fully distributed. This<br />

imposes a certain programming methodology. E.g. global variables or pointers<br />

are only allowed if the programmer very well knows that only local references<br />

to it are used and the objects referencing to it will not be mapped over<br />

more than one target processor. When common memory is used, the objects<br />

must be protected using a resource lock<br />

.<br />

InputQueue<br />

ConsoleInputDriver<br />

Node#1<br />

OutputQueue<br />

ConsoleOutputDriver<br />

DisplayTask<br />

MailBox1<br />

SamplingTask2<br />

+<br />

Sema1<br />

Node#2<br />

Node#4<br />

SamplingTask1<br />

+<br />

Sema2<br />

+<br />

Sema3 MonitorTask<br />

Node#3<br />

Microkernel Object<br />

Processor Node<br />

FIGURE 1<br />

A possible mapping of objects onto a network<br />

P1 - 12 <strong>Virtuoso</strong> <strong>User</strong> <strong>Manual</strong> Copyright 1996 Eonic Systems

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!