OSv—Optimizing the Operating System for Virtual Machines 5
2016-04-27 10:28
423 查看
shrinker: shrinker API允许app或者OS组件注册回调函数, 这些函数OSv在当系统内存过低的时候调用。这些回调函数会释放一些组件或者app的内存。
在大多数的OS, app, 包含动态cache的组件, 比如Memcached 或者 VFS 页缓存 ,这些必须静态限制他的尺寸,为了预先定义一些数量的内存或者一定数量cache大小。
这是重要的,但有时候却是矛盾的, 不消耗更多的内存在一个可变的OS中,在利用可变的内存时候又不去回收部分系统的内存。根据程序动态申请和回收内存这个变得很有挑战性。
shrinker API提供一个合适的解决方案运行app或者组件去处理压缩页是同时进行的,
我们已经证明shrinker API是非常有用的在两个case中(Memcached, JVM 请求最大内存堆尺寸), 如果手动设置这个值就浪费内存,于此相反动态调整cache或者heap的尺寸就可以了。
在section 4重新实现了Memcached使用shrinker API。
JVM balloon : The JVM balloon的实现机制就是我们开发的JVM堆栈大小自动调整变得可行。 Balloon已经用的很广在hypervisor中, JVM balloon的核心机制也是类似。
提供一个有效的动态内存的地方。 OSv JVM的设计与实现基于不改变JVM的基础上。
剩下JVM balloon没翻译,主要对JVM不太懂。
翻译到此结束,就当自己笔记吧。
在大多数的OS, app, 包含动态cache的组件, 比如Memcached 或者 VFS 页缓存 ,这些必须静态限制他的尺寸,为了预先定义一些数量的内存或者一定数量cache大小。
这是重要的,但有时候却是矛盾的, 不消耗更多的内存在一个可变的OS中,在利用可变的内存时候又不去回收部分系统的内存。根据程序动态申请和回收内存这个变得很有挑战性。
shrinker API提供一个合适的解决方案运行app或者组件去处理压缩页是同时进行的,
我们已经证明shrinker API是非常有用的在两个case中(Memcached, JVM 请求最大内存堆尺寸), 如果手动设置这个值就浪费内存,于此相反动态调整cache或者heap的尺寸就可以了。
在section 4重新实现了Memcached使用shrinker API。
JVM balloon : The JVM balloon的实现机制就是我们开发的JVM堆栈大小自动调整变得可行。 Balloon已经用的很广在hypervisor中, JVM balloon的核心机制也是类似。
提供一个有效的动态内存的地方。 OSv JVM的设计与实现基于不改变JVM的基础上。
剩下JVM balloon没翻译,主要对JVM不太懂。
翻译到此结束,就当自己笔记吧。
相关文章推荐
- Linux socket 初步
- Linux Kernel 4.0 RC5 发布!
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- Linux 下无损图片压缩小工具介绍