openKylin 2.0揭秘 - wlcom合成器解读
kylin-wayland-compositor(以下简称wlcom)是一款基于wlroots的wayland合成器,由openKylin社区Wayland SIG组负责研发。wlcom具有渲染性能高、X兼容性好、安全性高、功能可灵活定制、第三方依赖少等技术特性,目前已完成大部分开发工作,正在进行功能完善与系统适配,后续将搭载在openKylin 2.0版本上正式发布!
wlcom合成器的成功研发,实现了操作系统图形栈底层核心子系统的进一步突破。下面我们就将围绕wlcom合成器的框架与特性为大家进行详细解读。
wlcom合成器框架如下图所示:
结合UKUI桌面环境及系统应用开发框架需求,提供应用功能接口,便于灵活的系统功能开发提供外部插件功能接口,满足第三方应用定制化功能需求,灵活扩展;
特效框架采用单独特效库加载模式并支持特效自定义渲染方式,如自定义着色器;X兼容框架提供获取屏幕图像数据能力、远程控制软件输入转换等能力;输入管理框架实现多席位输入设备管理,解决多用户无法同时输入问题;
利用协议封装接口实现合成器所需的窗口管理、输入事件处理等基础功能;支持Pixman、Opengl、Vulkan等渲染后端;
结合UKUI组件功能需求,整合原有kde扩展协议,去繁从简,实现ukui-shell协议、针对多领域场景需求,增加相关安全协议;
提供对底层GPU、输入设备驱动交互支持、支持景嘉微、摩尔线程等国产显卡及华为SOC集成芯片;
仅依赖系统的pixman、libdrm等基础库。
1.渲染性能高
在性能上消除了原始窗口管理器的交互开销,同时支持多卡、多输出、多并发渲染加速接口,在不启用动画和装饰性渲染的情况下,渲染后端既支持纯CPU绘制,也支持OpenGL/ES、Vulkan,大幅提升业务场景渲染能力。
2.X兼容性好
目前国内主流应用还处于由X显示框架向wayland显示框架切换的过渡阶段,特殊X接口转换的缺失,导致X应用部分功能异常,自研X兼容增强插件,通过桥接转换协议打通特殊X接口到合成器通路,实现X应用广泛兼容。
3.安全性高
新增wayland下防截屏安全协议,支持用户指定窗口防截屏及全屏防截屏,实现对截图内容、区域进行管控,对敏感数据强化保护,并提供Qt下防截屏设置接口,方便第三方软件使用等,满足多领域的场景安全需求。
4.功能可定制
通过整体设计架构改造,解耦系统关联组件,实现插件式框架结构,全插件式管理,支持功能组件灵活裁剪、按需定制,功能实现更高效。
5.第三方依赖少
既不依赖KDE、GNOME等成熟桌面环境,也不依赖QT、GDK等UI工具包,仅依赖pixman、libdrm、xkbcommon等基础库。
openKylin Wayland SIG小组由麒麟软件有限公司发起成立,致力于新一代图形显示服务器相关技术研究,包括wayland合成器、X兼容等,提供wayland相关软件包的技术规划、设计、开发、维护和升级服务,共同推动新一代图形服务器技术发展及落地。
邮件列表: wayland@lists.openkylin.top SIG主页: https://gitee.com/openkylin/community/tree/master/sig/Wayland