论文部分内容阅读
程序分割是将程序的部分程序代码从本地迁移到其他计算节点。传统的程序分割技术主要应用于并行与分布式计算领域。近几年,随着移动设备的发展,用户需求不断增长,移动设备资源有限问题日益突出,程序分割技术逐渐应用于移动计算领域。通过将移动应用中计算量较大的程序代码迁移到附近资源丰富的服务器以降低移动设备资源消耗,提高程序性能,改善用户体验。针对该问题,在国内外研究基础上,本文主要研究适用于移动平台的程序分割关键技术。针对移动平台应用需求,定义加权对象关系图,提出基于静态与动态程序分析相结合的加权对象关系图构造方案。通过静态分析技术,将程序抽象成一个初始对象关系图,节点表示运行时对象,边表示对象之间的交互关系;通过动态程序分析技术,给初始对象关系图的节点和边分别加权值,并进一步削减此图以降低后续分割算法复杂性。针对移动平台的应用需求,定义了三种不同的程序分割模型,分别为运行时间最优模型、耗电量最优模型及多目标加权最优模型。基于目标模型的定义,分别提出了多应用场景的单站点和多站点动态程序分割算法。前者适用于单个服务器的应用场景,后者适用于云计算的应用场景,两个分割算法均为动态程序分割,能够有效适应应用场景中网络环境易变的情况。最后,设计程序分割原型系统演示平台,验证提出的对象关系图构造方案和动态程序分割算法的可行性及优势,结果表明提出的算法不仅能够适应易变的网络环境,而且能有效降低移动设备资源消耗。