其实很好理解,各大手机厂商都对系统有自己的一套性能调度。
比如MIUI是出了名的调度激进,玩游戏时发热明显,OV则相对保守,限制帧率来控制温度。
而厂商对于微信的性能调度也很简单粗暴。
系统识别到微信启动或切换页面时,就会瞬间提高CPU频率,从而提高微信的流畅度。
在早期微信功能不多的时候,确实可以这么做嗷。
但随着微信不断迭代,功能也越来越复杂,小程序、聊天、公众号、相册等都是单独的界面。
腾讯觉得,只靠系统那一套调度,已经不能满足微信对流畅度的需求了。
于是就有了小雷正在讨论的Hardcoder框架。
大家可以看下图,传统的系统调度方案是先由App发出获取性能的需求。
这个需求被安卓系统框架接收后,就会给予这个App合适的性能调度。
但有了Hardcoder框架后,微信就不用再看系统调度的脸色了,它为所欲为,可以随意调用系统性能资源。
比如从主界面进入聊天界面时,拉高CPU频率,甚至把微信某些线程挪到CPU超大核里面运行,
一切都为了让微信用起来更加流畅。
既然能做到绕过系统调度,Hardcoder肯定也需要手机厂商配合的。
喏,就是把服务端放进国内的系统定制UI(MIUI、Flyme等)。
再把客户端放进微信里,这样微信就可以绕过系统那套调度。
用“私人搭建”的Hardcoder框架来调用CPU和GPU的性能资源。