进程和线程间的通信方式
创始人
2025-05-30 16:08:20

碎碎念:勤劳i的我又来干文章,今天要干的文章是进程和线程的内容,为了保证文章质量以后要写的详细一点。这里好多内容借用别人的如原文链接

定义

进程与线程

  • 进程 是资源分配的基本单位,
    进程控制块 (Process Control Block, PCB) 描述进程的基本信息和运行状态,所谓的创建进程和撤销进程,都是指对 PCB 的操作。
    在这里插入图片描述

  • 线程 是独立调度的基本单位
    一个进程中可以有多个线程,它们共享进程资源。例如:QQ 和浏览器是两个进程,浏览器进程里面有很多线程,例如 HTTP 请求线程、事件响应线程、渲染线程等等,线程的并发执行使得在浏览器中点击一个新链接从而发起 HTTP 请求时,浏览器还可以响应用户的其它事件。
    在这里插入图片描述

资源

  • 进程是资源分配的基本单位。是占用资源的
  • 线程不占有资源,线程可以访问进程的资源

调度

  • 不同进程的线程的切换会引起进程的切换。
  • 线程是独立调度的基本单位,线程的切换不会影响进程的切换

系统开销

  • 进程间的切换:进程间的切换代价要大于线程间切换的代价,进程间切换涉及CPU的环境,以及IO的额设备资源,同时要保存环境信息的资源内容。
    线程间的切换的代价要小的多

读写

  • 线程可以直接读写同一进程内的资源,
  • 进程必须通过借助IPC实现读取不同进程间的资源

状态

进程的状态

对于进程来说,主要包括

在这里插入图片描述
就绪状态(ready):等待被调度
运行状态(running)
阻塞状态(waiting):等待资源

创建状态,准备状态,等待状态,运行状态,退出状态

只有就绪态和运行态可以相互转换,其它的都是单向转换。就绪状态的进程通过调度算法从而获得 CPU 时间,转为运行状态;而运行状态的进程,在分配给它的 CPU 时间片用完之后就会转为就绪状态,等待下一次调度。阻塞状态是缺少需要的资源从而由运行状态转换而来,但是该资源不包括 CPU 时间,缺少 CPU 时间会从运行态转换为就绪态。

进程的调度算法

批处理系统

调度算法保证的是吞吐量和周转时间,主要从提交到终止的时间

  • 先来先服务 FCFS
    非抢占式调度算法,主要按照请求的顺序,按照请求的调度
    有利于长作业,不利于短作业,长作业需要执行很长的时间,这就造成了短作业等待时间过长
  • 短作业优先
    非抢占式调度算法,按照估计的运行时间短的优先进行操作,缺点是长作业一直处于等待的状态
  • 最短剩余时间优先
    最短作业的抢占的版本,按照剩余运行时间顺序进行调度,整个运行时间与当前线程剩余时间 进行比较,如果新的线程时间更少那么就运行新的线程

交互式系统

交互式系统有大量的用户交互操作,在该系统中调度算法的目标是快速进行响应

时间片轮转

相关内容

热门资讯

