awtk/docs/memory.md
2018-10-11 14:19:13 +08:00

1.4 KiB
Raw Blame History

AWTK内存需求评估指南

假设:

  • LCD的宽度为LCD_W
  • LCD的高度为LCD_H
  • LCD的每像素占用的字节数为BPP

一、Framebuffer

  • 单framebuffer需要LCD_W * LCD_H * BPP

  • 双framebuffer需要2 * LCD_W * LCD_H * BPP

  • 三framebuffer需要3 * LCD_W * LCD_H * BPP

STM32F103等低端平台无需Framebuffer故无此内存开销。

二、窗口动画

如果启用窗口动画需要两个framebuffer大小的内存LCD_W * LCD_H * BPP

STM32F103等低端平台禁用窗口动画故无此内存开销。

三、图片解码

  • 一般带alpha通道的图片解码后每像素占用4字节。
  • 不带alpha通道的图片解码后如果定义WITH_BITMAP_BGR565每像素占用2字节否则占用4字节。

STM32F103等低端平台直接使用位图编译到常量中故无此内存开销。

四、输入法

Google拼音输入大概700K。

STM32F103等低端平台不启用输入法故无此内存开销。

五、字体

  • 字体文件本身大小。
  • 字体图片缓存大小。

STM32F103等低端平台直接使用位图字体编译到常量中故无此内存开销。

六、控件

一般控件占用100B左右(64位系统会多一些)一般复杂度的应用程序控件占用内存的峰值小余100K。

对于低端平台,可以简化界面,关闭后台窗口,以减少内存的需求。