Linux下有3个特殊的进程,idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2)

  • idle进程由系统自动创建, 运行在内核态

idle进程其pid=0,其前身是系统创建的第一个进程,也是唯一一个没有通过fork或者kernel_thread产生的进程。完成加载系统后,演变为进程调度、交换

  • init进程由idle通过kernel_thread创建,在内核空间完成初始化后, 加载init程序, 并最终用户空间

由0进程创建,完成系统的初始化. 是系统中所有其它用户进程的祖先进程
Linux中的所有进程都是有init进程创建并运行的。首先Linux内核启动,然后在用户空间中启动init进程,再启动其他系统进程。在系统启动完成完成后,init将变为守护进程监视系统其他进程。

  • kthreadd进程由idle通过kernel_thread创建,并始终运行在内核空间, 负责所有内核线程的调度和管理

它的任务就是管理和调度其他内核线程kernel_thread, 会循环执行一个kthread的函数,该函数的作用就是运行kthread_create_list全局链表中维护的kthread, 当我们调用kernel_thread创建的内核线程会被加入到此链表中,因此所有的内核线程都是直接或者间接的以kthreadd为父进程

更多详细信息的原文链接

linux的 0号进程(idle进程) 和 1 号进程(init进程)相关推荐

  1. python3.7显示行号_Python IDLE怎么显示行号

    Python IDLE显示行号的方法:1.下载LineNumber.py文件:2.将下载的文件放在python安装目录下的idlelib目录下:3.打开config-extensions.def文件, ...

  2. Linux下1号进程的前世(kernel_init)今生(init进程)----Linux进程的管理与调度

    Linux下有3个特殊的进程,idle进程(PID=0PID=0), init进程(PID=1PID=1)和kthreadd(PID=2PID=2) * idle进程由系统自动创建, 运行在内核态 i ...

  3. Linux的init进程(内核态到用户态的变化)

    init进程,也就是内核启动3个进程中的进程1: init进程完成了从内核态向用户态的转变: (1)init进程是比较特殊,一个进程两个状态,init刚开始运行时是内核态,他属于内核线程,然后他自己运 ...

  4. init进程(即进程1,或者说linuxrc)的详解

    以下内容源于朱有鹏嵌入式课程的学习,如有侵权,请告知删除. 一.init进程详解1 1.init进程完成了从内核态向用户态的转变 (1)一个进程先后两种状态 init进程刚开始运行的时候是内核态,它属 ...

  5. Android4.4的init进程

    2019独角兽企业重金招聘Python工程师标准>>> Android4.4的init进程 侯 亮 1背景 前些日子需要在科室内做关于Android系统启动流程的培训.为此,我在几年 ...

  6. Android系统启动系列----init进程

    Android系统启动系列 Android系统启动系列----init进程 Android系统启动系列----Zygote进程 引言 在开发app的过程中,是不是会有疑问: java程序的运行不是从m ...

  7. 鸟人的Android揭秘(9)——Init进程运行过程

    众所周知,Linux中所有进程都是由init进程创建并运行起来的.首先Linux加载内核启动,然后在用户空间中启动init进程,之后init进程再依次启动系统运行的其它进程.在系统启动完成后,init ...

  8. Android源码阅读---init进程

    Android源码阅读-init进程 文章目录 Android源码阅读---init进程 1. 编译命令和进程入口 1. init 进程编译命令 2. main函数流程 2. 主函数处理流程 1. 创 ...

  9. Android系统10 RK3399 init进程启动(三十五) 属性文件介绍和生成过程

    配套系列教学视频链接: 安卓系列教程之ROM系统开发-百问100ask 说明 系统:Android10.0 设备: FireFly RK3399 (ROC-RK3399-PC-PLUS) 前言 ini ...

  10. Linux下0号进程的前世(init_task进程)今生(idle进程)----Linux进程的管理与调度(五)【转】...

    前言 Linux下有3个特殊的进程,idle进程(PID = 0), init进程(PID = 1)和kthreadd(PID = 2) idle进程由系统自动创建, 运行在内核态 idle进程其pi ...

最新文章

  1. php 的 危 险 参 数
  2. Ueditor配置及在项目中的使用
  3. 使用Ultra Librarian转换芯片的Altium Designer封装格式
  4. Windows 7使用wubi硬盘安装Ubuntu (文字版)
  5. 窗口分析函数_16_找出最后一个元素
  6. LeetCode 606. 根据二叉树创建字符串(递归)
  7. 西南科技大学 计算机组成原理2011-2012,2011-2012学年第2学期课程教案-计算机组成原理-陈立伟.doc...
  8. JDK8HashMap的扩容核心解读,尾插法
  9. dll = MinGW gcc 生成动态链接库 dll 的一些问题汇总
  10. 2018年python工作好找吗-2018年最新数据:python、大数据、人工智能从业者薪资表...
  11. python 连接 mysql 被拒绝
  12. win8.1兼容matlab吗,Win8.1 安装 Matlab2012a
  13. 程序的本质之一程序编译的详细过程
  14. Csdn富文本编辑器中使用Emoji表情包
  15. 译:Dataiku 白皮书之《在银行和保险行业应用数据科学》
  16. Android开发之BroadcastReceiver
  17. 【2010强悍教程】一次性永远激活7290自带浏览器上网和彩信收发功能,不能上网的进。...
  18. 创新案例分享 | 构建医院绩效管理系统,助力医疗产业蓬勃发展
  19. GSM Arena 魅族mx四核评测-个人翻译
  20. 小米手机mix2手机刷入root工具、面具root管理工具、以及xp框架安装

热门文章

  1. JavaScript代码规范
  2. spark sql的简单操作
  3. Linux(Centos6.5)用户名密码
  4. JAVA代码编写的30条建议
  5. 来自ChinaUnix的对Linux rc.sysinit, rc, functions脚本的分析和Linux启动分析
  6. VB.Net中关于数组赋值
  7. SVG Authoring Guidelines[转]
  8. 【Linux 内核】调度器 ② ( sched_class 调度类结构体源码 | 源码路径 linux-5.6.18\kernel\sched\sched.h )
  9. 【错误记录】编译 ijkplayer 报错 (fatal error: ijksoundtouch/ijksoundtouch_wrap.h: No such file or directory )
  10. 【SeeMusic】视频编辑 ( 顶部裁剪 | 底部裁剪 | 左侧裁剪 | 右侧裁剪 | 明亮度 | 对比度 | 色调 | 饱和度 )