AWTK 和 QT 资源占用不完全对比

news/2024/9/18 12:51:13/ 标签: AWTK

因为没有开发两个完全一样的应用程序,对比的结果并不是很准确,仅供参考。

对比的程序为:

  • AWTK demoui 演示了 AWTK 常用功能。

  • QT QDesktop 演示了 QT 常用功能。

运行平台为: i.MX6ULL Linux

1. 可以执行文件大小

AWTK_12">1.1 AWTK

带调试信息版本

-rwxr-xr-x 1 lixianjing lixianjing 2.3M May  3 08:29 demoui

不带调试信息版本

-rwxr-xr-x 1 lixianjing lixianjing 1.6M May  3 08:29 demoui

依赖的库文件(只依赖少数几个系统库)

        linux-vdso.so.1 (0x7ec5c000)libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x76e41000)libpthread.so.0 => /lib/libpthread.so.0 (0x76e19000)librt.so.1 => /lib/librt.so.1 (0x76e02000)libm.so.6 => /lib/libm.so.6 (0x76d84000)libdl.so.2 => /lib/libdl.so.2 (0x76d71000)libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x76d44000)libc.so.6 => /lib/libc.so.6 (0x76c0b000)/lib/ld-linux-armhf.so.3 (0x76f93000)

1.2 QT

可以执行文件

-rwxr-xr-x 1 root root 1.6M Aug 14  2019 QDesktop

依赖的库

        linux-vdso.so.1 (0x7efe5000)libQt5Widgets.so.5 => /usr/lib/libQt5Widgets.so.5 (0x769d4000)libQt5Multimedia.so.5 => /usr/lib/libQt5Multimedia.so.5 (0x768e1000)libQt5Qml.so.5 => /usr/lib/libQt5Qml.so.5 (0x764eb000)libQt5Network.so.5 => /usr/lib/libQt5Network.so.5 (0x76354000)libQt5Core.so.5 => /usr/lib/libQt5Core.so.5 (0x75db4000)libpthread.so.0 => /lib/libpthread.so.0 (0x75d8c000)libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x75c4b000)libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x75c1e000)libc.so.6 => /lib/libc.so.6 (0x75ae5000)libQt5Gui.so.5 => /usr/lib/libQt5Gui.so.5 (0x755d8000)libm.so.6 => /lib/libm.so.6 (0x7555a000)libpulse.so.0 => /usr/lib/libpulse.so.0 (0x75505000)libdl.so.2 => /lib/libdl.so.2 (0x754f2000)libz.so.1 => /lib/libz.so.1 (0x754d0000)libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x753d3000)/lib/ld-linux-armhf.so.3 (0x76f08000)libGLESv2.so.2 => /usr/lib/libGLESv2.so.2 (0x753bc000)libpng16.so.16 => /usr/lib/libpng16.so.16 (0x75385000)libpulsecommon-8.0.so => /usr/lib/pulseaudio/libpulsecommon-8.0.so (0x7530a000)libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x752f9000)libSM.so.6 => /usr/lib/libSM.so.6 (0x752e2000)libICE.so.6 => /usr/lib/libICE.so.6 (0x752bd000)libXtst.so.6 => /usr/lib/libXtst.so.6 (0x752a9000)libXi.so.6 => /usr/lib/libXi.so.6 (0x7528d000)libXext.so.6 => /usr/lib/libXext.so.6 (0x7526f000)libX11.so.6 => /usr/lib/libX11.so.6 (0x75155000)libxcb.so.1 => /usr/lib/libxcb.so.1 (0x7512f000)libXau.so.6 => /usr/lib/libXau.so.6 (0x7511d000)libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x75109000)libjson-c.so.2 => /usr/lib/libjson-c.so.2 (0x750f1000)libsndfile.so.1 => /usr/lib/libsndfile.so.1 (0x7507b000)libFLAC.so.8 => /usr/lib/libFLAC.so.8 (0x75015000)libvorbisenc.so.2 => /usr/lib/libvorbisenc.so.2 (0x74f84000)libvorbis.so.0 => /usr/lib/libvorbis.so.0 (0x74f4e000)libogg.so.0 => /usr/lib/libogg.so.0 (0x74f3a000)libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x74eec000)libcap.so.2 => /lib/libcap.so.2 (0x74ed9000)librt.so.1 => /lib/librt.so.1 (0x74ec2000)libpcre.so.1 => /usr/lib/libpcre.so.1 (0x74e74000)libdrm.so.2 => /usr/lib/libdrm.so.2 (0x74e59000)libglapi.so.0 => /usr/lib/libglapi.so.0 (0x74e11000)

