环境智能系统中用于容错的应用重映射技术
1. 引言
随着技术的进步,设备变得更小、更便宜,使得构建包含大量(可能数百个或更多)微型处理元素的系统成为可能。这些平台虽然表面上与传统分布式系统相似,但也带来了独特的挑战。由于希望降低成本,再加上设备数量众多,制造时的测试将变得困难,运行时故障也会很常见。
1.1 相关工作
- 代码迁移 :在移动代理领域已成功应用。移动代理是进程迁移思想的演变,可自主在网络中移动代码和状态。传统进程迁移主要用于服务器和工作站的分布式系统,用于负载分配和容错。而本文的应用重映射技术更轻量级,考虑了应用的特殊属性。
- 远程执行 :此前用于减少移动系统的功耗,通过将任务从能量受限的系统(如移动计算机或 PDA)卸载到能量不受限的服务器。但这些系统是在快速、可靠的无线网络环境下运行,与本文关注的超低功耗、不可靠的网络传感器环境不同。
1.2 本文贡献
本文引入了在分布式、嵌入式、易发生故障的环境(如环境智能系统)中实现应用稳健执行的技术。基于代码迁移的思想,实现了在冗余硬件环境中对故障应用的重映射。提出了一种新的技术——预复制远程执行(PCRE),它是代码迁移的扩展,能在能量和通信受限的情况下,更有效地进行对称应用的重映射。
2. 应用重映射技术
2.1 轻量级代码迁移
在传统计算系统中,代码迁移通常涉及执行进程的迁移,这是一项复杂的任务,因为进程通常有大量的系统和机器状态。但如果应用可以异步重启,那么只需要迁移应用特定的状态