首页 文章 精选 留言 我的

精选列表

搜索[CI更新],共10000篇文章
优秀的个人博客,低调大师

MiniGUI 5.0.9 版本发布,关键更新

飞漫软件于 2022 年 1 月 26 日宣布,正式发布 MiniGUI 5.0.9 版本。 对国内开源软件的发展稍有了解的人都知道,MiniGUI 的第一个版本发布于 1999 年。MiniGUI 是中国最早的几个开源项目之一,是最具代表性的原创国产基础软件之一,经历了开源软件在国内萌芽、发展、消沉,而后在近几年随国内自主可控的春风重装上阵的整个过程。 MiniGUI 5.0.9 是 MiniGUI 5.0 系列的最新缺陷修正版本。该版本的发布,意味着经过若干版本迭代后,MiniGUI 5.0 走向成熟,进入了商用推广阶段。 MiniGUI 5.0 是 MiniGUI 发展中的重要里程碑版本。用一句话总结:MiniGUI 5.0 将桌面级的窗口系统功能带给了嵌入式设备。我们首先了解一下 MiniGUI 5.0 自目前业界广泛使用的 MiniGUI 3.0/3.2 版本以来的三个主要技术进步。 三大技术进步 1) 独立的窗口合成器 自 MiniGUI 5.0 起,MiniGUI 的多进程模式开始支持合成图式(compositing schema)。合成图式是现代桌面操作系统和智能手机操作系统的图形及窗口系统使用的技术,其基本原理很简单:系统中所有进程创建的每一个窗口都使用独立的缓冲区来各自渲染其内容,而系统中有一个扮演合成器(compositor)角色的进程,负责将这些内容根据窗口的 Z 序以及叠加效果(如半透明、模糊等)合成在一起并最终显示在屏幕上。 合成图式为窗口系统提供各种视觉效果和新奇交互效果带来了可能。在合成图式之前,大部分窗口系统使用共享缓冲区图式,通过管理和维护窗口的层叠关系以及相互之间的剪切来实现多窗口的管理。传统的共享缓冲区图式很难在多进程环境下实现不规则窗口、半透明或模糊叠加效果,而合成图式则可以轻松解决这些问题,而且还可以方便实现窗口切换时的动画效果。 在不使用合成器的情形下,窗口切换时的动画效果只能作用于单个进程中的多个窗口,应用开发者要仔细编码来处理窗口切换动画的实现细节,这样,一方面让单个进程的执行逻辑变得更为复杂,程序更容易出现缺陷,另一方面无法充分利用 Linux 等通用操作系统内核提供的多进程管理能力。而有了合成器之后,每个进程只需创建窗口并在窗口中绘制,无需关心其中的内容是如何被展示到屏幕上的——这项工作由独立的合成器来完成。这样,应用开发者不必关心窗口切换动画的实现细节,于是大大简化了窗口切换动画的实现。 经过几个版本的迭代,MiniGUI 5.0 的合成图式已然成熟。由飞漫软件发起的开源操作系统项目 HybridOS 以及 HybridOS Lite 均基于 MiniGUI 5.0 的合成图式。 开发者可定制自己的合成器(compositor),并通过加载动态库的形式装载自定义合成器或者第三方合成器。在整个系统的不同运行阶段,甚至可以在多个合成器之间进行切换。 2) 完整的 Unicode 支持 在 MiniGUI 4.0 的开发中,重构了 MiniGUI 的底层字符集、编码及字体支持模块: 提供了完整的 Unicode 支持接口,符合 Unicode 12.0.0 标准及相关规范。 提供了用于支持复杂书写系统(如阿拉伯文、泰文、印度语、蒙文、藏文等)的相关接口,用于复杂或者混合文字的排版、字体成型和渲染。 为支持复杂文字,在保持接口稳定性和兼容性的基础上增强了 MiniGUI 逻辑字体和设备字体的相关接口。 3) 支持多点触摸屏以及 GPU 加速 支持除键盘鼠标之外的其他输入设备,如多点触摸屏、手势、游戏杆、平板笔等。 新增drm图形引擎,可通过全新的 Linux DRI/DRM 图形栈支持现代的显示卡或者 GPU,用于实现硬件加速的 2D/3D 图形渲染。 通过汇编代码,针对 ARM (32 及 64 位)架构提供了基于矢量运算指令的优化。 除了以上三个主要的增强之外,MiniGUI 4.0/5.0 还调整了一些底层架构,重构了一些底层模块。有兴趣的读者可以阅读完整的发布说明文档并顺手点亮 MiniGUI 仓库的星星: MiniGUI 5.0 系列: https://github.com/VincentWei/minigui/blob/rel-5-0/RELEASE-NOTES.md MiniGUI 4.0 系列: https://github.com/VincentWei/minigui/blob/rel-4-0/RELEASE-NOTES.md MiniGUI 和 HybridOS、HVML 的关系 简单而言,这三个项目相互独立而又相互关联。 其中,MiniGUI 为嵌入式系统提供桌面级窗口系统的功能,也提供了基于 C 语言的 GUI Toolkit 库,开发者可独立使用而开发各类 GUI 应用。 HybridOS 是一个针对智能设备的操作系统,架构在 Linux 内核和 MiniGUI (合成图式)之上。目前,HybridOS 中集成了飞漫增强的 hiWebKit 引擎,可使用 Web 前端技术开发图形和多媒体应用。另外,通过飞漫开发的数据总线 hiBus,应用可以和其他模块完成数据交换及功能调用。因此,相比 MiniGUI 只提供窗口管理和 GUI 功能之外,HybridOS 则提供了完整的应用开发框架以及集成系统功能的基础设施。 HVML 最初是为了解决 MiniGUI 基于 C 语言的接口不利于开发者快速开发 GUI 应用这一问题而提出,最终将成为 HybridOS 的应用编程语言。然而,HVML 可以用于更加通用的场合,比如桌面应用以及云应用的开发当中。 当 HVML 成熟之后,我们可以在 HybridOS 上使用 HVML 开发应用,此时,MiniGUI 是 HybridOS 的窗口系统以及图形栈的一部分;我们也可以在 Windows、macOS、Linux 桌面系统上使用 HVML 开发应用,此时,HVML 的运行时环境基于上述桌面操作系统,和 HybridOS、MiniGUI 无关。 要更详细地了解 HVML 的来龙去脉以及开发进展,推荐阅读#HVML 话题下的文章。 源代码包下载 最后,附上 MiniGUI 5.0.9 的源代码包下载页面: http://www.minigui.com/download 亦可访问如下用于构建 MiniGUI 的仓库: https://github.com/VincentWei/build-minigui-5.0 或者 https://gitlab.fmsoft.cn/VincentWei/build-minigui-5.0 另外,欢迎请点击此处,赞助飞漫主持的开源项目 MiniGUI、HybridOS 和 HVML。 附:商标声明 本文提到的产品、技术或者术语名称,涉及北京飞漫软件技术有限公司在中国或其他地区注册的如下商标: 飛漫 FMSoft 合璧 HybridOS HybridRun MiniGUI xGUI miniStudio HVML 呼噜猫 Purring Cat PurC

优秀的个人博客,低调大师

Harbor Operator 1.1.0 更新来了

Harbor 维护者很高兴地宣布 Harbor Operator v1.1.0 已发布!主要功能特点包括: 支持部署 Harbor v2.3 支持 Kubernetes 1.21 版本 Ingress 版本升级到 v1 优化 CRD 定义以提供数据库、存储和缓存配置的统一规范(引入新的 CRD 版本 v1beta1) Day2 配置可使用CRD 的声明方式 支持使用负载均衡器暴露Harbor 服务 暴露更多的S3 存储配置选项 以统一的格式记录日志 扩展底层的 Operator(PostgreSQL、Redis 和 Minio)所支持的版本 欢迎任何反馈!想要了解更多详情,请查看 v1.1.0 发布页面: https://github.com/goharbor/harbor-operator/releases/tag/v1.1.0。

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册