依赖的库比较多,只是看几个基本库

-rwxr-xr-x 1 root root 5.0M Aug 14  2019 /usr/lib/libQt5Gui.so.5.12.9
-rwxr-xr-x 1 root root 5.1M Aug 14  2019 /usr/lib/libQt5Widgets.so.5.12.9
-rwxr-xr-x 1 root root 5.6M Aug 14  2019 /usr/lib/libQt5Core.so.5.12.9

结论:QT 的库和可执行文件比较大,是 AWTK 的 10 倍以上。

2. 内存占用

AWTK_107">2.1 AWTK

VmHWM:      7820 kB
VmRSS:      5632 kB
VmData:    17960 kB
VmStk:       136 kB
VmExe:      1568 kB
VmLib:      3144 kB
VmPTE:        52 kB
Threads:        3

2.2 QT

VmHWM:     93236 kB
VmRSS:     92236 kB
VmData:   187964 kB
VmStk:       136 kB
VmExe:      1448 kB
VmLib:     56492 kB
VmPTE:       210 kB
Threads:        18

结论:QT 的内存占用是 AWTK 的 10 倍以上。

3.启动时间

出现第一个界面的时间。

  • AWTK: 无法感知,小于 0.5 秒
  • QT: 6 秒

结论:QT 的启动时间是 AWTK 的 10 倍以上。


http://www.ppmy.cn/news/1457972.html

相关文章

【北京迅为】《iTOP-3588开发板源码编译手册》-第六章 安装编译所需要的依赖包

RK3588是一款低功耗、高性能的处理器,适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用,RK3588支持8K视频编解码,内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP&…

【Kali Linux工具篇】使用Aircrack-ng破解wifi密码

前期准备 1、一个无线网卡 2、密钥爆破字典 实站过程 1、设置wlan为监听模式 airmon-ng start wlan0 #开启网卡wlan0监听模式 iwconfig #查看网卡状态,发现wlan0mon,表示已开启成功2、探测附近WiFi airdump-ng wlan0monBSSID 代表…

pytorch中的transforms.resize()函数

transforms.Resize 是 PyTorch 的 torchvision.transforms 模块中的一个函数,它用于调整图像的大小。这个函数可以接收一个整数或一个元组作为参数,以指定输出图像的大小。 使用方式 当 size 参数是一个整数时,表示将图像的较短边缩放到指定…

富格林:曝光可信实用做单技巧

富格林悉知,现货黄金交易是金融市场中的重要投资方式,具有较高的流动性和安全性。据了解,选择合适可信的交易策略是成功进行现货黄金交易的关键。虽然目前市面上已曝光的可信做单技巧很多,但对于新手投资者来说可能一时之间难以寻…

Go微服务精讲:Go-Zero全流程实战即时通讯(超清)

go-zero 是一个集成了各种工程实践的 web 和 rpc 框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。 Go微服务精讲:Go-Zero全流程实战即时通讯(超清) go-zero 中的 api,rpc,数据库等涉及的代码,…

记一次favicon.ico的折腾

某项目需要将前端和后台整合在一起 我也不知道为啥要整合 上面有要求就整呗 正常前端npm run build打包后 dist内会根据设置自动生成favicon.ico文件在根目录下 但由于前后端整合 需要打包后将图标放在dist下的static文件夹里 需要的效果 打包后 index.html里 <link rel&…

在Unity中实现分页数据显示和分页控制

参考&#xff1a;用两种简单的方式实现unity的分页效果 using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.Rendering.VirtualTexturing; using UnityEngine.TerrainUtils;public class PageControll…

网络安全与IP地址的关联

网络安全与IP地址之间存在着密不可分的关系。IP地址作为网络通信的基础&#xff0c;对于网络安全的保障具有至关重要的作用。以下将详细探讨网络安全与IP地址之间的关联&#xff0c;以及IP地址在网络安全中的应用。 一、IP地址与网络安全的关系 IP地址是网络通信的基础&#x…

2024年数维杯数学建模ABC题思路分析

