1:一段供进程执行的程序,该程序可以被多个进程执行。
2:独立的内核堆栈。
3:进程控制快(task_struct:有了这个数据结构,进程才能成为内核调度的一个基本单位接受内核的调度。同时,这个结构还记录着进程所占用的各项资源。
4:独立的存储空间:即拥有专有的用户空间,除了前面的内核空间还有用户空间。
Linux内核中定义了以下几种状态:#define TASK_RUNNING 0
#define TASK_INTERRUPTIBLE 1
#define TASK_UNINTERRUPTIBLE2
#define TASK_ZOMBIE 4
#define TASK_STOPPED 8
其中:
TASK_RUNNING是就绪态,进程当前只等待CPU资源。
TASK_INTERRUPTIBLE和TASK_UNINTERRUPTIBLE都是阻塞态,进程当前正在等待除CPU外的其他系统资源;前者可以被信号唤醒,后者不可以。
TASK_ZOMBIE是僵尸态,进程已经结束运行,但是进程控制块尚未注销。
TASK_STOPPED是挂起状态,主要用于调试目的。进程接收到SIGSTOP信号后会进入该状态,在接收到SIGCONT后又会恢复运行。
ps aux | moreUSER-用户名
PID 进程ID
%CPU CPU使用率
VSZ 虚拟大小
RSS 驻留集大小
TTY 终端
STAT 进程状态
ps -Al | more
F 标志;用它来表示:进程是否用户进程或者内核进程,为什么停止或者休眠等
PID 进程ID
PPID 父PID
PRI 优先权
NI NICE值
WCHAN 等待管道
其余不知。。。555
进程号为1的init进程,为grub引导启动后的第一个进程。它是所有用户进程的祖先。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)