当前位置: 首页 > news >正文

计算机操作系统-第十一天

目录

1、进程的状态

创建态与就绪态

运行态

终止态

新建态

结束态

进程状态的转换

进程的组织方式

链接方式(常见)

索引方式(少见)

本节思维导图


1、进程的状态

创建态与就绪态

1、进程正在被创建时,处于“创建态”,在这个阶段操作系统会为进程分配资源、初始化PCB

2、当进程创建完成后,进入“就绪态”,处于就绪态的进程已经具备了运行条件,但是由于没有空闲CPU,就暂时不能运行

        系统中可能会有多个进程都处于“就绪态,当CPU空闲时,操作系统就会选择一个就绪进程,让它上处理机运行。

运行态

当一个进程在CPU上运行,处于“运行态”,CPU会执行该进程对应的程序(执行指令序列)

        在进程运行的过程中,可能会请求等待某个事件的发生(如等待某种系统资源的分配,或者等待其它进程的响应),在这件事发生之前,进程无法继续往下执行,此时操作系统会让这个进程进入CPU,并让它进入“阻塞态”。

        如上图,由于进程一在CPU中运行时,需要等待打印机完成给其它进程的资源分配后才能让打印机为自己分配资源,此时进程二就是在等待打印机资源为进程一的分配,因此进程二处于阻塞态,当打印机为进程一分配完资源后就可以让进程二上CPU了。

终止态

        当进程一结束后,会向操作系统发出exit系统调用指令,用来请求操作系统终止该进程,此时进程状态变为“终止态”,操作系统会让该进程下CPU,并回收内存空间等资源,最后还要回收该进程的PCB,当这些操作结束时,进程就彻底消失了。

新建态

进程正在被创建,操作系统为进程分配资源、初始化PCB

结束态

进程正在从系统中撤销,操作系统会回收进程拥有的资源、撤销PCB

tips:进程的PCB中,会有一个变量state来表示进程的当前状态,如:1表示创建态、2表示就绪态......。为了对同一状态下的各个进程进行统一管理,操作系统会将各个进程的PCB组织起来

进程状态的转换

进程的整个生命周期中,大部分使劲按都处于三种基本状态

单CPU时,同一时刻只会有一个进程处于运行态,多核CPU情况下,可能多个进程处于运行态

进程的组织方式

链接方式(常见)

索引方式(少见)

本节思维导图

~over~

http://www.lryc.cn/news/198976.html

相关文章:

  • Flutter视图原理之StatefulWidget,InheritedWidget
  • 观察者模式-对象间的联动
  • Webpack十大缺点:当过度工程化遇上简单的静态页面
  • 新手指南|如何快速参与Moonbeam Ignite
  • VR航天科普主题公园模拟太空舱体验馆vr航天模拟体验设备
  • Spring Boot OAuth 2.0整合详解
  • 安装visual studio报错“无法安装msodbcsql“
  • webGL编程指南 第三章 矩阵平移三角形.translatedTriangle_Matrix
  • 修改echarts的tooltip样式 折线图如何配置阴影并实现渐变色和自适应
  • [论文笔记] SurroundOcc: Multi-Camera 3D Occupancy Prediction for Autonomous Driving
  • 辅助驾驶功能开发-功能对标篇(16)-NOA 城市辅助系统-毫末智行
  • H3C的IRF堆叠互联关系说明
  • 货物摆放(蓝桥杯)
  • 3782: 【C3】【穷举】弹珠游戏
  • leetcode 5
  • centos中nacos设置开机自启动
  • 双指针——移动零
  • WPF中在MVVM模式下实现导航功能
  • SpringBoot面试题2:SpringBoot与SpringCloud 区别?SpringBoot和Spring、SpringMVC的区别
  • Practical Deep Raw Image Denoisingon Mobile Devices
  • 如何在Android项目中制作和使用三方包(jar文件)
  • 消息队列Beanstalkd介绍
  • 【C++】继承 ⑥ ( 继承中的构造函数和析构函数 | 类型兼容性原则 | 父类指针 指向 子类对象 | 使用 子类对象 为 父类对象 进行初始化 )
  • 15 | JPA 对 Web MVC 开发者做了哪些支持
  • 链表的概念+MySingleList的实现
  • 小黑子—Maven基础
  • 【Netty专题】【网络编程】从OSI、TCP/IP网络模型开始到BIO、NIO(Netty前置知识)
  • 扬帆起航:许战海方法论日文版正式发布
  • Docker 安装zookeeper
  • 项目管理与SSM框架(二)| Spring