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

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

对比的程序为:

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

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

运行平台为: i.MX6ULL Linux

1. 可以执行文件大小

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. 内存占用

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.mzph.cn/news/831636.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Delta lake with Java--利用spark sql操作数据1

今天要解决的问题是如何使用spark sql 建表,插入数据以及查询数据 1、建立一个类叫 DeltaLakeWithSparkSql1,具体代码如下,例子参考Delta Lake Up & Running第3章内容 import org.apache.spark.sql.SaveMode; import org.apache.spark.…

区域文本提示的实时文本到图像生成;通过一致性自注意力机制的视频生成工具保持视频的一致性;专门为雪佛兰汽车设计的客服聊天机器人

✨ 1: StreamMultiDiffusion StreamMultiDiffusion是首个基于区域文本提示的实时文本到图像生成框架,实现了高速且互动的图像生成。 StreamMultiDiffusion 旨在结合加速推理技术和基于区域的文本提示控制,以克服之前解决方案中存在的速度慢和用户交互性…

约瑟夫问题新解法

前言 又碰到了约瑟夫问题,这样的题目本来用环形链表模拟的话就能做出来。然而,最近新学习了一种做法,实在是有点震惊到我了。无论是思路上,还是代码量上,都是那么的精彩。就想也震惊一下其他人。谁能想到原来模拟出来四…

C/C++程序设计实验报告综合作业 | 小小计算器

本文整理自博主本科大一《C/C程序设计》专业课的课内实验报告,适合C语言初学者们学习、练习。 编译器:gcc 10.3.0 ---- 注: 1.虽然课程名为C程序设计,但实际上当时校内该课的内容大部分其实都是C语言,C的元素最多可能只…

深度解析 Spring 源码:探寻Bean的生命周期

文章目录 一、 Bean生命周期概述二、Bean生命周期流程图三、Bean生命周期验证3.1 代码案例3.2 执行结果 四、Bean生命周期源码4.1 setBeanName()4.2 setBeanFactory()4.3 setApplicationContext()4.4 postProcessBeforeInitialization()4.5 afterPropertiesSet()4.6 postProces…

力扣刷题第1天:消失的数字

大家好啊,从今天开始将会和大家一起刷题,从今天开始小生也会开辟新的专栏。😜😜😜 目录 第一部分:题目描述 第二部分:题目分析 第三部分:解决方法 3.1 思路一:先排序…

十、多模态大语言模型(MLLM)

1 多模态大语言模型(Multimodal Large Language Models) 模态的定义 模态(modal)是事情经历和发生的方式,我们生活在一个由多种模态(Multimodal)信息构成的世界,包括视觉信息、听觉信息、文本信息、嗅觉信…

MySQL技能树学习——数据库组成

数据库组成: 数据库是一个组织和存储数据的系统,它由多个组件组成,这些组件共同工作以确保数据的安全、可靠和高效的存储和访问。数据库的主要组成部分包括: 数据库管理系统(DBMS): 数据库管理系…

MySQL45讲(一)(40)

回顾binlog_formatstatement STATEMENT 记录SQL语句。日志文件小,节约IO,但是对一些系统函数不能准确复制或不能复制,如now()、uuid()等 在RR隔离级别下,binlog_formatstatement 如果执行insert select from 这条语句是对于一张…

OpenCV如何为等值线创建边界旋转框和椭圆(63)

返回:OpenCV系列文章目录(持续更新中......) 上一篇:OpenCV 为轮廓创建边界框和圆(62) 下一篇:OpenCV的图像矩(64) 目标 在本教程中,您将学习如何: 使用 OpenCV 函数 cv::minAreaRect使用 OpenCV 函数 cv::fitEllipse cv::min…

Gradle 进阶学习 之 build.gradle 文件

build.gradle 是什么? 想象一下,你有一个大型的乐高项目,你需要一个清单来列出所有的乐高积木和它们如何组合在一起。在软件开发中,build.gradle 就是这个清单,它告诉计算机如何构建(组合)你的软…

这是一个简单的照明材料网站,后续还会更新

1、首页效果图 代码 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>爱德照明网站首页</title><style>/*外部样式*/charset "utf-8";*{margin: 0;padding: 0;box-sizing: border-box;}a{text-dec…

开源版本管理系统的搭建一:SVN

作者&#xff1a;私语茶馆 1.Windows搭建SVN版本管理系统 1.1.SVN概要和组成 背景介绍 Svn是一个开源版本管理系统&#xff0c;由CollabNet公司于2000年发布&#xff0c;23年12月发布最新版本Apache Subversion 1.14.3。官方网站&#xff1a;Apache Subversion。 Svn可以直…

G1 - 生成对抗网络(GAN)

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 目录 理论知识生成器判别器基本原理 环境步骤环境设置数据准备模型设计模型训练模型效果展示 总结与心得体会 理论知识 生成对抗网络&#xff08;Generative …

U盘惊现“USBC乱码”?别急,数据恢复有妙招!

近日&#xff0c;不少用户反馈在将U盘插入电脑后&#xff0c;出现了一个令人困惑的问题&#xff1a;U盘里的文件或文件夹名突然变成了无法识别的乱码&#xff0c;甚至整个U盘的文件系统显示为“USBC乱码”。面对这种情况&#xff0c;用户往往感到无从下手&#xff0c;担心重要数…

【知识加油站】——机电产品数字孪生机理模型构建

明确一种多领域、多层次、参数化、一致性的机电一体化装备数字孪生机理模型构建准则&#xff01; 关键词英文简称&#xff1a; 数字孪生&#xff1a;DT物联网&#xff1a;IoT网络物理系统&#xff1a;CPS高级架构&#xff1a;HLA统一建模语言&#xff1a;UML数控机床&#xf…

webpack打包工具

目录 1. yarn包管理器 1.1 yarn 是什么, 有什么用? 1.2 yarn的使用 ​​​​​​2. webpack基本概述 2.1 webpack是什么&#xff1f; 2.2 什么是打包&#xff1f; 2.3 webpack能做什么&#xff1f; 3. webpack基本使用步骤 3.1 webpack基本使用步骤 3.2 package.jso…

阿里低代码引擎学习记录

官网 一、关于设计器 1、从设计器入手进行低代码开发 设计器就是我们用拖拉拽的方法&#xff0c;配合少量代码进行页面或者应用开发的在线工具。 阿里官方提供了以下八个不同类型的设计器Demo&#xff1a; 综合场景Demo&#xff08;各项能力相对完整&#xff0c;使用Fusion…

转速和频率转换功能块(CODESYS ST源代码)

1、转速/频率常用转换关系 转速/频率/线速度/角速度计算FC_200 plc计算角速度-CSDN博客文章浏览阅读3.2k次。里工业控制张力控制无处不在,也衍生出很多张力控制专用控制器,磁粉制动器等,本篇博客主要讨论PLC的张力控制相关应用和算法,关于绕线机的绕线算法,大家可以参看专…

手写一个uart协议——rs232

先了解一下关于uart和rs232的基础知识 文章目录 一、RS232的回环测试1.1模块整体架构1.2 rx模块设计1.2.1 波形设计1.2.2代码实现与tb1.2.4 仿真 1.3 tx模块设计1.3.1 波形设计1.3.2 代码实现与tb1.3.4 顶层设计1.3.3 仿真 本篇内容&#xff1a; 一、RS232的回环测试 上位机…