操作系统-进程的状态与转换、进程控制、进程通信

进程的状态

  • 运行态(Running):占有CPU,并在CPU上运行
  • 就绪态(Ready):已经具备运行条件,但没有空闲CPU,暂时不能运行
  • 阻塞态(Waiting):因等待某一事件而暂时不能运行
  • 创建态(New):进程正在被创建,操作系统为进程分配资源、初始化PCB
  • 终止态(Terminated):进程正在从系统中撤销,操作系统会回收进程拥有的资源、撤销PCB

进程的转换

在这里插入图片描述

进程控制

  • 功能:实现各种进程之间的转换
    在这里插入图片描述

  • 进程控制是通过原语实现的。原语的特点是执行期间不允许中断,只能一气呵成。这种不可被中断的操作就是原子操作。

  • 原语采用"关中断指令"和"开中断指令"实现

  • 在这里插入图片描述

  • 关/开中断指令的权限非常大,必然只允许在核心态下执行的特权指令,在中间的也原语运行在核心态

  • 原语的功能:
    1、更新PCB中的信息(修改进程状态标志、将运行环境保存到PCB、从PCB恢复运行环境)
    2、将PCB插入合适的队列
    3、分配/回收资源

  • 进程的创建
    在这里插入图片描述

  • 进程的终止
    在这里插入图片描述

  • 进程的阻塞和唤醒
    在这里插入图片描述

  • 进程的切换
    在这里插入图片描述

进程通信

  • 进程之间的信息交换
  • 各个进程的内存地址空间相互独立
  • 为了保证安全,一个进程不能直接访问另一个进程的地址空间
  • 进程通信的方法
    *共享存储:两个进程对共享空间进行访问,且必须是互斥的。
    *消息传递:进程间的数据交换以格式化的消息为单位。进程通过操作系统提供的"发送消息/接收消息"两个原语进行数据交换
    *管道通信:管道通信采用半双工通信,一个进程写,一个进程读。如果要实现双向同时通信,则设置两个管道即可。当进程将数据写入管道时,另一个进程是读不到数据的,只有当管道被写满时,才可读数据。当数据被读出,数据就会被抛弃了
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1.目的: 自行编制模拟程序,通过形象化的状态显示,深入理解进程的概念、进程之间的状态转换及其所带来的PCB内容 、组织的变化,理解进程与其PCB间的一一对应关系。 2. 内容及要求: 1) 设计并实现一个模拟进程状态转换及其相应PCB内容、组织结构变化的程序。 2) 独立编写、调试程序。进程的数目、进程状态模型(三状态、五状态、七状态或其它)以及PCB的组织形式可自行选择。 3) 合理设计与进程PCB相对应的数据结构。PCB的内容要涵盖进程的基本信息、控制信息、资源需求及现场信息。 4) 设计出可视性较好的界面,应能反映出进程状态的变化引起的对应PCB内容、组织结构的变化。 5) 代码书写要规范,要适当地加入注释。 6) 认真进行预习,完成预习报告。 7) 实验完成后,要认真总结,完成实验报告。 3.使用的数据结构及说明: 在本实验中,主要用到的数据结构是PCB的结构,其中PCB的数据结构如下: struct PCB { int P_Id; //PCB的ID号 char P_Name[10]; //PCB的名称 char P_State[10]; //PCB状态 int P_Runtime; //PCB的所需要的运行时间 int P_Requiry; //PCB所需要的资源要求 struct PCB * next ; //PCB块的下一个指针 } ; 其中,P_Id,和P_Name用来标示一个进程,而P_State用来标示进程的五种状态:Create_state,Ready_state,Block_state,Run_state,Exit_state。P_Runtime标示要完成一个进程所需要的时间。P_Requiry标示一个进程的执行所需要的其他条件,当其他的条件满足,则P_Requiry置1,否则置0。Struct PCB * next 用来指向同一队列中的下一个PCB块。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值