自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 Linux调度CFS源码分析(四) 负载跟踪和进程选择

为了实现sched entity级别的负载跟踪,pelt将物理时间划分成了1ms(实际为1024us)的序列,在每一个1024us的周期中,sched entity对系统负载的贡献可以根据该entity处于runnable状态(包含在cpu上running和在cfs_rq上waiting的状态)的时间进行计算;假设该周期内,某entity处于runnable状态的时间为x,那么其对系统负载的贡献为(x/1024);

2024-03-12 22:59:34 951 1

原创 Linux调度CFS源码分析(三) 调度实体和调度组

任务组在每个处理器上有公平调度实体、公平运行队列、实时调度实体和实时运行队列,根任务组比较特殊:没有公平调度实体和实时调度实体。

2024-03-12 22:55:49 359 1

原创 Linux调度CFS源码分析(二) CFS总体设计思想

每个处理器上有一个空闲线程,即0号线程。空闲调度类的优先级最低,仅当没有其他进程可以调度的时候,才会调度空闲线程。

2024-03-12 22:51:50 830 1

原创 Linux调度CFS源码分析(一) 预备知识

源码分析版本:4.12curl-olinux-4.12。

2024-03-05 23:25:37 884 1

原创 【无标题】Android上使用BPF工具获取内核信息

android中ebpf是如何从内核获取信息,并在framework层进行处理的

2024-03-05 11:47:37 915 1

原创 BCC Python开发教程&常用BCC工具(四)

这个教程主要目的是展示如何使用python来进行bcc工具开发和编程。教程主要分为两个部分:可观察性和网络。文中的代码片段均都来自于bcc:代码片段的licenses见bcc中具体文件。也可参考bcc开发者手册以及end-users工具教程:。此外bcc还开放有lua接口。

2022-11-15 17:28:40 618

原创 BCC Python开发教程&常用BCC工具(三)

这个教程主要目的是展示如何使用python来进行bcc工具开发和编程。教程主要分为两个部分:可观察性和网络。文中的代码片段均都来自于bcc:代码片段的licenses见bcc中具体文件。也可参考bcc开发者手册以及end-users工具教程:。此外bcc还开放有lua接口。

2022-11-15 17:23:34 770

原创 BCC Python开发教程&常用BCC工具(二)

这个教程主要目的是展示如何使用python来进行bcc工具开发和编程。教程主要分为两个部分:可观察性和网络。文中的代码片段均都来自于bcc:代码片段的licenses见bcc中具体文件。也可参考bcc开发者手册以及end-users工具教程:。此外bcc还开放有lua接口。

2022-11-15 17:13:42 946

原创 BCC Python开发教程&常用BCC工具(一)

这个教程主要目的是展示如何使用python来进行bcc工具开发和编程。教程主要分为两个部分:可观察性和网络。文中的代码片段均都来自于bcc:代码片段的licenses见bcc中具体文件。也可参考bcc开发者手册以及end-users工具教程:。此外bcc还开放有lua接口。

2022-11-15 16:29:07 1247

原创 调度器之CAS调度

容量感知调度(CAS)需要描述任务对CPU容量的要求。

2022-11-04 16:35:46 1069

原创 EAS调度器之能量模型(EM)

EM(Energy Model)框架作为驱动与kernel的一个接口在两者之间起到了桥梁的作用,在驱动部分可以计算出不同的性能级别消耗的能量,在kernel那些对关注能量消耗的子系统中,可以使用这些信息。在不同的设备中,关于设备能量的消耗的来源可能有很大的不同。在某些情况下,这些能量消耗可以使用devicetree中的数据进行计算,而在另外的情况下可能firmware能够更好知道消耗了多少的能量。

2022-11-03 16:43:01 640

原创 EAS调度算法介绍

介绍能量感知调度(EAS)使调度程序能够预测其决策对 CPU 消耗的电量的影响。EAS 依赖于 CPU 的能量模型 (EM) 来为每个任务选择省电的 CPU,同时要求对执行任务的吞吐量的影响最小。本文档介绍 EAS 的工作原理、它背后的主要设计决策是什么,并说明让它运行所需的条件。

2022-11-03 15:47:43 1817

原创 手机上搭建bcc环境

​在Android 系统上比较容易的安装方法是使用类似eadb这样的工具,把一个打包好的debian 环境push到手机上,然后chroot 后执行bcc/bpftrace 等工具。

2022-11-02 13:36:01 521 1

原创 Linux内核分析(一)

分两步学习的原因,因为最新的Linux代码已经非常的庞大了,如果直接从几万行代码开始看起,工作量很大,并且只能看到全貌,很难看清楚整体,而Linux代码是从最初的0.11演进而来,虽然变化巨大,但是总体的设计思路变化不大,通过阅读kernel 0.11对整体设计思路理解以后,具体涉及到各领域再分析实际的工程代码。计划的学习方式,下载kernel 0.11代码,并网上找下相关视频进行学习,学习Linux最初的设计思路;调试4.19的内核代码,对实际的工程代码的关键部分进行解读。

2022-11-01 15:08:53 252

原创 VR(手机)性能设计与优化(一) 总体思路

VR设备的决定性能上限是有硬件决定的;相对性能上限是有散热决定的;最终实际性能是有各场景的软件逻辑决定的

2022-10-31 13:56:41 510

原创 VR(手机)性能设计与优化(开篇)

开篇:最近六七年一直在做手机性能优化方面的事情,从APP性能优化,慢慢深入到Framework的性能优化,然后到系统的性能优化,逐渐深入。最近一年公司新增了VR的产品线,在项目预研的过程中,重新对以前的思路进行了一些总结和反思,个人的思路从性能优化提升到性能设计的转变。最近想把自己的思路梳理下,并且把一些细节重新学习透彻,所以萌生了写一个系列的技术文章,记录写自己的思考和学习过程,也希望有共同兴趣爱好的同学一起交流。

2022-10-25 16:05:11 321

原创 WEB API机制分析

2. BatteryManager2.1. 介绍BatteryManager提供了访问系统电源管理级别信息的方式。navigator.getBattery返回一个battery promise,你可以用这个通过这个promise来与Battery Status API进行交互。navigator.getBattery().then(function(

2016-06-12 16:12:24 1973

android手机上ebpf环境搭建资源

android手机上ebpf环境搭建资源

2022-11-03

Android上使用BPF工具获取内核信息

Android上使用BPF工具获取内核信息

2022-11-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除