【鸿蒙OH-v5.0源码分析之 Linux Kernel 部分】010 - 二号内核线程 kthreadd线程 工作流程分析
【鸿蒙OH-v5.0源码分析之 Linux Kernel 部分】010 - 二号内核线程 kthreadd线程 工作流程分析
- 一、kthreadd 线程代码工作流程分析
- 二、如何添加任务到 kthread_create_list 链表 中
- 三、__kthread_create_on_node() 函数工作流程分析
系列文章汇总:《鸿蒙OH-v5.0源码分析之 Uboot+Kernel 部分】000 - 文章链接汇总》
本文链接:《【鸿蒙OH-v5.0源码分析之 Linux Kernel 部分】010 - 二号内核线程 kthreadd线程 工作流程分析》
Linux下有3个比较特殊的线程,分别为:
idle
线程, PID = 0kernel_init
线程, PID = 1kthreadd
线程 PID = 2
前面我们分析的了下 kernel_init 线程的相关工作,本文我们分析下 kthreadd线程的工作。
kthreadd 线程 的作用就是执行 kthreadd()
函数,循环检测 kthread_create_list
链表中是否存在任务,如果存在任务则创建线程
其创建代码如下: