首页 > 系统相关 >4进程管理

4进程管理

时间:2023-08-24 11:25:14浏览次数:19  
标签:管理 程序 信号量 互斥 进程 CPU 资源

进程是静态指令的运行过程,是系统进行资源分配和调度的一个独立单位

由程序块、进程控制块(PCB)和数据块三部分组成

PCB:是进程存在的唯一标志。内容包含进程标识符、状态、位置信息、控制信息、队列指针(链接同一状态的进程)、优先级、现场保护区等。

进程与程序的区别:进程是程序的一次执行过程,没有程序就没有进程。

程序是一个静态的概念,而进程是一个动态的概念,它由创建而产生,完成任务后因撤销而消亡;进程是系统进行资源分配和调度的独立单位,而程序不是。

进程2个基本属性:

可拥有资源的独立性,可独立调度和分配资源的基本单位

线程有独立的程序计数器、寄存器、栈

但是可以共享:内存地址空间、代码、数据、文件等

 

进程的状态

三态模型:就绪、阻塞、运行

(资源分:CPU、非CPU)

1,有CPU也有非CPU 就是运行态

2、没有CPU有非CPU,就是就绪态

3、没有CPU没有非CPU,就是阻塞态

1、2之间可能因为时间片原因而相互转换

五态模型:

跟三态模型相比,却内存资源的时候,会挂起某个进程,挂起的过程是从内存放到磁盘的过程

在内存中就是活跃,在磁盘中就是静止

静止不能直接运行,而需要进入活跃状态才能运行

 

进程PV操作

互斥:相互排斥,相互竞争同一个资源,在某个时刻资源只能被一个进程占用(间接关系)

同步:速度有差异,为了某一事件而进行等待(直接关系)

临界资源:进行互斥的资源,竞争的资源

临界区:访问临界资源的代码(代码)

信号量S:是一种特殊的全局变量,结合PV操作的

P操作  

S=S-1(申请并占用资源)

S<0(检查资源是否够用)

资源不够就阻塞进入进程队列

资源够了就向下执行

V操作

S=S+1(释放资源)

S<=0 (S表示互斥资源数,也表示排队数)

信号量取值范围(等待数---至S的初值)

(空间资源)

单缓冲区

多缓冲区

s0访问区是互斥信号量

s1\s2是同步信号量

 

标签:管理,程序,信号量,互斥,进程,CPU,资源
From: https://www.cnblogs.com/wumingliang/p/17653698.html

相关文章

  • EAS_设置上下文管理组织单元
    //设置上下文的管理单元和控制单元,是客户建立在流水认领的收款公司下addbyZLF2023-5-3114:43:08ContextUtil.setCurrentFIUnit(ctx,info.getCollectingCompany());CtrlUnitInfoctrlUnitInfo=newCtrlUnitInfo();ctrlUnitInfo.setId(info.getCollectingCom......
  • 视频云存储平台EasyCVR视频汇聚平台关于机电设别可视化管理平台可实施设计方案
    随着工业化进程的不断发展,机电设备在各行各业中扮演着重要的角色。然而,由于机电设备种类繁多、数量庞大,包括生产机械、建筑器械、矿用器械、制药器械、食品机械等,传统的手动管理方式已经无法满足对设备进行精细化管理的需求。因此,设备生产厂家、设备维保商和设备使用单位正在寻求......
  • Windows杀死指定端口进程
    查看端口pid netstat-aon|findstr端口查看端口运行的进程tasklist|findstr端口杀死pid taskkill/pid31572/f  ......
  • 2磁盘结构与管理
    磁盘的几个概念:磁盘、磁面、磁道、扇区、柱面一个磁面有多个磁道一个扇区包含多个磁道每个盘面都有读写磁头存取时间=寻道时间+等待时间读取磁盘数据的时间包括三个部分:1、找磁道时间2、找块扇区的时间,即旋转延迟时间3、传输时间磁盘移臂调度算法先来先服务:FCFS(谁先申......
  • linux 磁盘管理
      这块电脑上有一块磁盘,sda,上面有3个物理分区,sda1,2,3如果想新建一个物理分区,用如下命令输入n新建分区       d删除分区    w保存    q退出   ......
  • 解决方案 | 1分钟快速解决 win10 任务管理器性能不显示GPU?
    1问题环境:win1022h2    2解决方法  win+r输入dxdiag回车,查看下面信息:(1)确认你的Windows10版本号大于1909,如果确认,在任务管理器进程页右键名称一栏,将GPU勾选上即可。如果Windows10版本过旧,更新至1909版本或以上即可。  (2)还是上面图片点击【显示】,确保此......
  • QT数据库连接管理类
    使用单例管理整个项目的数据库连接。在QT中不同线程须使用不同的数据库实例。MySql有连接超时——超过设定(默认8小时)没有活动会关闭连接。一、头文件#pragmaonce#ifndefCSQLDATABASE_H#defineCSQLDATABASE_H#include<QtSql>#include<QString>#include<QMutex>#i......
  • 进程、线程、协程
    进程内可开启多个线程,线程内可开启多个协程进程、线程可以利用cpu多核来并行,协程是切换成本低,不是并行。 ......
  • 【操作系统】2.进程和线程
    1.操作系统的多进程图像操作系统main函数中最后if(!fork()){init();},也就是main函数最后创建了第1个进程,init执行了shell(Windows)桌面。操作系统管理和组织进程都使用PCB(ProcessControlBlock),不同的程序的PCB放在不同的位置,用于记录该进程运行时的状态。操作系统对进程......
  • openGauss学习笔记-48 openGauss 高级数据管理-函数
    openGauss学习笔记-48openGauss高级数据管理-函数openGauss常用的函数如下:48.1数学函数abs(x)描述:绝对值。返回值类型:和输入相同。示例:openGauss=#SELECTabs(-17.4);abs------17.4(1row)cbrt(dp)描述:立方根。返回值类型:doubleprecision示例:openGauss......