Ubiquitous Computing (UC) introduces a large variety of new computing devices, vastly different in terms of size, processor speed, memory capacity, and user interface. We observe that the number of computing devices per person is increasing (e.g., cellphones, PDAs, music players) and that embedded systems are increasingly equipped with communication interfaces (e.g., TV sets with streaming clients). However, UC does not build on any single of these devices – its real power emerges from the interaction of all of them. One major challenge in UC is the development of system software for applications spanning multiple devices, thereby providing the equivalent to a classic operating system, but tailored for UC systems.

The communication middleware MundoCore was specifically designed for the requirements in mobile and ubiquitous systems. MundoCore is based on a microkernel design, supports dynamic reconfiguration, and provides a common set of APIs for different programming languages (Java, C++, Python) on a wide range of different devices. The architectural model addresses the need for proper language bindings, different communication abstractions (Publish/Subscribe, Distributed Object Computing, and streaming), peer-to-peer overlays, different transport protocols, different invocation protocols, and automatic peer discovery. Most importantly, MundoCore serves as an integration platform that allows to build systems out of heterogeneous services. With its modular design and configurable protocol stacks, it can be used on a wide range of different platforms and interface with services using different invocation protocols.


Software and Documentation can be downloaded from the Mundo Wiki.

Project members

  • Stefan Radomski

Former project members

  • Dr. Erwin Aitenbichler
  • Dr. Daniel Schreiber
  • Felix Heinrichs