进程总结

一.什么是进程:


在用户角度看:进程就是程序的一次动态执行过程。
在系统内核角度看:①进程是分配资源的最小单位。②是操作系统分配内存,CPU时间片系统资源的基本单位。③每个进程都有自己的虚拟空间和进程状态。


二.进程的特性:


  1. 动态性:进程的实质就是程序的一次执行过程,进程是动态产生,动态消亡的。
  2. 并发性:任何进程都可以和其他进程一同执行。
  3. 独立性:进程能够独立运行,是系统分配和调度资源的基本单位。
  4. 异步性:因为进程具有独立性,各进程之间是独立的,不可预知的速度向前推进
  5. 结构性:从结构上看,进程有进程控制块,数据段,程序段三部分组成。

三.进程和程序的区别:


① 进程是动态的,程序是静态的。
② 进程的生命周期是短暂的,程序是永久的。
③ 一个进程只对一个程序,一个程序可以对多个进程。


四.创建子进程的过程:


  1. 给新建的进程分配一个独一无二的进程标识符,在内核中创建PCB。
  2. 复制父进程的环境。
  3. 给子进程分配资源栈,堆,代码段,数据段等。
  4. 复制父进程的地址空间内容到子进程的地址空间里。
  5. 将进程置为就绪状态,放到等待序列中

五.销毁进程的过程:


  1. 释放资源,内存文件等
  2. 记账信息
  3. 将进程设置为僵尸状态
  4. 转存储调度,将CPU让给需要使用的进程

六.进程的终止:

进程的终止分为俩种,第一种为正常终止,第二种为异常终止。
正常终止:①从main函数返回②调用exit③调用_exit
异常终止:①信号终止②调用abort信号终止,是上一种信号的特例。

调用exit和_exit的区别:

调用_exit函数是直接从内核退出,而掉用exit函数会先执行清理处理(关闭所有IO流,执行各种清理程序)在进入内核退出
exit是标准库函数,_exit是底层系统调用。

。在执行main函数前要执行启动例程


七.进程的状态:


  1. 运行状态:指正在CPU中运行或者就绪状态。
  2. 可中断睡眠状态:当进程处于可中断状态,系统不会调度该进程执行。
  3. 不可中断睡眠状态:不可中断,指的不是CPU不响应外部硬件中断,而是指进程不响应异步信号。
  4. 暂停状态:进程收到SIGSTOP,SIGTSTP,SIGINT,SIGTTOU信号时就会进入暂停状态。
  5. 僵死状态:当进程已经停止运行,父进程没有询问其状态,称该进程为僵死状态。
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值