因为没有开发两个完全一样的应用程序,对比的结果并不是很准确,仅供参考。
对比的程序为:
-
AWTK demoui 演示了 AWTK 常用功能。
-
QT QDesktop 演示了 QT 常用功能。
运行平台为: i.MX6ULL Linux
1. 可以执行文件大小
1.1 AWTK
带调试信息版本
shell
-rwxr-xr-x 1 lixianjing lixianjing 2.3M May 3 08:29 demoui
不带调试信息版本
shell
-rwxr-xr-x 1 lixianjing lixianjing 1.6M May 3 08:29 demoui
依赖的库文件(只依赖少数几个系统库)
shell
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
依赖的库
shell
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
shell
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
shell
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 倍以上。