这个用户很懒,还没有个人简介
私信
主帖 10
回帖
视频
提问
回答
资源
专栏
StratoVirt是开源在openEuler社区的轻量级虚拟化平台,具备轻量低噪、强安全性的行业竞争力。StratoVirt进程运行在用户态,在虚拟机启动之前,StratoVirt会完成启动之前的准备工作,包括虚拟机内存的初始化、CPU寄存器初始化、设备初始化等,启动,CPU寄存器初始化和虚拟机在运行过程中vCPU陷出事件的处理,都是由StratoVirt的vCPU管理模块CPU完成。如下是StratoVirt中vCPU管理模块的组成,以及其在StratoVirt中的位置。stratov...
9天前 117浏览 0点赞 0回复 0收藏
编者按:JVM发生内存泄漏,如何能快速定位到内存泄漏点并不容易。笔者通过使用jemalloc(可以替换默认的glibc库)中的profiling机制(通过对程序的堆空间进行采样收集相关信息),演示了如何快速找到内存泄漏的过程。Java的内存对象一般可以分为堆内内存、堆外内存和Nativemethod分配的内存,对于前面两种内存,可以通过JVM的GC进行管理,而Nativemethod则不受GC管理,很容易引发内存泄露。NativeMethod导致的内存泄漏,无法使...
9天前 201浏览 0点赞 0回复 0收藏
UADK全称为UserSpaceAcceleratorDevelopmentKit,是一套用户态硬件加速器开发工具集,旨在SVA技术下用户可以高效地利用鲲鹏硬件加速器能力,为用户提供基础的库和驱动支持,通俗地说就是给数据进行压缩解压缩、加解密等处理加速的软件库。UADK作为通用的加速器用户态框架并不只是支持鲲鹏加速器,配合UACCE框架可以支持任何厂商的加速器硬件,openEuler21.09Kernel已完整回合支持SVA。UADK框架分析UADK完整组件包括:支持SVA的加...
9天前 197浏览 0点赞 0回复 0收藏
StratoVirt是什么Strato,取自stratosphere,意指地球大气层中的平流层,大气层可以保护地球不受外界环境侵害,而平流层则是大气层中最稳定的一层;类似的,虚拟化技术是操作系统平台之上的隔离层,既能保护操作系统平台不受上层恶意应用的破坏,又能为正常应用提供稳定可靠的运行环境;以Strato入名,寓意为保护openEuler平台上业务平稳运行的轻薄保护层。同时,Strato也承载了项目的愿景与未来:轻量、灵活、安全和完整的保护...
9天前 158浏览 0点赞 0回复 0收藏
导读:我阅读了这份几十页的《openEuler21.09技术白皮书》,发现其中有些值得重视的技术变化被掩盖在了枯燥的技术术语之中本文字数:3964,阅读时长大约:7分钟作者:硬核老王怀着这个疑问,我对在“华为全连接2021”后几天发布的openEuler21.09是颇为关注的,希望可以第一时间拿到它的白皮书一窥究竟。几天后,我提前拿到了欧拉的技术白皮书。我在翻阅后感觉,与其说欧拉是一辆粉饰一新的新车,不如说是它在引擎盖下做了颇多改...
9天前 147浏览 0点赞 0回复 0收藏
编者按:两位笔者分享了不同的案例,一个是因为JDK小版本升级后导致运行出错,最终分析定位原因为应用启动脚本中指定了Classpath导致JVM加载了同一个类的不同版本,而JVM在选择加载的类则是先遇到的先加载,进而导致应用出错,该问题的根因是设置了错误的Classpath。第二个案例是在相同的OS、JDK和应用,不同的文件系统导致应用运行的结果不一致,最终分析定位的原因是JVM在加载类时遇到了多个版本的问题,但是该问题的根因是没...
9天前 201浏览 0点赞 0回复 0收藏
编者按:笔者使用JDK自带的内存跟踪工具NMT和Linux自带的pmap解决了一个非常典型的资源泄漏问题。这个资源泄漏是由于Java程序员不正确地使用JavaAPI导致的,使用Files.list打开的文件描述符必须关闭。本案例一方面介绍了怎么使用NMT解决JVM资源泄漏问题,如果读者遇到类似问题,可以尝试用NMT来解决;另一方面也提醒Java开发人员使用JavaAPI时需要必须弄清楚API使用规范,希望大家通过这个案例有所收获。背景知识:NMTNMT是Nati...
9天前 88浏览 0点赞 0回复 0收藏
什么是MAPmap是驻留在内核空间中的高效键值仓库(keyvaluestore)。map中的数据可以被BPF程序访问,如果想在多个BPF程序之间保存状态,可以将状态信息放到map。map还可以从用户空间通过文件描述符访问,可以在任意BPF程序以及用户空间应用之间共享。Map就是它们之间的一个桥梁。MAP创建只能在用户态创建,根据是否用户显式创建,可分为用户态程序创建和加载器创建两种方式。Map创建后具有全局唯一的id。BPFMAPCREATE系统调用返...
9天前 113浏览 0点赞 0回复 0收藏
编者按:目前许多公司同时使用x86和AArch642种主流的服务器。这两种环境的算力相当,内存相同的情况下:相同版本的JVM和Java应用,相同的JVM参数,应用性能在不同的平台中表现相差30%,x86远好于AArch64平台。本文分析了一个应用在AArch64平台上性能下降的例子,发现JVM的CodeCache大小是引起这个性能问题的根源,进而研究什么导致了不同平台上CodeCache大小的不同。最后笔者给出了不同平台中该如何设置参数规避该问题。希望本...
9天前 171浏览 0点赞 0回复 0收藏
编者按:笔者遇到一个非常典型JVM架构相关问题,在x86正常运行的应用,在aarch64环境上低概率偶现JVM崩溃。这是一个典型的JVM内部bug引发的问题。通过分析最终定位到CMS代码存在bug,导致JVM在弱内存模型的平台上Crash。在分析过程中,涉及到CMS垃圾回收原理、内存屏障、对象头、以及ParNew并行回收算法中多个线程竞争处理的相关技术。笔者发现并修复了该问题,并推送到上游社区中。毕昇JDK发布的所有版本均解决了该问题,其他J...
9天前 168浏览 0点赞 0回复 0收藏