进程(process)是程序在执行过程中的一个动态实例,是系统进行资源分配和调度的基本单位。让我们详细区分进程和程序,并探讨在windows和linux系统中的进程管理。
进程与程序的区别
1.0 程序是一组静态的指令集合;而进程则是程序的动态执行过程,具有生命周期,是动态生成和终止的。程序无法直接申请系统资源,不能被系统调度,也不能作为独立运行的单位,因此它不占用系统运行的资源。
2.0 程序和进程之间没有一一对应的关系。
Windows系统中的进程和线程
xp进程.png
进程情况.png
Linux系统中的进程属性
与Windows系统类似,Linux中也总是有许多进程在运行。每个进程都有一个唯一的识别号,称为PID(进程ID),用于区分不同的进程。进程还具有其他属性,如拥有者ID、进程名、进程状态、父进程ID以及运行时间等。
从Linux操作系统的启动过程来看,系统启动后的第一个进程是init,其PID为1。init是唯一一个由系统内核直接运行的进程,新的进程可以通过fork命令生成。
进程的状态
进程状态.gif
- 就绪状态:进程已经获得除CPU之外的所有运行所需资源。
- 运行状态:进程正在占用CPU运行。
- 等待状态:进程正在等待某个事件或资源。
- 挂起状态:正在运行的进程由于某种原因失去CPU而暂停运行。
- 终止状态:进程已经结束。
- 休眠状态:进程主动暂时停止运行。
- 僵死状态:进程已经停止运行,但相关控制信息仍保留。
进程的优先级
Linux系统中,所有的进程根据其状态按时间顺序排列,形成不同的队列。进程的优先级范围为-20到19之间的整数,数值越小,优先级越高。
进程的类型
进程控制命令
ps [选项]-a 显示当前终端所有进程-A 显示系统所有进程,包括其他用户进程和系统进程信息-u 显示包括进程拥有者在内的详细信息
登录后复制
文章来自互联网,只做分享使用。发布者:,转转请注明出处:https://www.dingdanghao.com/article/879860.html
