LXR | KVM | PM | Time | Interrupt | Systems Performance | Bootup Optimization

上一页 1 ··· 8 9 10 11 12

2017年1月23日

cpu_ops、suspend_ops、arm_idle_driver以及machine_restart/machine_power_off到底层PSCI Firmware分析

摘要: 在内核中针对的cpu的操作,比如arm_cpuidle_init、arm_cpuidle_suspend、boot_secondary、secondary_start_kernel、op_cpu_disable、op_cpu_kill、cpu_die、smp_cpu_setup、smp_prepar 阅读全文

posted @ 2017-01-23 19:58 ArnoldLu 阅读(6912) 评论(0) 推荐(0)

2017年1月20日

swap分析及其使用

摘要: 什么是swap swap主要是在内存不够用的时候,将部分内存上的数据交换到swap空间上,以便让系统不会因为内存不够用而导致oom或者更致命的情况出现。当内存使用存在压力的时候,开始触发内存回收行为,就可能会使用swap空间。 内核将很少使用的部分内存换出到块设备,相当于提供了更多的主内存,这种机制 阅读全文

posted @ 2017-01-20 16:08 ArnoldLu 阅读(10811) 评论(0) 推荐(1)

2017年1月16日

HiKey软硬件开发环境及其调试

摘要: HiKey是一款搭载华为海思麒麟620芯片,符合Linaro 96Boards标准的SBC开发板。它采用8核64位Cortex-A53处理器,主频高达1.2GHz。 HiKey作为AOSP支持的一款产品,同时也得到Linaro的大力支持,很多最新功能都会在上面进行验证。AOSP及内核代码能得到及时更 阅读全文

posted @ 2017-01-16 11:03 ArnoldLu 阅读(3659) 评论(0) 推荐(0)

2017年1月9日

Android/Linux boot time分析优化

摘要: 如果需要优化boot time,就需要一个量化的工具来分析每个阶段的时间消耗。这种类型的优化特别适合使用基于timeline的图表,有着明显的时间顺序。要求不但能给出整个流程消耗的时间,还要能对流程进行细化,获得每个阶段的时间。先从总体上查看优化程度,然后逐个查看异常的阶段。 分析工具化之后,可以快 阅读全文

posted @ 2017-01-09 23:56 ArnoldLu 阅读(6151) 评论(0) 推荐(0)

2017年1月6日

Suspend to RAM和Suspend to Idle分析,以及在HiKey上性能对比

摘要: 测试环境:AOSP 7.1.1+Kernel 4.4.17 HW:HiKey Ubuntu 14.04+Kernel 4.4.0-31 联系方式:arnoldlu@qq.com 1. Linux内核suspend状态 Linux内核支持多种类型的睡眠状态,通过设置不同的模块进入低功耗模式来达到省电功 阅读全文

posted @ 2017-01-06 17:51 ArnoldLu 阅读(11534) 评论(2) 推荐(3)

使用Minicom基于串口调试HiKey

摘要: 虽然通过adb shell调试方便,但是有些时候不得不借助于串口进行调试,比如测试suspend to ram之类的功能时,adb服务被关闭。 同时在minicom中也可以进入shell,进行操作。 第一步:如果没有安装minicom,安装minicom串口软件: 第二步:查看串口设备,输入“ls 阅读全文

posted @ 2017-01-06 09:36 ArnoldLu 阅读(1512) 评论(0) 推荐(0)

2017年1月4日

系统级性能分析工具perf的介绍与使用

摘要: 测试环境:Ubuntu16.04 + Kernel:4.4.0-31 系统级性能优化通常包括两个阶段:性能剖析(performance profiling)和代码优化。 性能剖析的目标是寻找性能瓶颈,查找引发性能问题的原因及热点代码。 代码优化的目标是针对具体性能问题而优化代码或编译选项,以改善软件 阅读全文

posted @ 2017-01-04 21:13 ArnoldLu 阅读(230759) 评论(1) 推荐(12)

2016年12月29日

Workload Automation分析及其使用

摘要: 1. Workload Automation介绍 Workload Automation是提供一个在设备上运行各种workload的工具,使用Python编写。WA具有良好的框架结构,方便快捷的扩展。包含几个方面的扩展:workloads、instruments、result_processors、 阅读全文

posted @ 2016-12-29 20:43 ArnoldLu 阅读(3330) 评论(0) 推荐(0)

重度使用示波器进行优化分析——一个DSDA项目回顾

摘要: 这是若干年前一个项目,最近有时间整理一下。回忆起来,印象最深刻的就是重度使用示波器辅助分析,进行优化。 项目背景是在原有项目3G+项目基础上,增加一颗2G+ Modem,使支持DSDA功能。 在介绍DSDA之前,稍微区分一下DSDS和DSDA: DSDS,即Dual SIM Dual Standby 阅读全文

posted @ 2016-12-29 00:18 ArnoldLu 阅读(1476) 评论(0) 推荐(0)

2016年12月28日

Linux CGroup之freezer分析与应用

摘要: Linux Kernel:4.4.17 CGroup的freezer子系统对于成批作业管理系统很有用,可以成批启动/停止任务,以达到及其资源的调度。 freezer子系统也有助于针对运行一组任务设置检查点。通过强制一组任务进入静默状态(quiescent state),freezer子系统可以获得任 阅读全文

