überSpark Architecture 411

The following are architectural terminology specific to the überSpark framework which anyone (system integrator, CoSS developer, or contributor) need to be familiar with, before using the framework.

Platform
The target hardware platform where the CoSS software stack enhanced with überSpark executes. e.g., pc, raspberry pi, odroid etc.
CPU
The processor(s) model that executes programs on the aforementioned target hardware platform. e.g., Intel Core 2nd Gen, AMD Opteron, Cortex A53, etc.
Arch
The architecture on which the CPU(s) of the target hardware platform is based upon. e.g., x86 32-bit, armv6 32-bit, armv8 64-bit etc.
üobject
The atomic programming and system runtime abstraction within überSpark. Logically, a üobject is a singleton object guarding some indivisible resources such as platform CPU registers, memory, and device end-points and implementing public methods to access them.
üobject Collection
A üobject collection is a set of üobjects that share the same memory address space, and are bridged to other üobject collections via platform hardware conduits or software entities called sentinels. In principle, üobject collections can also be nested, modulo the platform hardware providing necessary conduits.
Platform Hardware Conduits
These are hardware pathways for signaling and data transfer on a given computing platform, such as DMA, inter-processor interrupts, and mail-boxes.
üobject/üobject Collection Public Methods
üobject public methods are regular function signatures (e.g., main() but can be restricted to specific caller üobjects. üobject collection public methods are selected public-methods of the individual üobjects that the collection encompasses, but which can be restricted to specific caller üobject collection and/or legacy code.