Next: Common Download Format
Up: SynDEx Downloader Specification
Previous: Context
  Contents
This process is the same for all processors, except that the root processor gets executives from its local non-volatile memory, whereas all the other processors get executives from their neighbour processor which is their ascendant towards the root of the download tree. The processors which have the same ascendant processor are called the descendants of that processor.
When powered on, each processor boots by executing its resident boot-loader, which gets the processor's executive, loads it into the processor's program memory, and executes it. During its initialization phase, the executive gets and forwards executives to all its descendants, before proceeding with application data processing.
The root processor, usually an embedded PC or other kind of workstation, bootloads from its disk an operating system, which automatically loads and executes a startup program allowing the user to choose between different applications. During early developments, this program may be a simple shell (but this requires a keyboard to be available), and the user enters a "make" command to compile the executives if needed, and to execute the root executive, with the other executive files passed as arguments on the command line. In applications where it is unpractical to use a keyboard permanently connected, the startup program may use another input device (for example a switch or a touch screen) to let the user choose between different predefined shell commands, starting different applications through the corresponding "make" command, or simply launching a shell for interaction with a keyboard. In more deeply embedded applications, where the root processor has neither a disk nor an operating system, all the executives are stored in a FLASH memory, and the root processor boots by executing directly its own executive, and finds the other executives sequentially stored in its FLASH.
The first executive forwarded to a descendant is received, stored, and executed by that descendant's boot-loader. Then, while that descendant's executive asks for executives, the ascendant executive gets and forwards the next executives to the same descendant, until that descendant's executive signals that it has itself no more executives to forward. Then the ascendant may switch to its next descendant, until it has no more descendant to service, and hence no more executive to forward. This fully sequential download process boots processors in the order of a depth-first traversal of the download tree.
In the case of a point-to-point medium, the descendant executive may proceed to application data communications as soon as it has no more executive to forward, whereas in the case of a multipoint medium, the descendant executive must wait until the ascendant executive signals that it has no more executive to forward (to avoid communication interferences between descendant application data and ascendant download data).
Next: Common Download Format
Up: SynDEx Downloader Specification
Previous: Context
  Contents
Julien Forget
2003-03-21