操作系统——进程

news2024/9/28 21:30:12

进程定义

  1. 是计算机中已经运行的程序
  2. 是系统进行资源分配和调度的一个独立单位。

进程的特性

  • 独立性:进程在内存中可以独立寻址,每个进程都有一个独立的堆栈空间。
  • 动态性:进程在执行过程中可以申请资源、使用资源、释放资源。
  • 并发性:多个进程可以同时运行在不同的处理器上,它们之间可以协同工作,也可以竞争资源。

进程控制块

进程控制块(Process Control Block, PCB)是操作系统用来管理进程的数据结构,存储了进程的状态、运行历史、资源分配等信息。

重要性:

  • 状态记录:PCB中记录了进程的当前状态,如新建态、就绪态、运行态、阻塞态和结束态。
  • 资源管理:PCB中包含了进程对系统资源的请求和分配情况,包括CPU时间、内存空间、I/O设备等。
  • 通信机制:PCB可能包含进程间通信的相关信息,如信号量、邮箱等。
  • 调度信息:PCB中还可能有进程的调度信息,如优先级、调度策略等。

上下文切换

五状态模型

进程在执行过程中会经历不同的状态转换,主要包括:

  • 新建态:进程刚被创建,尚未准备好运行。
  • 就绪态:进程已准备好运行,等待CPU分配。
  • 运行态:进程正在CPU上执行。
  • 阻塞态:进程因等待资源而暂停执行。
  • 退出态:进程执行完毕,将被移除。

通过上面PCB可知,进程状态转换是通过改变PCB中的相关信息来实现的。

在这里插入图片描述

  1. 新建态(New)

    进程刚被创建,尚未进入就绪队列。

  2. 就绪态(Ready)

    进入就绪队列,等待系统分配处理器资源。

  3. 运行态(Running)

    已获取CPU的资源,其程序正在执行。

    单处理机系统中,只有一个进程或处于执行态。多处理机系统可多个进程同时执行。

  4. 阻塞态(Blocked)

    因等待资源而等待执行,当执行条件达到时(分配到资源)就转化为就绪态。

  5. 退出态(Exit)

    表示进程已完成执行,释放资源后,退出系统。

在某些操作系统中,进程状态可能还包括:

  • 挂起就绪态(Ready Suspended):进程具备运行条件,但目前在外存中,等待对换到内存中执行。
  • 挂起等待态(Blocked Suspended):进程因等待事件而在外存中暂停执行。

状态转换过程

  • 新建态→就绪态:当操作系统完成进程创建的必要操作,且系统资源允许时,进程将转变为就绪态。

  • 就绪态→运行态:当进程获得CPU时间片,且没有其他更高优先级的进程时,进程将开始执行。

  • 运行态→等待态:当进程需要等待资源,如外设传输或人工干预时,它将转变为等待态。

  • 等待态→就绪态:当进程等待的事件发生,如外设传输完成,进程将转变为就绪态。

  • 运行态→退出态:当进程到达自然结束点或发生无法克服的错误时,它将转变为退出态。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1614880.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

埃夫特机器人更换编码器电池

一、编码器电池位置 埃夫特机器人编码器电池位置,在机器人基座底部位置,将编码器电池包拆卸下来,并按线标将新的编码器电池连接上去。 二、消除各轴编码器报警 点开监控选项中的驱动器页面,输入密码1975,开打权限管理…

将CSV转换为LDIF以便导入到ldap中?

将CSV转换为LDIF以便导入到ldap中? 目标格式: dn: uidzhangsan,ouusers,dcbaimeidashu,dccom objectClass: posixAccount objectClass: top objectClass: inetOrgPerson gidNumber: 0 givenName: zhangsan sn: 1 displayName:张三 uid: zhangsan homeDi…

node.js-包

包的概念 包:将模块,代码,其他资料聚合成的一个文件夹 包分类: 1.项目包:主要用于编写项目和业务逻辑的文件夹 2.软件包:封装工具和方法供开发者使用(一般使用npm管理) 1&#…

迅雷下载不了的资源怎么下载?

我想下载Boost库,但是下载不下来 用迅雷下载是一直卡在0k 后来尝试在centos上用wget进行下载,竟然可以 wget https://boostorg.jfrog.io/artifactory/main/release/1.85.0/source/boost_1_85_0.tar.gz

HCIP(路由过滤)--7

实验要求: 实现过程: (一)配置IP地址与环回地址: AR1: [AR1]int g0/0/0 [AR1-GigabitEthernet0/0/0]ip add 100.1.1.1 24 Apr 22 2024 19:24:50-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP on …

C++核心编程——4.3 C++对象模型和this指针

4.3.1 成员变量和成员函数分开存储 在C中,类内的成员变量和成员函数分开存储(虽然封装在一起,但是分开存储) 只有非静态成员变量才属于类的对象上,静态成员(包括静态成员变量和静态成员函数)和非…

绿联 安装qbittorrent及一些常见错误的解决办法

