【摘 要】
:
近年来,Unikernel在云计算领域成为新兴的研究热点。Unikernel是由LibraryOperatingSystem(LibOS)构建的,针对于特定应用的,单地址空间机器镜像。在Unikernel生成过程中,应用程序及其所依赖的组件被全部编译链接成一个整体并直接运行在Hypervisor之上,导致Unikernel在运行时无法修改其配置参数,无法进行在线功能更新。如果要进行配置参数和功能的
论文部分内容阅读
近年来,Unikernel在云计算领域成为新兴的研究热点。Unikernel是由LibraryOperatingSystem(LibOS)构建的,针对于特定应用的,单地址空间机器镜像。在Unikernel生成过程中,应用程序及其所依赖的组件被全部编译链接成一个整体并直接运行在Hypervisor之上,导致Unikernel在运行时无法修改其配置参数,无法进行在线功能更新。如果要进行配置参数和功能的更新,则需要修改配置参数文件和应用程序源码,再重新编译,链接,测试,部署。而上述一系列步骤十分耗时,导致针对于特定应用的Unikernel一旦生成,其配置参数和功能便固化了,使得灵活性和可应用性受到限制。
针对上述问题,提出了一种基于Xen平台的动态Unikernel构建方案,主要包括Unikernel二进制分析器,配置参数更新模块和函数功能更新模块。前者用于分析静态的Unikernel镜像文件,并和运行中的Unikernel二进制代码建立映射关系,从而获取到运行状态下Unikernel的配置参数和函数地址信息。后两者主要用于配置参数和函数功能的在线更新。在配置参数更新模块中,设计并实现了内存页映射和定位机制,并实现了配置参数内存地址的计算和值的修改。在函数功能更新模块中,实现了函数链接库的动态加载机制和函数调用过程的解析和修改。Xen提供的授权表机制被应用到内存页的映射机制中,通过直接对内存中的关键数据进行定位和修改,充分提升了在线更新的速度,并且能够保证运行状态下的Unikernel不会中断当前服务,保证了其灵活性和可应用性。
上述方法在Xen平台上基于MiniOS实现,并将实现的系统原型命名为D-Unikernel。利用自定义实现的一系列配置参数和函数链接库,在Ubuntu16.04(内核版本4.15)上进行性能评估,实验结果表明,在保证Unikernel优异特性的基础上,和传统Unikernel离线更新方案相比,D-Unikernel更新时间缩短了26x,获得了显著的性能提升。
其他文献
无服务计算,又被称为“函数即服务”,是云计算领域正兴起的一个事件驱动服务模型。在无服务模型中,应用由被单独执行和管理的函数组成,由用户请求触发并动态执行。目前,云服务提供商普遍采用容器或虚拟机来执行这些函数,在无服务模型中的函数通常执行时间很短(毫秒级)的情况下,容器和虚拟机的启动用时给响应用户请求带来了较高的延迟。同时,不同函数间的通信基本上依靠网络设备和共享内存完成,导致了很高的性能开销。
基于语义的用户意图识别问题属于自然语言处理问题的范畴,其本质上为一个多分类问题。随着互联网发展,人机对话系统的发展也越来越迅速,需求越来越明确,近年来得到学术界和工业界的重视。而人机对话系统中用户意图识别是很重要的模块,其准确性的提高对于系统生成合理回答有重要的意义。 目前意图识别的大部分方法都是基于语义,通过分析文本内容然后应用深度学习算法得到多分类结果。比如使用循环神经网络、长短期记忆网络以
在当今信息大爆炸的时代,各式各样的信息令人目不暇接。这不可避免地导致信息过载,使得人们在检索自己感兴趣的信息时存在一定困难。因此个性化推荐系统的重要性不言而喻。现有的推荐算法大多数都基于协同过滤,而协同过滤算法的主要不足之处在于其难以应对数据稀疏性问题。此外,协同过滤算法仅利用用户与物品的交互信息进行建模,其所挖掘的隐式信息仍不够充分。大多数相关方法仅关注显式或隐式信息中的一种,导致推荐的准确度并
混洗(Shuffle)是连接映射(Map)端和聚合(Reduce)端的桥梁。混洗服务的可靠性和性能直接影响到应用程序的执行效率。现有的混洗机制,在内存中聚合数据时,容易产生数据溢出,造成写放大。Reduce任务在拉取数据时,会产生大量小的,随机的I/O请求,I/O队列等待时间和磁盘寻道时间占据了整个磁盘服务时间的很大一部分开销。 D-Shuffle是为解决上述问题而设计的一种计算和存储分离的混洗
随着互联网的不断发展,人们在享受网络带来的便利的同时也深受信息过载的困扰。推荐系统能够有效地缓解信息过载问题,是当前研究的热点。协同过滤算法作为目前被普遍使用的推荐算法而备受关注。协同过滤算法基于喜欢相同物品的用户有类似的喜好的思想实现对用户的推荐。最近,随着深度学习的兴起,在推荐系统领域也出现了很多利用深度学习解决推荐问题的研究,其中就包含很多基于深度学习的协同过滤方法。这些方法大多使用深度神经
随着网络数据承载的信息量越来越大,如何从网络结构中挖掘有价值的信息成为近些年研究的热点。网络表示学习可学习网络的结构表示,用低维矩阵保留其结构特征。但现实网络中的节点间往往不只有一种关系类型,如何从异质边网络中挖掘复杂结构的信息相比同质网络更具挑战性。 正则化图自编码器网络表示模型(Regularized Graph Auto-Encoder, RGAE)用于学习异质边网络的网络表示。该模型将异
随着信息技术的快速发展和智能设备的不断普及,人们对人机交互(Human–Computer Interaction, HCI)方式的高效性和便捷性提出了更高的要求。基于惯性传感器的手势识别(Hand Gesture Recognition, HGR)技术只需用户手持设备并绘制简单的手势即可传达复杂的机器命令,而不需要分散用户的视觉注意力,并且这种方式不受外界环境噪声、光照强度等条件影响,因而更适合被
提升大规模图数据处理的效率对解决诸多现实问题具有重要意义。可编程逻辑门阵列(Field Programmable Gate Array,FPGA)因其可编程特性广泛应用于图计算技术的加速。现实世界中的图数据规模十分庞大,单个FPGA难以对其进行有效存储和处理。因此,采用多个FPGA互联的方式是解决上述问题的重要技术途径,其需要将图数据划分为子图,并分别放置到不同FPGA上进行处理。考虑到多FPGA
非结构化自然语言文本数据通常是有歧义的,尤其是命名实体。一个命名实体可以有多个名称,一个名称也可以表示几个不同的命名实体。实体链接任务即,将非结构化文本数据中对应实体链接到结构化知识库中,这有助于对原始的嘈杂文本数据的信息挖掘,以早日实现语义Web的愿景。 目前关于实体链接任务的研究主要基于统计模型,需要依赖人为定义的关于文本和目标实体的歧义性特征。这些特征通常需要拥有该领域知识的专家来定义,并
图在生活中扮演着至关重要的作用。在大数据时代,越来越多的应用将信息抽象成图数据,并使用图算法对图数据进行处理,例如社交网络图,路图,网络路由图等。由于现实信息随着时间逐渐变化,原始的静态图数据逐渐演变成了多版本图数据,图的规模也逐渐变大。如何对多个版本的大图中的大量数据进行存储和随机版本访问,成为了图处理中的新的问题。对多版本图数据的处理,现有的方法有的会导致海量的存储空间开销和高度的存储冗余。有