下周279亿元限售股解禁,这三... 6月2日-6月8日(下周),迎来限售股解禁的A股企业数量较本周减少3家,解禁总市值更高,仍然没有解禁...
App 性能测试关注点 一、 App 性能指标 App 性能问题如 app 使用时卡顿严重或者加载页面慢,c...
Python 中错误 Synt... 文章目录重写错误发生的行导致错误的字符可能是不可见的另一个错误发生的例子确保我们的键盘设置为正确的语...
妖魔化车企高负债,是杞人忧天的... 撰文丨鹿羽近期,车企负债问题引起广泛热议。比亚迪集团品牌及公关处总经理李云飞发文回应,其从资产负债率...
曼联5000万镑豪购奇招!神秘... 曼联5000万镑豪购奇招!神秘前队友密谋,姆贝乌莫驾临梦剧场? 老特拉福德的夏窗还没正式开启,空气中...
【Leetcode】队列实现栈...      目录 一.【Leetcode225】队列实现栈 1.链接 2.题目再现  3.解法 二.【...
Kaggle实战入门:泰坦尼克... Kaggle实战入门:泰坦尼克号生还预测1. 加载数据2. 特征工程3. 模型训练4....
【Tomcat内核】serve... 以下回答来自chatGPT server是什么? Server可以翻译为服务器&#x...
广州美妆新势力,正在横扫东南亚... 记者丨赖镇桃 编辑丨和佳 陈晓平Henry在美妆品牌Colorkey国际部工作,他第一次到越南,是去...
【国产FPGA】国产FPGA搭... 最近收到了高云寄过来的FPGA板卡,下图:来源:https...
Linux下KingbaseE... 一、备份方式 KingbaseESV8数据库备份的两种方式: (1&#x...
Fastapi学习笔记之使用 ... 前言我写了一个关于 FastAPI 的简单教程,它是关于简化和理解 API 的工作原理...
法网|冲击八强!女单第四轮,郑... 齐鲁晚报·齐鲁壹点 怀晓 郑钦文将向八强席位发起冲击。新华社发 连下3场击败帕芙柳琴科娃、阿朗戈和...
“工作三年,跳槽要求涨薪50%... 如果问在TI行业涨工资最快的方式是什么?回答最多的一定是:跳槽ÿ...
业绩承压,中信重工募投项目延期... 5月30日晚间,中信重工(601608)发布公告称,公司召开第六届董事会第十三次会议,审议通过了《关...
财联社创投通:一级市场本周90... 《科创板日报》5月31日讯据财联社创投通数据显示,本周(5.24-5.30)国内统计口径内共发生90...
【投融资动态】汉硅半导体A+轮... 证券之星消息,根据天眼查APP于5月27日公布的信息整理,辽宁汉硅半导体材料有限公司A+轮融资,融资...
Linux 线程同步 文章目录一、线程同步介绍同步与互斥概述线程同步问题二、互斥锁为什么需要互斥锁互斥锁 Mutex 介绍...
可以谈一谈动态扩容缩容的分库分... 如何设计可以动态扩容缩容的分库分表方案? 面试官心理分析 对于分库分表来说,主要是面对以下问题: 选...
MySQL能干大部分事,为什么... 因为需要背锅侠?先来看一个真实案例。 某年某央企千万级用户百亿金额的上古系统ÿ...
利用两个队列(单链表模拟)实现... 利用队列实现栈数据结构225. 用队列实现栈 - 力扣(LeetCode)...
STM32之震动传感器、继电器... 目录 一、震动传感器介绍及实战 二、编程代码实现 1、gpio.c---------初始化GPIO口...
宝武钢铁集团迎来新任总会计师 ... 中国宝武钢铁集团有限公司(以下简称“宝武钢铁集团”)官网近日更新信息显示,李丽娜已于2025年5月起...
【java刷题】排序子序列 这里写目录标题问题描述解决思路实现代码 问题描述 牛牛定义排序子序列为一个数组中一段连续的子序列,并...
mysql-interview 隔离级别有哪几种,分别解决什么问题为什么mysql 默认隔离级别是rr,...
全球资金从美国回流新兴市场 全... 参考消息网5月31日报道 据《日本经济新闻》5月27日报道,全球资金开始再次流入新兴市场国家。从流入...
银河麒麟v10系统硬盘挂载并配... 一、查看磁盘 近期由于centos系统停止更新用户服务器要更换银河麒麟v10,拿到服务...
Leetcode刷题之经典双指...         光是话不行,要紧的是做。                       ...
京东美团外卖大战的底层逻辑是什... 原文标题:《京东美团外卖大战的深度分析》,题图来自:视觉中国 京东最近强势进军外卖行业与美团进行了激...