绿联 安装qbittorrent及一些常见错误的解决办法 1、镜像 linuxserver/qbittorrent:latest 2、安装 2.1、创建容器 按需决定是否进行资源限制。 2.2、基础设置 2.3、网络 桥接即可。 注:如果使用IPV6,请选择"host"模式。 注:如…

C# 使用 ThoughtWorks.QRCode 生成二维码

目录 关于 ThoughtWorks.QRCode 开发运行环境 方法设计 代码实现 调用示例 Logo图标透明化 小结 关于 ThoughtWorks.QRCode 二维码是用某种特定的几何图形按一定规律在平面分布的、黑白相间的、记录数据符号信息的图形,在应用程序开发中也被广泛使用&#x…

虚拟局域网PPTP配置与验证

虚拟局域网PPTP配置与验证 前言PPTP服务侧安装配置REF 前言 虚拟专用网(Virtual Private Network,VPN)是一种通过公共网络建立安全的连接的技术。它能够在不同的地理位置之间建立私密的通信通道,实现远程访问网络资源的安全性和隐…

c语言不难说C语言难的,已经说明你根本不适合计算机编程工作

对普通人来说C语言是学习编程的最佳入门语言,有效培养你的编程思维,你有了这个基础后去学其它语言,你会惊讶地发现原来其它语言原来这么好学,现在出现一个Python说小白最适合,在开始前我有一些资料,是我根据…

真实世界的密码学(一)

原文:annas-archive.org/md5/655c944001312f47533514408a1a919a 译者:飞龙 协议:CC BY-NC-SA 4.0 前言 序言 当你拿起这本书时,你可能会想,为什么又一本关于密码学的书?甚至,为什么我要读这本…

STM32G030F6P6TR ST意法

STM32G030F6P6TR是ST(意法半导体)一款基于高性能ArmCortex-M032位RISC内核,工作频率高达64MHz的32位MCU微控制器。代理销售ST(意法半导体)全系列IC电子元器件-中芯巨能为您提供STM32G030F6P6TR(ST 32位MCU)引脚图及中文参数介绍等内容。 STM32G030F6P6TR的中文参数 …

UE5(基础动作)多人游戏制作蹲伏

1.创建输入操作,IA_Crouch 在输入映射中添加 IA_Crouch,在触发器中创建两个索引,已按下已松开来创建蹲伏输入。 蹲伏操作必须要勾选角色-角色移动-crouch勾选可蹲伏否则你的人物无法真正蹲下。 为蹲伏创建函数,创建布尔来判断是否蹲伏。 通过…

Linux 网络操作命令FTP

FTP命令 引言 文件传输协议(FTP)是一种用于在网络上进行文件传输的协议。在Linux系统中,FTP可以作为一个非常有用的工具来上传、下载和管理文件。本文将介绍如何在Linux系统中安装FTP服务器,以及如何使用FTP客户端进行文件传输。…

什么是XXE攻击?如何进行防护

安全性很难做到正确,即使在当今具有安全意识的世界中,也存在一些严重的漏洞,例如 XML 外部实体 (XXE),它们被忽视并最终成为破坏的原因。 XML 外部实体 (XXE) 攻击是一种计算机安全漏洞,通常存在于 Web 应用程序中&…

贪心 | | 将数组和减半的最少操作数

目录 将数组和减半的最少操作数 除 2 将数组和减半的最少操作数 2208. 将数组和减半的最少操作次数 - 力扣(LeetCode)https://leetcode.cn/problems/minimum-operations-to-halve-array-sum/description/ 由题意可知,我们可以遍历数组&…

高斯过程回归【详细数学推导】

机器学习笔记 第一章 机器学习简介 第二章 感知机 第三章 支持向量机 第四章 朴素贝叶斯分类器 第五章 Logistic回归 第六章 线性回归和岭回归 第七章 多层感知机与反向传播【Python实例】 第八章 主成分分析【PCA降维】 第九章 隐马尔可夫模型 第十章 奇异值分解 第十一章 熵…

[移动通讯]【无线感知-P1】[从菲涅尔区模型到CSI模型-3][Mobius transformations-3]

前言: 参考 Professor Bonfert-Taylors 《Mobius transformations》,我们重点理解 因此莫比乌斯变换是共形映射( conformal mappinngs )以及反演特性inversion 目录 mobious transfromation 定义 mobious transfromation 性质…

掌握item_get_app,提升电商推广转化率

一、引言 在数字化时代,电商行业蓬勃发展,竞争也日趋激烈。为了提高销售额和用户满意度,电商企业需要不断探索新的推广策略和技术手段。其中,掌握item_get_app技术,对于提升电商推广转化率具有重要意义。本文将深入探…

FreeRTOS之中断管理

1.中断简介: 2.中断优先级分组: 注意,中断优先级数值越低,其优先级越高。而在任务优先级数值越高,其优先级越大。 3.中断相关寄存器介绍: 4.系统中断优先级设置: FreeRTOS管理中断的两个函数&am…