1. 软件原因:
我们安装的应用软件越来越多,而国产app经常不请自来在后台偷偷运行。这些高票的回答里都有。我要补充的是下面的硬件或者说是固件原因。
2. 硬件/固件原因:
这和手机的存储介质——闪存关系很大。 数据表明,我们对手机存储空间或SSD使用大于75%,写入性能会因为写放大而大大下降。 image.png回答二:为什么会觉得android卡而linux服务器不卡
一个根本的问题就是gui,对于gui程序(包括launcher本身),让用户觉得卡顿一般都是刷新率的问题
而linux服务器一般不运行桌面,跑跑后台进程即可,即使你某个软件很慢,但是最终都会完成,并且会把结果告诉你。你拿多核服务器编译android的rom和单核服务器编译android的rom时间差异天差地别,但是你仍然可以通过screen或者nohup来避免这个问题,转而去做其他事情,这都是进程调度的功劳,这方面android也是一样的。
image.png唯一不同的是,android的主线程刷新周期是有限制的,保证用户能够流畅使用,android系统每隔16ms发出VSYNC信号,触发对UI进行渲染, 如果每次渲染都成功,这样就能够达到流畅的画面所需要的60fps,为了能够实现60fps,这意味着程序的大多数操作都必须在16ms内完成。
这也是为什么软件需要优化的原因,就是为了能保证16ms把后台处理完毕,然后交给opengl去绘制ui。如果没有完成,那么就会丢帧,造成视觉上的卡顿。
有人仅仅说是软件设计的不完善导致的android手机卡顿,这是不完全正确,甚至有偏见的。android本身有自己的内存管理机制,单个应用也有自己的内存使用上限,即使你代码写得稀烂,你也不用担心你可以把整个os的流畅性破坏掉,毕竟再不济,把你卸载掉就一了百了了。
最后给结论,android使用一定时间后卡顿的问题客观存在,和软件无关,和硬件有关
image.png
其实除了最后一句结论我不太赞同,其它我认为是这个问题最正确的回答,究其原因是UI的卡顿和服务器运行程序是两种完全不同的东西,不能从UI的卡顿的区别就认为安卓卡服务器不卡,安卓系统内核中那些原生进程它们的工作和运行于服务器的那堆进程本质上没多大区别,所谓的卡顿不卡顿也是纯UI上的感觉而已。其它的回答都没人明白这里面的区别,回答全没GET到核心的点上。
如果是你,你认为linux作为服务器端十年不重启都不卡而安卓用半年就十分卡的原因在哪?
豆瓣.png
网友评论