文章目录 1 赛题思路2 比赛日期和时间3 竞赛信息4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间&#xff1a;2024…

phpize +Visual Studio + MSYS2 + bison 草稿记录并未正常完成

phpize Visual Studio MSYS2 bison 先安装 Visual Studio https://visualstudio.microsoft.com/zh-hans/vs/ 在安装过程中&#xff0c;选择安装工作负载。确保选择了 C 工作负载以及适用于 C 开发的相关组件&#xff0c;例如 MSVC v142 - VS 2022 C x64/x86 build tools。 …

第七章 TypeScript函数的介绍和使用

函数&#xff0c;一个再熟悉不过的话题了&#xff0c;之前几章里面我们也多次提到过&#xff0c;而且提到过各种各样的 TS 内和函数相关的内容今天&#xff0c;咱们来详细说一下函数内的各种详细内容的使用 文章目录 一、函数的可选参数二、函数内的虚拟 this三、函数的重载 一…

商城数据库88张表结构完整示意图51~60(十三)

五十一&#xff1a; 五十二&#xff1a; 五十三&#xff1a; 五十四&#xff1a; 五十五&#xff1a; 五十六&#xff1a; 五十七&#xff1a; 五十八&#xff1a; 五十九&#xff1a; 六十&#xff1a;

redis哨兵原理

redis集群中为了防止主机宕机导致集群瘫痪&#xff0c;引入了哨兵集群&#xff0c;哨兵集群通过实时监控主机是否正常运行&#xff0c;并且在主机出现故障时及时将另一个满足条件的从机变为新的主机以保证redis集群正常运转&#xff0c;那这一过程具体发生了什么呢&#xff1f;…

推荐5个AI工具平替GPT

随着AI技术的快速发展&#xff0c;AI写作正成为创作的新风口。但是面对GPT-4这样的国际巨头&#xff0c;国内很多小伙伴往往望而却步&#xff0c;究其原因&#xff0c;就是它的使用门槛高&#xff0c;还有成本的考量。 不过&#xff0c;随着GPT技术的火热&#xff0c;国内也涌…

增强for循环(for-each循环)

增强for循环&#xff08;for-each循环&#xff09;通常可以用于遍历实现Iterable接口的数据结构。Iterable接口定义了一个iterator()方法&#xff0c;该方法返回一个迭代器对象&#xff0c;用于遍历集合中的元素。 以下是一些常见的实现了Iterable接口的数据结构&#xff0c;可…

livox雷达斜装修改

fast_lio中的mid360.yaml中的外参 extrinsic_est_en: false # true: enable the online estimation of IMU-LiDAR extrinsicextrinsic_T: [ -0.011, -0.02329, 0.04412 ]extrinsic_R: [ 1, 0, 0,

充电宝哪个牌子好更耐用?2024年耐用充电宝不能错过

随着科技的进步和智能手机的普及&#xff0c;我们的生活已经与手机紧密相连。然而&#xff0c;手机电量的限制却常常让我们感到焦虑和不安。一旦手机没电&#xff0c;我们就仿佛失去了与外界联系的能力&#xff0c;无法及时接收重要信息、进行导航或支付。为了解决这个问题&…

iOS 改变uislider的滑块大小

简介 使用继承uislider并重写一些方法并不能实现改变滑块大小的要求&#xff0c;这里需要一张与要求的大小相同的图片设置到滑块上就可以了 代码 下面是裁剪的代码 (UIImage*)image:(UIImage*)image scaleToSize:(CGSize)size{UIGraphicsBeginImageContext(size);//size为CG…

SpringBoot过滤器简单构建详细教程以及与拦截器区别解释

作用范围&#xff1a;过滤器基于Servlet规范&#xff0c;作用于更广泛的层面&#xff0c;不仅限于Spring MVC&#xff0c;它可以拦截进入Web应用的所有请求&#xff0c;包括静态资源请求。过滤器可以对请求和响应的内容进行预处理和后处理。实现方式&#xff1a;过滤器需要实现…

c++ 的线程是个对象吗

在C中&#xff0c;线程通常不是直接通过对象来表示的&#xff0c;但C11及以后的标准引入了对线程的高级抽象&#xff0c;主要是通过<thread>库中的std::thread类来实现的。因此&#xff0c;可以说std::thread是一个类&#xff0c;其实例&#xff08;对象&#xff09;表示…