调试android程序是否耗电时候可采用单位时间内监控jiffies的方式实现
- 什么是jiffies
全局变量jiffies用来记录自系统启动以来产生的节拍的总数。启动时,内核将该变量初始化为0,此后,每次时钟中断处理程序都会增加该变量的值。一秒内时钟中断的次数等于Hz,所以jiffies一秒内增加的值也就是Hz。
系统运行时间以秒为单位,等于jiffies/Hz。注意,jiffies类型为无符号长整型(unsigned long),其他任何类型存放它都不正确。将以秒为单位的时间转化为jiffies:seconds * Hz,将jiffies转化为以秒为单位的时间:jiffies / Hz相比之下,内核中将秒转换为jiffies用的多些。
- 调试方法
1.安装你的app后,尽量关闭无关app,将屏幕锁屏时间调至最大(一般是10分钟)
2.进入adb shell 中使用如下命令
ps | grep “你的app包名”
cat /proc/“进程号”/stat | awk -F " " '{print $14,$15}'
每隔10分钟记录下这两个值,做差值
第一个值是内核态jeffies,第二个值是用户态jeffies
3.比较优化后的app在相同测试时间的jeffies数,就可以判断你的程序的CPU耗电状况
相关推荐
linux定时器和Jiffies.pdf
// CPU占用率计算原理:// 1、读取/proc/pid/stat文件,其中记录了从开机到现在,本进程所占用的CPU时间(单位jiffies)// 2、然后再读取/proc/stat文件,其中记录了从开机到现在,系统所占用的CPU时间(单位jiffies...
linux中的jiffies变量.pdf
获取内核jiffies值(此为博客http://blog.csdn.net/shallnet 文章对应源码下载)
linux中的jiffies变量文.pdf
需要了解的linux HZ Tick Jiffies.docx
Linux设备驱动程序学习(10)-时间、延迟及延缓操作 - Linux设备驱动程序
系统定时器频率(节拍率)是通过... 全局变量Jiffies用来记录自系统启动以来产生的节拍的总数,Jiffies一秒内增加的值是HZ,系统运行时间以秒为单位计算,等于jiffies/HZ。 extern unsigned long volatile jiffie
1)jiffies和jiffies_64 内核用jiffies_64全局变量记录系统自启动以来经过了多少次Tick。它的声明如下(代码位于kernel/time/timer.c中): __visible u64 jiffies_64 __cacheline_aligned_in_smp = INITIAL_...
时钟源的精度由其驱动时钟频率决定,内核使用clocksource结构来抽象时钟源。 时间表示: 内核使用不同的时间表示方法,如jiffies(基于时钟滴答的计数)、timeval(秒和微秒)、timespec(秒和纳秒)和ktime(通用...
procfs_example 前言 本程序是为了《操作系统课程设计》(浙江大学出版社09年版 李善平著)第六章/proc实验而写,因书上及网络上的现有教程基本上都是10年以前内核2点几的...测试使用的内核版本为3.10.0,其他版本内核
CPSC_351 计算机科学351 项目1:除了hello.c之外,此分配还将涉及设计两个内核模块。 你好ç jiffies.c 秒
LinuxOS性能调优——内存篇.今天继续在linuxRH上进行调优,之前Jason的linuxOS调优上提到了一般的步骤及方法,今天继续给LinuxOS的调优进行下去,我们关注的还是在内存端的参数,留下点...该值以jiffies为单位测量。Ji
延迟校准(获得时钟jiffies与CPU主频ticks的延迟,calibrate_delay()) 内存初始化(设置内存上下界和页表项初始值,mem_init()) 创建和设置内部及通用cache("slab_cache",kmem_cache_sizes_init()) 创建uid ...
JEFRi是一个实体框架,它是组织发展工作的完整数据抽象规范。 Active Record模式在数据库中留下了太多的数据模型。 REST服务不灵活。 Rails完全浪费了太多代码...1.2.1 2014-03-07使用新的基础jiffies utils重新发布。
CPSC-351 jiffies_project 曹安迪
主要目标: 提供的时钟源不会受到无法控制的时钟漂移的影响,这与在较新Linux LTS内核(例如5.4)中使用精致化的jiffies时所见提供可作为模块加载的时钟源,不需要用户从源代码构建完整的内核是平台无关的,即在...
致敬英雄! 一、Linux内核定时器初探 1.1、图形界面配置系统节拍率 中断周期性产生的频率就是系统频率,也叫做节拍率(tick rate),单位是 Hz。...1.2、重要全局变量jiffies 在上一步,我们采用了 10
6.4.2 更新jiffies_64、xtime 269 6.4.3 对当前进程记账 271 6.4.4 时钟中断处理小结 272 6.5 内核定时器工作原理 273 6.5.1 初始化内核定时器节点 273 6.5.2 激活内核定时器节点 273 6.5.3 内核定时器...
6.4.2 更新jiffies_64、xtime 269 6.4.3 对当前进程记账 271 6.4.4 时钟中断处理小结 272 6.5 内核定时器工作原理 273 6.5.1 初始化内核定时器节点 273 6.5.2 激活内核定时器节点 273 6.5.3 内核定时器...