摘要
云计算进行资源聚合的一种重要方式是将不同用户、不同特征的应用聚合起来进行混合部署、同时运行。相比之下,用户态应用的垃圾回收器对服务个体的内存管理针对性更好,而操作系统对整体内存资源分配能力更强。现有内核的机制仅能保证服务在全局内存或进程组内存使用达到上限时被动地进行垃圾回收。结合Linux内核中的进程控制组机制以及eventfd事件通知机制,设计实现了一个简单高效的应用协同分组内存管理的内核支撑机制。通过在内核中增加应用协同的内存管理机制,进一步增加了系统对应用自主管理内存的支撑能力。实验表明,新的机制没有给原有的操作系统带来明显的性能影响。
An important way to aggregate resources is to consolidating applications of different users with different features. While user space application garbage collector aims at memory management of specific service, operating system knows better about how to allocate memory resource through the en- tire system. However, current Linux kernel mechanism can only notify application to do garbage collec- tion when the memory usage reaches the upper limit of either global system. The paper designs and im- plements the supporting mechanism for collaborative memory management in Linux Kernel by Cgroup and Eventfd subsystem, which can further increase the system's ability to support application' s own memory management policy. The experiments show that the new mechanism does not bring significant performance regression to the original operating system.
出处
《计算机工程与科学》
CSCD
北大核心
2014年第1期57-62,共6页
Computer Engineering & Science
基金
核高基重大专项资助项目(2012zx01040001)