next up previous contents
Next: Packet Flow Through OpenRG Up: The Main Task Previous: Entities   Contents

Tasks

As previously mentioned, a task is a set of functions that implement a certain protocol or service, for example PPP, DNS or HTTP. A task can be characterized as being self-contained and system independent. It does not rely on other tasks, configuration files or any other kind of outside help.

The OpenRG library, libOpenRG, provides the task with rudimentary services such as an event dispatch loop, memory allocation and logging functions. The entire configuration that a task may require is imparted as parameters to its open() function. The task's genuine work is actually performed by the callback function, a pointer which is also given as a parameter to the open() function.

It follows that tasks are inherently portable and reusable. To illustrate, the Ping task can be employed in two different ways:


next up previous contents
Next: Packet Flow Through OpenRG Up: The Main Task Previous: Entities   Contents
Jungo Software Technologies