• 闲聊对齐异常(alignment fault)

    闲话 最近在ARM64环境中遇到了alignment fault,之前没怎么了解过,这次趁分析问题的机会,做了相关了解,还是比较有内容,特此闲聊。 什么是对齐异常? 简单来说,当CPU访问内存地址时,如果发现访问的地址是不对齐的,硬件(部分)就会自动触发对齐异常。对齐即要求被访问的地址满足其数据类型的位宽要求,比如要访问一个4字节int型的数据,但是提供的地址不是4字节对齐的,那就是不对齐了。也就是说要访问的数据的位宽长度是多少,那么访问的地址就必须是按这个位宽长度对齐的。如果是char类型的,那就没有没有对齐要求了。...


  • ARM64环境中的对齐异常(alignment fault)问题

    闲话 前段时间过年,忙得有段时间没更新blog了,工作上的待解决的问题看似越堆越多,也没有静下心来整理。Now,新的一年,新的开始,继续努力吧! 这段时间遇到了新的问题:在ARM64环境中的alignment fault,之前没有关注过类似的问题,对ARM架构也没有深入研究过,从前都是在X86上,好像从来没遇到过类似的问题,呵呵,特此做了一下研究。 问题现象...


  • Maximum number of clients reached问题

    闲话 明天就要国内了,今天要早去公司,时间不多。 简单说说昨天写测试代码时遇到的一个问题吧。 问题现象 写了一个cairo+gtk2的测试代码,运行一段时间后终端中有报错:...


  • cairo_paint()流程分析

    闲话 cairo是当前GTK环境中的绘图核心,其自身的绘图性能直接关乎整个图形环境的绘图性能,而Cairo提供了多种不同后端的支持,值得深入研究。 本文主要从cairo_paint()流程入手,分析使用OpenGL后端情况下的相关主要流程。 由于涉及的东西比较多,很多地方只能点到为止,后面有机会再深入探讨。 流程分析...


  • 闲聊Cairo

    闲话 今早还有些时间。 简单闲聊下Cairo。 初次见到这个名称时,会让人很迷惑,图形环境中术语实在太多了,让人迷乱,而这个名称本身也没有任何提示信息。 其实,Cairo在目前的桌面环境中,占有非常重要的地位。...


  • 移植mintMenu出现coredump问题

    闲话 gnome环境中自带的开始菜单确实不好看,功能也过于简单,其实就只是一个ItemList控件而已,基本无法定制,对比了很多的开源方案,还是觉得mintMenu不错,但是该工具在非x86架构上验证还是有问题。 问题现象 安装mintmenu包后,在面板中无法添加组件,添加后没有任何反应,查看相关进程信息,确认出现了coredump,分析core文件,确认发生了段错误,发生段错误的未知在不同的core文件中不同,如下是其中一种典型情况: Core...


  • 闲聊硬件加速

    闲话 今早有空,简单聊聊硬件加速相关的话题。 在接触图形架构之前,常听到硬件加速的字眼。 比如离我们最近的电脑上,就会有显卡,就有硬件加速的问题。 我自己从来不玩游戏,对显卡硬件也不太了解,也没有去了解和研究过。...


  • gtkperf工具改造for GTK3+

    闲话 当前图形环境中,针对图形性能和用户体验方面的性能评估工具非常稀缺,关于这方面足够用单独的一篇文章来讨论,后面有机会再聊。 这里主要聊gtkperf工具, gtkperf工具是开源的用于测试GTK性能的工具, 确切的说应该是测试GTK中不同的控件的反应速度的工具。...


  • DRM后端Cairo-perf-trace工具崩溃Again&Again

    问题 欲测试cairo DRM后端的性能。 解决完radeon显卡drm backend中radeon_surface_backend结构体中所有错位的钩子后,重新编译运行,发现继续崩溃,但更进一步了。...


  • DRM后端Cairo-perf-trace工具崩溃Again

    问题 欲测试cairo DRM后端的性能,上次解决完radeon显卡drm backend中create_context函数钩子错位问题后,重新编译运行,发现继续崩溃。 这次直接core,没有提示信息,查看搜集到的core文件,现象如下:...