文章目录

  • 一、task_struct 结构体字段分析
    • 1、real_parent 字段
    • 2、parent 字段
    • 3、group_leader 字段
    • 4、real_cred 字段
    • 5、cred 字段

在 Linux 内核 中 , " 进程控制块 " 是通过 task_struct 结构体 进行描述的 ; Linux 内核中 , 所有 进程管理 相关算法逻辑 , 都是基于 task_struct 结构体的 ;

task_struct " 进程描述符 " 结构体在 linux-5.6.18\include\linux\sched.h 头文件中 第 629629629 ~ 130013001300 行定义 ;

一、task_struct 结构体字段分析


1、real_parent 字段

real_parent 字段 , 指向 " 真实的父进程 " ;

 /* Real parent process: */struct task_struct __rcu  *real_parent;

2、parent 字段

parent 字段 , 指向 父进程 , 一般情况下与 real_parent 相同 ;

如果 进程 被 另外一个进程 使用 系统调用 ptrace 方法 跟踪调试 了 , 其 父进程 就是 跟踪进程 ;

其它情况下 , parent 字段与 real_parent 字段的值都是相同的 ;

 /* Recipient of SIGCHLD, wait4() reports: */struct task_struct __rcu    *parent;

3、group_leader 字段

group_leader 字段 , 是一个指针 , 指向了 " 线程组组长 " ;

struct task_struct       *group_leader;

4、real_cred 字段

real_cred 字段 , 是一个指针 , 指向 主体 和 真实客体 证书 ;

 /* Objective and real subjective task credentials (COW): */const struct cred __rcu      *real_cred;

5、cred 字段

cred 字段 , 指向 有效客体证书 的指针 , 一般情况下 , real_credcred 指向的位置是相同的 ;

 /* Effective (overridable) subjective task credentials (COW): */const struct cred __rcu     *cred;

【Linux 内核】进程管理 task_struct 结构体 ③ ( real_parent 字段 | parent 字段 | group_leader 字段 | real_cred、cred字段 )相关推荐

  1. 【Linux 内核】进程管理 task_struct 结构体 ① ( task_struct 结构体引入 | task_struct 代码示例 )

    文章目录 一.task_struct 结构体 二.task_struct 结构体代码示例 一.task_struct 结构体 在 Linux 操作系统 中 , 进程 作为 调度的实体 , 需要将其抽象 ...

  2. 【Linux 内核】进程管理 task_struct 结构体 ⑤ ( files 字段 | nsproxy 字段 | 信号处理相关字段 | 信号量和共享内存相关字段 )

    文章目录 一.task_struct 结构体字段分析 1.files 字段 2.nsproxy 字段 3.信号处理相关字段 4.信号量和共享内存相关字段 在 Linux 内核 中 , " 进 ...

  3. 【Linux 内核】进程管理 task_struct 结构体 ④ ( comm 字段 | 进程优先级字段 | cpus_ptr 字段 | mm、active_mm 字段 | fs 字段 )

    文章目录 一.task_struct 结构体字段分析 1.comm 字段 2.进程优先级字段 3.cpus_ptr 字段 4.mm.active_mm 字段 5. fs 字段 在 Linux 内核 中 ...

  4. 【Linux 内核】进程管理 task_struct 结构体 ② ( state 字段 | stack 字段 | pid 字段 | tgid 字段 | pid_links 字段 )

    文章目录 一.task_struct 结构体字段分析 1.state 字段 2.stack 字段 3.pid字段 4.tgid 字段 5.pid_links 字段 在 Linux 内核 中 , &qu ...

  5. Linux内核-进程管理

    Linux内核-进程管理 引言 本文主要介绍Linux内核进程管理相关知识,包括进程描述符.进程创建.销毁.状态.线程的实现以及Linux进程相关命令等. 进程描述符 内核把进程的列表存放在叫做任务队 ...

  6. 挑战360无死角讲解Linux内核 进程管理,调度器的5种实现丨C++后端开发丨C/C++Linux服务器开发丨内核开发丨网络编程

    挑战360无死角讲解 进程管理,调度器的5种实现 1. 8500行 CFS是什么 2. RT调度器使用场景 3. IDLE/Dealine调度器 视频讲解如下,点击观看: 挑战360无死角讲解Linu ...

  7. Linux进程中task_struct结构体

    一.进程的定义: ①正在执行的程序: ②正在计算机上执行的实例: ③能分配给处理器并由处理器可以执行的实体. ④具有以下特征的活动单元: 一组指令序列的执行.一个当前状态和相关的系统资源. 进程的两个 ...

  8. linux kernel 进程管理,Linux内核 | 进程管理

    1. 进程和线程 1.1 定义 进程是处于运行状态的程序和相关资源的总称,是资源分配的最小单位. 线程是进程的内部的一个执行序列,是CPU调度的最小单位.有一段可执行程序代码. 有一段进程专用的系统堆 ...

  9. linux进程家族树,Linux内核 | 进程管理

    作者:世至其美 博客地址:hqber.com 转载须注明以上信息, 更多文章,请访问个人博客:hqber.com 1. 进程和线程 1.1 定义 进程是处于运行状态的程序和相关资源的总称,是资源分配的 ...

最新文章

  1. SQL的四种连接-左外连接、右外连接、内连接、全连接
  2. 服务器安全:浏览器同源策略与跨域请求、XSS攻击原理及防御策略、如何防御CSRF攻击
  3. css before after用法_CSS 伪元素基础知识:content 与counter 实用技巧(二)
  4. list python 转tensor_Pytorch--Tensor, Numpy--Array,Python--List 相互之间的转换。
  5. 为什么计算机控制系统采用软,微型计算机控制技术一二章复习资料及部分答案...
  6. loadrunner取出字符串的后面几位
  7. c++注释快捷键_是不是晚了点:Visual Studio可以自动生成注释啦!
  8. AOP 面向切面编程、拦截器
  9. K近邻模型(k-NN)
  10. java判断浏览器类型_判断浏览器类型
  11. Algs4-1.1.6下面这段程序会打印出什么
  12. Android 第3方控件一览表
  13. 人民日报刊发浪潮集团董事长孙丕恕署名文章:更好实现数据共享
  14. kettle数据脱敏
  15. 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制
  16. Designing Network Design Spaces,译读
  17. MySQL DBA必读:万字归总表设计与SQL编写技巧
  18. 安卓手机+python基于abd命令的自动打卡
  19. win7防火墙在哪里设置【系统天地】
  20. 基于opencv的理想低通滤波器和巴特沃斯低通滤波器

热门文章

  1. struts2之OGNL用法
  2. js调试工具console详解
  3. 关于使用AIR开发移动APP 的技术解决方案 笔记
  4. easyUI menu动态添加
  5. 从宏观经济状况看目前股市
  6. JS闭包的理解及常见应用场景
  7. 5G元年的世界电信日,我们的生活将如何被改变?
  8. 【高斯消元】[HDU 3359][POJ3999][UVALive4741]Kind of a Blur
  9. FireDAC 下的 Sqlite [7] - 备份、优化、事务(Transaction)
  10. Linux下目录/文件颜色的含义