task_struck结构体成员注释

这篇博客详细解析了Linux内核中的task_struct结构,包括任务状态、优先级、信号处理、进程队列指针、进程标识、时间数据成员、信号量、进程上下文环境、文件系统数据成员、内存数据成员、页面管理和对称多处理器支持等多个方面,全面阐述了进程控制块在Linux系统中的关键信息。
摘要由CSDN通过智能技术生成

 task_struct结构注释

  ==========================

  long state 任务的运行状态(-1 不可运行,0 可运行(就绪),>0 已停止)。

  long counter 任务运行时间计数(递减)(滴答数),运行时间片。

  long priority 运行优先数。任务开始运行时counter = priority,越大运行越长。

  long signal 信号。是位图,每个比特位代表一种信号,信号值=位偏移值+1。

  struct sigaction sigaction[32] 信号执行属性结构,对应信号将要执行的操作和标志信息。

  long blocked 进程信号屏蔽码(对应信号位图)。

  --------------------------

  int exit_code 任务执行停止的退出码,其父进程会取。

  unsigned long start_code 代码段地址。

  unsigned long end_code 代码长度(字节数)。

  unsigned long end_data 代码长度 + 数据长度(字节数)。

  unsigned long brk 总长度(字节数)。

  unsigned long start_stack 堆栈段地址。

  long pid 进程标识号(进程号)。

  long father 父进程号。

  long pgrp 父进程组号。

  long session 会话号。

  long leader 会话首领。

  unsigned short uid 用户标识号(用户id)。

  unsigned short euid 有效用户id。

  unsigned short suid 保存的用户id。

  unsigned short gid 组标识号(组id)。

  unsigned short egid 有效组id。

  unsigned short sgid 保存的组id。

  long alarm 报警定时值(滴答数)。

  long utime 用户态运行时间(滴答数)。

  long stime 系统态运行时间(滴答数)。

  long cutime 子进程用户态运行时间。

  long cstime 子进程系统态运行时间。

  long start_time 进程开始运行时刻。

  unsigned short used_math 标志:是否使用了协处理器。

  --------------------------

  int tty 进程使用tty 的子设备号。-1 表示没有使用。

  unsigned short umask 文件创建属性屏蔽位。

  struct m_inode * pwd 当前工作目录i 节点结构。

  struct m_inode * root 根目录i 节点结构。

  struct m_inode * executable 执行文件i 节点结构。

  unsigned long close_on_exec 执行时关闭文件句柄位图标志。(参见include/fcntl.h)

  struct file * filp[NR_OPEN] 进程使用的文件表结构。

  --------------------------

  struct desc_struct ldt[3] 本任务的局部表描述符。0-空,1-代码段cs,2-数据和堆栈段ds&ss。

  --------------------------

  struct tss_struct tss 本进程的任务状态段信息结构。

  ====&

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值