上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 66 下一页

2022年2月12日

gcc中__builtin_return_address学习与使用

摘要: 一、说明 Built-in函数格式 void * __builtin_return_address(unsigned int level) 此函数返回当前函数或其调用者之一的返回地址。 level 参数是向上扫描调用堆栈的帧数。 值 0 产生当前函数的返回地址,值 1 产生当前函数调用者的返回地址, 阅读全文

posted @ 2022-02-12 18:24 Hello-World3 阅读(2333) 评论(0) 推荐(0) 编辑

2022年2月10日

调度器32—RT选核

摘要: 基于Linux-5.10 一、RT选核流程 1. 主要调用路径 rt_sched_class.select_task_rq //RT调度类回调 select_task_rq_rt //rt.c 前面trace_android_rvh_select_task_rq_rt()若是选到cpu就直接退出了; 阅读全文

posted @ 2022-02-10 23:42 Hello-World3 阅读(1273) 评论(0) 推荐(0) 编辑

2022年2月7日

调度器31—Linux-5.10 调度相关trace分析技巧汇总

摘要: 一、看RT线程的sync唤醒标志 (1) MTK: select_task_rq_rt trace_android_rvh_select_task_rq_rt(p, cpu, sd_flag, flags, &target_cpu); //可以在 /sys/kernel/tracing 下检索到它, 阅读全文

posted @ 2022-02-07 15:55 Hello-World3 阅读(622) 评论(0) 推荐(0) 编辑

2022年1月22日

调度器28—杂项汇总

摘要: 一、获取绑核信息 1. 通过 /proc/<pid>/status 获取 # cat /proc/<pid>/status | grep Cpus_allowed Cpus_allowed: ff Cpus_allowed_list: 0-7 调用路径和函数: struct pid_entry tg 阅读全文

posted @ 2022-01-22 16:02 Hello-World3 阅读(962) 评论(0) 推荐(0) 编辑

2022年1月8日

Documentation/power/freezing-of-tasks.rst 翻译

摘要: 来自:kernel-5.10 冻结任务 (C) 2007 Rafael J. Wysocki <rjw@sisk.pl>,GPL 一、什么是任务冻结? 任务的冻结是一种机制,在休眠或系统范围的挂起(在某些体系结构上)期间,用户空间进程和某些内核线程可以通过该机制进行控制。 二、 它是如何工作的? 为 阅读全文

posted @ 2022-01-08 22:14 Hello-World3 阅读(182) 评论(0) 推荐(0) 编辑

2022年1月1日

plist移植学习笔记

摘要: 基于Linux-5.10 一、说明 plist主要在Linux内核的Qos子系统中使用。将 plist_node::prio作为优先级,数值小的挂在链表前面,数值大的挂在链表后面。plist里面虽然包含双重循环链表,但是还是按单重循环的形式使用,plist认为其上的基本元素还是plist_node结 阅读全文

posted @ 2022-01-01 21:58 Hello-World3 阅读(363) 评论(0) 推荐(0) 编辑

2021年12月30日

调度器24—CFS任务选核

摘要: 一、select_task_rq_fair()函数 CFS任务选核最终都是要走 select_task_rq_fair() 函数,三种CFS选核路径如下: try_to_wake_up //core.c select_task_rq(p, p->wake_cpu, SD_BALANCE_WAKE, 阅读全文

posted @ 2021-12-30 22:56 Hello-World3 阅读(2962) 评论(0) 推荐(0) 编辑

2021年12月23日

Linux驱动中继承与多态思想_C

摘要: 一、函数实现多态 1. 定义全局模板函数集 //thermal_of.c static struct thermal_zone_device_ops of_thermal_ops = { .get_trip_type = of_thermal_get_trip_type, .get_trip_tem 阅读全文

posted @ 2021-12-23 17:16 Hello-World3 阅读(255) 评论(0) 推荐(0) 编辑

2021年12月22日

attribute section 属性

摘要: 一、__attribute__((__section__(section_name))) 简介 1. __attribute__((section("name"))) 是gcc编译器支持的一个编译特性(arm编译器也支持此特性),实现在编译时把某个函数/数据放到名为name的数据段中。原理如下:(1 阅读全文

posted @ 2021-12-22 22:22 Hello-World3 阅读(5211) 评论(0) 推荐(0) 编辑

2021年12月13日

使用二级指针辅助遍历的单链表

摘要: 1. 代码 #include <stdio.h> #include <stddef.h> struct notifier_block { struct notifier_block *next; int priority; }; struct notifier_block *head = NULL; 阅读全文

posted @ 2021-12-13 13:07 Hello-World3 阅读(63) 评论(0) 推荐(0) 编辑

上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 66 下一页

导航