
openeuler
文章平均质量分 85
李弘宇
在沉默中积蓄力量,才能焕发出耀眼的光芒。
展开
-
kernel开发6:优化CPU统计子系统
优化 Linux 系统的 CPU 占用时间统计优化 Linux 系统的 CPU 占用时间统计相关的子系统如何完成统计周期性时钟中断时统计上下文切换时统计存在的问题我们的方法改进的具体内容未来展望结束语当我们想要观察或者监视Linux系统的负载情况时,经常会采用top、vmstat、mpstat等命令。但是这些命令的统计结果并不一定准确,我们在这个项目中仔细分析了现有的负载统计、调度以及时间子系统,针对现有的统计漏洞做了改进。下面我将会依次介绍这几个子系统是如何合作原创 2021-11-03 20:48:31 · 1067 阅读 · 0 评论 -
kernel开发5:CPU统计子系统
# 统计子系统- 统计子系统- 不同的任务时间统计方式- 参考文献这篇文章主要参考了[1-4]的内容## 不同的任务时间统计方式1. 相关数据结构- 在include/kernel/kernel_stat.h中定义了数据结构来变表示每个CPU的使用情况- 这个数据结构一定要和进程调度过程中红黑树那个数据结构区分开来,虽然两个数据结构都会在tick中加以更新,但是更新的函数截然不同2. tick统计-原创 2021-09-06 19:09:04 · 1096 阅读 · 1 评论 -
kernel开发4:CPU计时子系统
CPU计时子系统计时子系统发展历史系统架构参考文献我这里主要参考了[1-4]中的内容,这一节对优化CPU统计时间的主要作用是弄明白编译选项,以及修改编译选项后对总体的影响发展历史一开始的时间子系统是低精度的,是毫秒级别。我们也称这个版本为经典定时器、低分辨率定时器、timer wheel,实现代码在kernel/timer.c中。同时还有一个问题,如果我们的设备是一个对能耗非常敏感的设备,周期性的时钟信号能耗太大。所以我们在新的系统中急需解决这些问题但是原创 2021-09-06 19:06:26 · 367 阅读 · 0 评论 -
kernel开发3:CPU调度子系统
# CPU调度子系统- CPU调度子系统- CPU调度系统- 调度系统的机制- 调度系统的策略- 参考链接研究调度系统,主要想搞明白两个问题:CFS的调度是如何防御恶意进程的;补充进程调度的相关知识,进而为搞明白编译选项做基础。## CPU调度系统1. 调度系统的诞生- 调度是为了给用户一个程序并行执行的错觉,让用户的使用更加友好- 随着用户的需求的逐渐演变,我们有了不同调度系统2.&n原创 2021-09-06 19:02:15 · 263 阅读 · 0 评论 -
kernel开发2:内核统计CPU使用率相关源码解读
# 内核统计CPU使用率相关源码解读1. 工具- 工欲善其事必先利其器,下面介绍一下读代码的工具和资料- 网站- Linux内核官网- 官网里面可以下载内核源代码- 还可以查看各个patch当初修改的代码内容和提交时的内容- 官方文档- 在这个网站里面有官方的文档,详细回答了很多常见疑问- 在线阅读代码神器- 这个网站必须要多说一下,有三个优点:可以在线读;可以读到不同版本的源代原创 2021-09-06 19:00:27 · 286 阅读 · 0 评论 -
kernel开发1:编译openEuler内核以及gdb,make,makefile, qemu相关
编译openEuler内核并用虚拟机启动本文是开发openEuler内核系列的第一篇,由编译内核和运行内核组成;主要参考了[1]和[7]两篇文章。编译openEuler内核并用虚拟机启动编译内核编译基础知识内核编译相关用虚拟机启动内核参考链接编译内核编译基础知识GCC与编译知识GCC是在linux系统下常用的C语言编译工具,全称从GNU C Compiler变为GNU Compiler Collection;它是GNU工具集的一员,这个原创 2021-09-06 18:59:11 · 1943 阅读 · 1 评论