设为首页 加入收藏

TOP

随笔之Android平台上的进程调度探讨
2014-11-24 11:47:41 来源: 作者: 【 】 浏览:0
Tags:随笔 Android 台上 进程 调度 探讨

一由来


最近在翻阅MediaProvider的时候,突然想起之前碰到的一个问题,该问题是这样的:


但是我们实际测试的时候,通过top –m 5查看cpu占有率的时候,发现只要一操作Home,android.process.media进程cpu占有率就会下降很多。


当时看到这个现象,直观感觉就是MediaProvider抢占CPU能力不够。直接把该现象告诉领导,这个事情也就结了。但是一直没在代码中找到依据:总有地方设置进程的优先级吧??


后来,时间充裕了,想起这个问题。果不其然,在MediaScannerService中,找到答案:


上面代码显示得将本进程的优先级设置为BACKGROUND+LESS_FAVORABLE。


那么这个优先级是什么呢?


本随笔将关注两个问题:


Android平台提供的调度接口及其它的实现
调度一定是依靠Linux OS的,那么本随笔也会顺便介绍一下Linux OS中的进程调度相关的知识。


二 Android平台中的进程调度接口


从最上的Java层看,Anroid提供的Process类封装了进程调度优先级,调度策略等一些API。下图是整体调用流程和相关文件位置。





图1 进程调度的API以及调用分发流程


从上图我们可知:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android PhoneGap(Cordova)弹出.. 下一篇Unity3D图像后处理特效——Vortex..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·请问c语言刚入门,该 (2025-12-26 10:21:04)
·python 编程怎么定义 (2025-12-26 10:21:01)
·09-指 针 (一)-c语言 (2025-12-26 10:20:58)
·About - Redis (2025-12-26 08:20:56)
·Redis: A Comprehens (2025-12-26 08:20:53)