进程的概念:
为了解决程序运行在并发环境的问题:
1。程序不确定
2。结果不可再现,程序运行被干扰 解决方案:对运行过程施加制约
2.进程基本概念:
进程是程序在某个数据集合上的一次运行活动//动态
数据集合:软/硬件环境,多个进程共享的环境
3.进程的特征:
动态性:进程是程序的一次执行过程,动态产生/消亡
并发性:进程同其他进程一起
异步行:每个进程按照自己的速度前进
独立性:进程是系统分配资源和调用CPU的单位
进程与程序的区别:
静态和动态:
进程是动态:程序的一次执行过程
程序是静态的:一组指令的有序集合
暂存和长存:
进程是短暂的,程序的长存的
程序和进程的对应,一个程序可以产生多个进程
进程的类型:
按权限分配:
系统进程:内核
用户进程:用户
对CPU依赖分类:
偏CPU进程:计算型进程
偏I/O进程:侧重于输入和输出
进程状态:
运行状态(Running):
进程已经占有CPU,或者正在CPU上运行
就绪状态(Ready)
未分配CPU暂时不能运行
阻塞状态(Block)(等待太wait):
等待某项服务完成,信号不能运行的状态
进程的状态互相转化:
1.ready->running:进程调度
2.running->ready 时间片到,CPU被抢占
3.running->wait 请求服务,等待信号
4.wait->ready 服务完成,信号来到
linux进程的状态:
可运行态将ready和running和在一起为可运行态,
阻塞态:
1.浅度堵塞,可以被信号或时钟唤醒
2.深度堵塞,不能被其他进程通过信号和时钟唤醒
僵死态 TASK_ZOMBIE
挂起态