Linux | 红帽认证 | IT技术 | 运维工程师
👇1000人技术交流QQ群 备注【公众号】更快通过
// 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。
标示符: 描述本进程的唯一标示符,用来区别其他进程。
状态: 任务状态,退出代码,退出信号等。
优先级: 相对于其他进程的优先级。
程序计数器: 程序中即将被执行的下一条指令的地址。
内存指针: 包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针上下文数据: 进程执行时处理器的寄存器中的数据[休学例子,要加图CPU,寄存器]。I/ O状态信息: 包括显示的I/O请求,分配给进程的I/ O设备和被进程使用的文件列表。记账信息: 可能包括处理器时间总和,使用的时钟数总和,时间限制,记账号等其他信息。
课程咨询添加:HCIE666CCIE
↑或者扫描上方二维码↑
你有什么想看的技术点和内容
可以在下方留言告诉小盟哦!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/75705.html