小米集团副总裁、手机部总裁曾学忠谈及了 “Android 系统为什么越用越卡”的问题
曾学忠表示,Android 系统越用越卡是因为用户长时间使用手机后,内存和存储紧缺以及碎片化,以及 Java 语言边解释边执行,效率低,Linux 完全公平的调度策略等问题。
IT之家了解到,曾学忠指出,小米系统软件基础架构 MITurbo 也一直在深度解决这些业界难题,目前搭载 MITurbo 4.0 技术的小米 10 至尊纪念版,无论是流畅度还是性能都属于业界顶尖水平。而 MITurbo4.0 的黑科技包括 MI 预编译系统、MI 防老化架构、MI 全场景资源管理。
MI预编译系统
我们知道 Java 程序 App 想要运行在高效的机器码模式下,代码需要在手机终端进行编译,但是这个编译过程异常消耗 CPU 的资源,会造成其他应用卡顿,而且会增大存储空间占用。在 And roid5.0 至 8.0 升级的过程中,谷歌的 AOT( ahead of time ) 编译一直没有一个最优方案,反复在存储和应用安装时间上做均衡。MI 预编译系统完美的解决了这些问题,小米会将应用第一时间生成的热点代码进行筛选以及进行即时编译,并且在编译的过程中限制编译线程对 CPU 的占用,防止编译消耗 CPU 而导致的卡顿。目前编译限制 CPU 占用的方案已经被谷歌采用到 AndroidR 的大版本中,开源给各个厂商。
MI 防老化架构
内存和存储的紧缺和碎片化也是越用越卡的根因之一。为了解决这个顽疾,小米的防老化架构引入了运行时的内存管理方案,动态内存清理方案以及文件系统防老化方案,深度且及时的对内存以及存储的碎片进行整理和清理,并且小米还对中低端机型做了更深度的定制,保证用户的流畅体验。
MI 全场景资源管理
1。 MI 调度时延引擎,Linux 完全公平的进程调度策略在高负载情况下会导致前台应用因为抢占而延时。MI 调度时延引擎实时监控前台应用的情况,动态调整关键线程调度策略,使得前台应用关键线程第一时间被响应,大幅降低响应时延。
2。 MI 智能 IO,同上,Linux 完全公平的 IO 调度策略在 IO 压力下会导致前台应用得不到合适的 IO 带宽,进而导致各种长时间无响应。MI 智能 IO 识别 IO 压力场景,并会对后台低优先级高带宽应用做 IO 的带宽限制,为前台应用应用提供更多带宽。