Quants againTopInput/OutputTwo staged operating system

Two staged operating system

Two levels of operating systems are perceived:

The former has to be as simple as posible and absolutely identical on each CPU of the grid to make it possible to be replicated many times on one chip. The micro-os may have no "awareness" of the specific array configuration, it has the only function to provide interaction with the grid (neighbours) and a minimal amount of task administration.

Although we maintain the notion of inside/outside in the grid, the only information about the topology a node needs to know is how to reach it's neighbours. Whence the bootstrapping of the grid is provoced by an edge node (e.g. the mentioned Boot ROM injector), requireing maybe to fetch a block of code for a quant from virtual memory, it would suffice for a node to route the request-messages through the neighbour from which the (boot) quant has been delivered.

The principal tasks for the micro-os could be the following:

The task queue can be as small as one task, so that cpu-load would always be 0 or 100%. In dependence of the capabilities of the core it seems however feasable and desireable that the micro-os contains a tasking system, which queues/caches quants so that they can be reused/executed without delay in case a task blocks (creates a quant) or a quant's code is required by a neighbour or near node.

Messages can be completely emulated by quants or implemented independently. Quants can also work only with references to virtual memory or completely without references, consisting only of executable code and data, which in turn can be pointers and code to retrieve them. However we suppose that the implementation of both options in either case provides valuable increase in flexibility and eficiency, of course with the cost of increasing the complexity of the micro-os.

The meta-os would have to deal with organization of the objects stored in virtual memory (administration, protection, accounting), bootstrap and shutdown, collection of routines for interaction with the "outside" world, and basic user interaction: command-loop, os-shell, console, and the like. We suspect that a variety of diverging concepts will be perceived for the meta-os.


Georg Lehner May 14, 2004- Magma Soft

Quants againTopInput/OutputTwo staged operating system