前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Linux 内核】进程管理 task_struct 结构体 ⑤ ( files 字段 | nsproxy 字段 | 信号处理相关字段 | 信号量和共享内存相关字段 )

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

作者头像
韩曙亮
发布2023-03-30 13:46:45
1.3K0
发布2023-03-30 13:46:45
举报
文章被收录于专栏:韩曙亮的移动开发专栏

文章目录

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

task_struct " 进程描述符 " 结构体在 linux-5.6.18\include\linux\sched.h 头文件中 第

629

~

1300

行定义 ;

一、task_struct 结构体字段分析


1、files 字段

files 字段 , 是一个指针 , 指向 " 打开的文件表 " ;

代码语言:javascript
复制
	/* Open file information: */
	struct files_struct		*files;

2、nsproxy 字段

nsproxy 字段是 " 命名空间 " ;

代码语言:javascript
复制
	/* Namespaces: */
	struct nsproxy			*nsproxy;

3、信号处理相关字段

下面的几个字段 , 都是 " 信号处理 " 相关字段 ;

代码语言:javascript
复制
	/* Signal handlers: */
	struct signal_struct		*signal;
	struct sighand_struct __rcu		*sighand;
	sigset_t			blocked;
	sigset_t			real_blocked;
	/* Restored if set_restore_sigmask() was used: */
	sigset_t			saved_sigmask;
	struct sigpending		pending;

4、信号量和共享内存相关字段

下面的字段是用于 UNIX 系统环境下 , " 信号量 " 与 " 共享内存 " 相关字段 ;

代码语言:javascript
复制
#ifdef CONFIG_SYSVIPC
	struct sysv_sem			sysvsem;
	struct sysv_shm			sysvshm;
#endif
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-03-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 文章目录
  • 一、task_struct 结构体字段分析
    • 1、files 字段
      • 2、nsproxy 字段
        • 3、信号处理相关字段
          • 4、信号量和共享内存相关字段
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档