摘要:@目录【WALT】WALT入口 update_task_ravg()代码展示代码逻辑⑴ 判断是否进入 WALT 算法⑵ 获取 WALT 算法中上一个窗口的开始时间⑶ 如果任务刚初始化结束⑷ 更新任务及 CPU 的 cycles⑸ 更新任务及 CPU 的 demand 及 pred_demand⑹ 更
阅读全文
摘要:@目录【WALT】update_window_start() 代码详解代码展示代码逻辑 【WALT】update_window_start() 代码详解 代码版本:Linux4.9 android-msm-crosshatch-4.9-android12 代码展示 static u64 update
阅读全文
摘要:@目录【WALT】update_task_demand() 代码详解代码展示代码逻辑⑴ 更新标志位⑵ 不累加任务运行时间的条件判断⑶ 仍在旧窗口中⑷ 进入新窗口⑸ 返回值 runtime 【WALT】update_task_demand() 代码详解 代码版本:Linux4.9 android-ms
阅读全文
摘要:@目录【WALT】scale_exec_time() 代码详解代码展示代码逻辑:为什么归一化?⑴ 将 CPU cycles 转换为 CPU 当前频率⑵ 归一化 delta 【WALT】scale_exec_time() 代码详解 代码版本:Linux4.9 android-msm-crosshatc
阅读全文
摘要:@目录【WALT】update_history() 代码详解代码展示代码逻辑⑴ 判断是否更新任务信息⑵ 更新历史窗口数据sum_history[RAVG_HIST_SIZE_MAX]⑶ 计算 demand⑷ 计算 pred_demand⑸ 将 demand 与 pred_demand 更新到 CPU
阅读全文
摘要:@目录【WALT】predict_and_update_buckets() 与 update_task_pred_demand() 代码详解代码展示代码逻辑⑴ 根据 runtime 给出桶的下标⑵ 根据桶的下标预测 pred_demand1. 如果任务刚被创建,直接结束2. 根据下标 bidx 和数
阅读全文
摘要:@目录【WALT】update_cpu_busy_time() 代码详解代码展示代码逻辑⑴ 更新标志位⑵ 滚动窗口⑶ 不累加运行时间的条件判断⑶ 任务处于 grp(相关线程组 related_thread_group)中⑷ 仍在旧窗口中⑸ 进入新窗口⑹ 更新 top taskfixup_busy_t
阅读全文
摘要:【WALT】top task 相关代码详解 代码版本:Linux4.9 android-msm-crosshatch-4.9-android12 @目录【WALT】top task 相关代码详解结构体初始化 & 清理函数更新 top task窗口翻滚时更新 top task两个运行队列 top ta
阅读全文
摘要:【WALT】调度与负载计算 代码版本:Linux4.9 android-msm-crosshatch-4.9-android12 注:本文中的任务主要指进程。 @目录【WALT】调度与负载计算一、WALT 负载0. top task load1. 任务负载a. demand 路径b. busytim
阅读全文