posted @ 2016-12-28 14:30 ArnoldLu 阅读(7743) 评论(0) 推荐(1)

编译自己的Ubuntu内核

摘要: 很多时候我们在使用Ubuntu的时候,想修改一下内核配置,然后编译,安装到Ubuntu中。这也是进行Ubuntu内核开发的前提。 获取当前Ubuntu对应代码 有很多方法可以获得Ubuntu内核代码,但是下面两种非常方便。 uname -r显示当前内核的版本号,apt-get source则用来获取 阅读全文

posted @ 2016-12-28 09:25 ArnoldLu 阅读(15746) 评论(0) 推荐(0)

2016年12月27日

Android中关于cpu/cpuset/schedtune的应用

摘要: Android中关于cpu/cpuset/schedtune的应用都是基于进程优先级的,根据不同优先级划分进程类型。AMS(ActivityManagerService)和PMS(PackageManagerService)等通过class Process设置进程优先级、调度策略等;android/ 阅读全文

posted @ 2016-12-27 17:19 ArnoldLu 阅读(8096) 评论(1) 推荐(1)

2016年12月26日

Android中基于CGroup的memory子系统HAL层分析-lmkd

摘要: Android在内存管理上于Linux有些小的区别,其中一个就是引入了lowmemorykiller。从lowmemorykiller.c位于drivers/staging/android也可知道,属于Android专有,没有进入Linux kernel的mainline。 lmkd,即Low Me 阅读全文

posted @ 2016-12-26 11:05 ArnoldLu 阅读(4219) 评论(0) 推荐(2)

DDR相关的低功耗技术之PASR、TCSR、DPD

摘要: 随着智能机的发展,DDR内存容量越来越大,bank数量越来越多,功耗也越来越大。在不需要的时候关闭部分bank,或者降低自刷新频率,或者进入深度低功耗模式。有三种DDR技术用来降低功耗: PASR(Partial Array Self-Refresh),根据内存使用情况,调整内存位置,尽量空闲更多b 阅读全文

posted @ 2016-12-26 10:08 ArnoldLu 阅读(9374) 评论(0) 推荐(1)

2016年12月23日

github.com使用方法

摘要: github.com作为一个开源的代码托管平台,非常适合创建自己的代码库,也适合从别人已有项目fork自己的私有库;如果想私有托管,需要缴费使用。 创建自己代码库 在个人主页面,点击右上角+号,选择New repository: 在新页面输入Repository name,添加Description,选择Public/Private,或者添加一个README说明文件,设置好之后点击Create ... 阅读全文

posted @ 2016-12-23 17:51 ArnoldLu 阅读(4204) 评论(0) 推荐(0)

LISA介绍及其使用方法

摘要: LISA是ARM公司开发的一款开源工具。在内核开发过程中,苦于无法针对修改内容进行一些量化或者可视化结果的测量,而无感。LISA对于模型调优,回归测试都有较强的支持。 什么是LISA? LISA是Linux Interactive System Analysis的缩写,从字面意思可以看出是一个分析工 阅读全文

posted @ 2016-12-23 15:14 ArnoldLu 阅读(9388) 评论(0) 推荐(0)

2016年12月22日

Linux常用获取进程占用资源情况手段

摘要: 测试环境:Ubuntu14.04 1. 获取进程ID号 ps -aux | grep your_process_name 例如: xxx@xxx:~$ ps -e |grep Midlet|awk '{print $1}' 9356 2. 查看进程相关信息 2.1 查看进程树信息: xxx@xxx: 阅读全文

posted @ 2016-12-22 15:52 ArnoldLu 阅读(3802) 评论(0) 推荐(0)

Ubuntu上基于开源代码PhoneMe的J2ME环境搭建及使用

摘要: 测试环境:Ubuntu 14.04.5 LTS J2ME背景知识及PhoneME介绍 J2ME相关介绍 在正式开始介绍J2ME之前,这里我列出一些常见名词,方便与下文参照:J2ME(Java2 Platform, Micro Edition) Java2平台微型版CLDC(Connected, Li 阅读全文

posted @ 2016-12-22 14:41 ArnoldLu 阅读(64) 评论(0) 推荐(0)

2016年12月21日

Android/Linux下CGroup框架分析及其使用

摘要: 1 cgroup介绍 CGroup是control group的简称,它为Linux kernel提供一种任务聚集和划分的机制,可以限制、记录、隔离进程组(process groups)所使用的资源(cpu、memory、I/O等)。CGroup也是LXC为实现虚拟化所使用的资源管理手段。CGrou 阅读全文

posted @ 2016-12-21 17:26 ArnoldLu 阅读(15216) 评论(0) 推荐(0)

Android相关小知识搜集

摘要: adb devices得到????????????错误结果 问题: 执行adb devices后,得到如下结果:???????????? device 相关背景: AOSP:Android 7.1.1 HW:HiKey 解决方法: 1.使用lsusb获取vid、pid: 2.在/etc/udev/r 阅读全文

posted @ 2016-12-21 15:28 ArnoldLu 阅读(1153) 评论(0) 推荐(0)

上一页 1 ··· 8 9 10 11 12

导航