进程控制

一、进程切换(上下文切换)
1.进程切换

* 暂停当前运行进程,从运行态变成其他状态
* 调度另一个进程从就绪态变成运行状态

2.要求

* 切换前,保存进程的上下文
* 切换后,恢复进程上下文

快速切换(通常情况下,由汇编执行)
3.进程生命周期信息

* 寄存器(PC,SP,……)
* CPU状态
* 内存地址空间

4.进程控制块PCB:内核的进程状态记录
内核为每个进程维护了对应的进程控制块
内核将相同状态的进程的PCB放置在同一队列

二、进程等待与退出
1.父进程等待子进程

* Wait()系统调用用于父进程等待子进程的结束

    * 子进程结束时通过exit()向父进程返回一个值
    * 父进程通过wait()接受并处理返回值
* wait()系统调用的功能

    * 有子进程存活时,父进程进入等待状态,等待子进程的返回结果当某子进程调用exit()时,唤醒父进程,将exit()返回值作为父进程中wait()的返回值
    * 有僵尸子进程等待时,wait()立即返回其中一个值
    * 无子进程存活时,wait()立即返回

2.其他进程控制系统调用

* 优先级控制

    * nice()指定进程的初始优先级
    * Unix系统中进程优先级会随执行时间而衰减
* 进程调试支持

    * ptrace()允许一个进程控制另一个进程的执行
    * 设置断点和查看寄存器等
* 定时

    * sleep()可以让进程在定时器的等待队列中等待指定
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值