Linux进程(一)

进程四要素

1、有一段程序供其执行。

2、有进程专用的内核空间堆栈

3、在内核中有个task_struct数据结构,即通常所说的"进程控制块",有了这个数据结构

     进程才能成为内核调度的一个基本单位接受内核的调度。

4、有独立的用户空间

 

进程描述

在Linux中,线程、进程都是用struct task_struct来表示,他包含了大量描述进程/线程的信息,

其中比较重要的有:

 

1、pid_t pid; 进程号,最大10亿

2、volatile long state 进程状态

   2.1、TASK-RUNNING 进程正在被CPU执行,或者已经准备就绪随时可以执行。

           当进程刚被创建时,就处于TASK-RUNNING状态

   2.2、TASK_INTERRUPTIBLE 处于等待中的进程,等待条件为真时被唤醒,也可以

           被信号或者中断唤醒。

   2.3、TASK_UNINTERRUPTIBLE 处于等待中的进程,待资源有效时唤醒,但是不可以

           由其他进程通过信号(signal)或中断唤醒

   2.4、TASK_STOPPED 进程中止执行。当接受到SIGSTOP和SIGTSTP等

           信号时,进程进入该状态,接收到SIGCONT信号后,进程重新回到TASK_RUNNING。

   2.5、TASK-KILLABLE Linux2.6.25新引进的进程睡眠状态,原理类似于TASK_UNINTERRUPTIBLE

           但是可以被致命信号(SIGKILL)唤醒。

   2.6、TASK_TRACED 正处于被调试状态的进程

   2.7、TASK_DEAD 进程退出时(调用do_exit),state字段被设置为该状态。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值