Virtualized Development and Testing of Embedded Computing Clusters

Ian Vince McLoughlin · 2011

Design of customised embedded cluster processing solutions can be difficult for reasons including the large number of unknowns at design time in terms of quantity and type of processors, interconnectivity characteristics and code partitioning, and for reasons relating to inaccessible hardware for software developers. Many of these issues are faced in conventional development projects for generic embedded systems, or for generic distributed systems, but the issues are exacerbated when both factors are combined. This paper identifies and characterises the issues relating to the development of customised embedded cluster processing systems in general, before focussing on a specific example of a space-borne cluster computer using ARM processors running embedded Linux. This early example is representative of a growing number of systems in the pervasive and ambient computing fields, and illustrates the difficulty of co-developing hardware and software for specific tasks. One solution to many of the issues faced in conducting development tasks using such platforms is the use of distributed virtualization to simulate the final design. This paper presents an ARM cluster simulator, constructed using QEMU and virtual networking, used for the development and validation of distributed embedded processing tasks on a cluster-type architecture. As embedded clusters, embedded pervasive networks, and embedded clouds become more popular, such a virtualized simulation system can provide a useful development and testing resource.

Read the paper · More papers on PaperTik