【操作系统理论】——进程

本文详细阐述了进程的生命周期,包括各种状态及其转换,进程如何主动或被动放弃CPU,中断技术在进程切换中的作用,以及操作系统在进程调度中的职责,强调了进程控制块(PCB)的重要性。
摘要由CSDN通过智能技术生成

进程

进程是一个程序的执行过程,是资源分配、保护和调度的基本单位。进程状态有:

  • 创建态:
  • 就绪态:进程准备好,等他分配cpu
  • 运行态:进程在cpu上运行
  • 等待态:等待某个事件完成,或等待 某个信号
  • 终止态:结束运行

进程如何放弃CPU

内部事件

  • 进程主动放弃,进入等待/终止态
  • 例如:使用IO设备、非正常结束

外部事件

  • 被抢占,进程被剥夺CPU使用权
  • 例如:运行时间片到底,高优先权进程到达
    在这里插入图片描述

中断技术

中断是指程序执行过程中,当发送某个事件时

  • 中止CPU上现行程序的运行
  • 引出该事件的处理程序
  • 执行完成后,返回原程序的中断点处

中断源

外部中断:来自处理器之外的硬件中断信号

  • 比如:时钟中断、键盘中断、外围设备中断
  • 外部中断,属于异步中断

内部中断(异常)

  • 硬件异常:比如掉电、奇偶校验错误等
  • 程序异常:非法操作、地址错误、断点、除数为0
  • 系统调用

在这里插入图片描述

在这里插入图片描述

模式切换

  • 中断一旦发送,计算机会从用户模式切换到内核模式
    在这里插入图片描述

进程调度

什么触发了进程切换

* CPU被抢占,进入就绪态
* 主动放弃CPU,进入等待态

进程切换时,操作系统要做什么

  • 保存现场,保护进程的上下文信息
  • 修改该进程的控制信息(如状态)
  • 将被中断进程加入到相应的状态队列
  • 调度新进程,并恢复它的上下文信息

进程控制块(PCB)

每个进程都有自己的PCB,PCB的内容包括
  • 进程状态
  • 进程号pid
  • pc值:保存了下一条程序的地址
  • 寄存器值:进程使用了那些寄存器和其值是多少
  • 内存:
  • fopen打开的文件:
    在这里插入图片描述
    在这里插入图片描述

进程队列

在这里插入图片描述

进程切换是怎么运用中断的

进程切换使用的是中断技术,在内核态会有switch这个中断处理函数。与进程的区别在于:中断的P2是被中断的进程,而进程切换的P2是一个新进程。
在这里插入图片描述

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值