进程和线程的区别

操作系统概念——第4章 线程 文章目录1. 为什么要引入线程1.1 线程相对于进程的优点2. 线程实现2.1 存储(2)线程的结构特点2.2 TCB2.1.3 线程与进程的关系2.3 状态与上下文 1. 为什么要引入线程 1.1 线程相对于进程的优点 1. 响应度高: 单线程的进程执行时,一次只能处理一条指令。而多线程即使其中部分阻塞或操作冗长,程序也能正常执行。 2. 资源共享: 线程默认共享所属进程的内存和资源(数据段、代码段、文件) 3. 经济: 进程的创建很耗费时间和资源,创建和切换线程更为经济 4. 多处理器体系结构的利用: 阅读详情

进程:

    进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程是基本的分配单元,也是基本的执行单元。(简单来说就是在操作系统中运行的程序,它是操作系统资源管理的最小单位。)

进程的基本状态:

   1、就绪(Ready)状态:
   当进程已分配到除CPU以外的所有必要资源后,只要在获得CPU,便可立即执行,进程这时的状态就称为就绪状态。在一个系统中处于就绪状态的进程可能有多个,通常将他们排成一个队列,称为就绪队列。

   2、执行状态:
   进程已获得CPU,其程序正在执行。在单处理机系统中,只有一个进程处于执行状态;再多处理机系统中,则有多个进程处于执行状态。

   3、阻塞状态:
    正在执行的进程由于发生某事件而暂时无法继续执行时,便放弃处理机而处于暂停状态,亦即程序的执行受到阻塞,把这种暂停状态称为阻塞状态,有时也称为等待状态或封锁状态。

进程的三个基本状态及转换:
这里写图片描述
进程的特征:

动态性:进程的实质是程序在多道程序系统中的一次执行过程,进程是动态产生,动态消亡的。

并发性:任何进程都可以同其他进程一起并发执行

独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位;

异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进

多个不同的进程可以包含相同的程序:一个程序在不同的数据集里就构成不同的进程,能得到不同的结果;但是执行过程中,程序不能发生改变。

线程:

    线程,有时被称为轻量级进程(Lightweight Process,LWP),是CPU使用的基本单元。一个标准的线程由线程ID、当前指令指针(PC)、寄存器集合和堆栈组成。线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪、阻塞和执行三种基本状态。就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;执行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(如某个信号量),逻辑上不可执行。每一个程序都至少有一个线程,若程序只有一个线程,那就是程序本身。
    线程存在 5 种基本操作来切换线程的状态:派生,阻塞,激活,调度,结束。

优点:

    1、响应度高: 如果对一个交互式应用程序采用多线程,及时其部分阻塞或冗长的操作,那么该程序仍能够继续执行,从而增加了多用户的响应度。

    2、资源共享: 线程默认共享它们所属进程的内存和资源。

    3、多处理体系结构的利用: 单线程的进程只能运行在一个CPU上。

进程和线程的关系与区别:

关系:
(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。 

(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。 

(3)处理机分给线程,即真正在处理机上运行的是线程。 

(4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。


区别:

1、一个程序至少有一个进程,一个进程至少有一个线程.

2、线程的划分尺度小于进程,使得多线程程序的并发性高。

3、进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。

4、每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。

5、从逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。这就是进程和线程的重要区别。

线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源的管理和保护;而进程正相反

进程和线程的区别和联系 我们都知道计算机的核心是CPU,它承担了所有的计算任务,而操作系统是计算机的管理者,它负责任务的调度,资源的分配和管理,统领整个计算机硬件;应用程序是具有某种功能的程序,程序是运行于操作系统之上的。 进程 进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程... 阅读详情

相关推荐

EDF Browser使用说明和技巧

edf browser使用说明和一些小技巧

Erhu_666的博客 8329

第四章:线程概述【单线程、多线程模型、线程库、线程池】

4.1 概述 线程是CPU使用的基本单元,由线程ID,程序计数器,寄存器组和堆栈组成。它与属于同一进程的其他线程共享代码段,数据段和其他操作系统资源。 4.1.1 单线程进程和多线程进程 4.1.2多线程编程的优点 响应度高:一个多线程的程序即使部分阻塞,其他部分仍能运行,从而增加了对用户的响应程度。 资源共享:线程默认共享他们的所属进程的内存和资源。 经济:创建和切换线程比创建进程更节省资源和时间。 多处理器体系结构的利用:多线程能充分利用多处理器体系。 4.2 多线程模型...

马小超 1479

微信小程序后台定位与实时位置更新的实战指南

本文提供了微信小程序实现后台定位与实时位置更新的完整实战指南。针对小程序退到后台后位置更新中断的痛点,详细解析了基于`startLocationUpdateBackground`API的后台定位解决方案。内容涵盖从隐私协议配置、项目权限声明,到授权、启动、监听、停止的核心代码流程,并分享了真机调试、性能优化及权限引导等关键避坑经验,帮助开发者构建稳定可靠的后台位置服务。

weixin_29008055的博客 470

线程(二)

多线程编程的优点 响应度高:如果部分进程被阻止,可能允许继续执行,这对用户界面尤其重要 资源共享:线程共享进程资源,比共享内存或消息传递更容易 经济:线程切换比进程创建更便宜,开销比上下文切换更低 多处理器体系结构的利用:进程可以利用多核架构,每个核有一个或两个线程 多线程模型 多对一模型: 多个用户级线程对应一个内核级线程,目前很少有系统使用这种模式。 优点:线程管理在用户空间,不需要切换到内核态,消耗的资源相对较少,效率较高 缺点:当一个线程进行阻塞的时候,对应内核态线程的阻塞,这个时候整个进程

weixin_49690872的博客 260

Xilinx Blockset Counter计数器模块使用及参数配置

本文详细介绍了Simulink中Xilinx Blockset库Counter模块的使用以及参数说明。

白码王子小张的博客 1096

智能驾驶功能软件平台设计规范 第一部分:系统架构

智能驾驶功能软件平台设计规范 第一部分:系统架构2020-07-29 发布。

爱是与世界平行 6744

线程

> 原文地址: https://qjm253.cn/2018/06/27/os_02/ 线程 线程是CPU使用的基本单元,它由线程ID、程序计数器,寄存器集合和栈组成。它与属于同一个进程的其它线程共享代码段、数据段和其它操作系统资源,如打开文件和信号。 线程的优点 响应度高:交互式应用程序采用多线程实现的话,可以一部分线程处理用户I/O等耗时操作,而一部分用来响应用户的...

MingJ的博客 1461

YOLOv13结合Sobel边缘检测算子,实现EIEM(Edge Information Enhancement Module,边缘信息增强模块),强化空间特征提取

EIEM模块通过巧妙地结合Sobel边缘检测算子和现代卷积网络架构,实现了显式边缘信息增强的创新设计。这种方法不仅提高了网络对边缘特征的敏感性,还保持了良好的计算效率和模块化特性。 从技术实现角度看,EIEM展示了如何将经典计算机视觉算法无缝集成到深度学习框架中,为构建更强大、更可解释的视觉模型提供了新的思路。随着对边缘信息重要性认识的不断深入,以及对网络可解释性需求的增长,EIEM这样的显式特征增强模块将在未来的计算机视觉研究中发挥越来越重要的作用。

FJN110的博客 907

线程和进程的区别

1. 进程(Process)进程是计算机中运行的一个程序的实例。它是操作系统分配资源和调度的基本单位,每个进程都有自己的内存空间、文件描述符和其他资源。每个进程都有独立的地址空间。进程之间的通信需要通过进程间通信(IPC)机制,例如管道、信号量或消息队列。进程是重量级的,创建和销毁成本较高。2. 线程(Thread)线程是进程中的一个执行单元,是CPU调度的基本单位。一个进程可以包含多个线程,它们共享进程的资源。线程之间共享同一个进程的内存空间和资源(例如堆和全局变量)。

Flying_Fish_roe的博客 5979

[Python图像处理] 十九.图像分割之基于K-Means聚类的区域分割

前面的文章讲解了图像锐化和边缘提取技术,该篇文章将开始围绕图像分割进行讲解。图像分割就是把图像分成若干个特定的、具有独特性质的区域并提出感兴趣目标的技术和过程。 本篇文章主要讲解基于理论的图像分割方法,通过K-Means聚类算法实现图像分割或颜色分层处理。基础性文章,希望对你有所帮助。 1.K-Means原理 2.K-Means聚类分割灰度图像 3.K-Means聚类对比分割彩色图像

杨秀璋的专栏 4万+

【Autoware】Autoware.universe安装过程与问题记录

Autoware.universe安装过程与问题记录

DevFrank的博客 2740

线程和进程 / 进程和线程的区别和联系

💻进程(process) 🎃进程的特点 📢进程跟程序不一样 🎯进程状态 📠线程(Thread) 🔦线程的特点 🚢进程 VS 线程 🛫区别 💡Tips:堆和方法区 🧧多进程和多线程区别

qq_60021974的博客 7711

已解决“TimeouEror [WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败“,亲测有效!!!

已解决"TimeouEror [WinEror 10060由于连接方在一段时间后没有正确答复 或连接的主机没有反应,连接尝试失败",亲测有效!!!

wbajsjhhhhh的博客 1万+

Linux进程和线程的区别和联系

Linux中,线程是CPU调度和分派的基本单位,进程是分配资源的基本单位(操作系统)

qq_44846784的博客 2489

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

进程和线程之间有什么区别

进程是操作系统中资源分配与调度的基本单位,是“运行中的程序实例”。我们编写的代码是硬盘上的静态文件,编译为可执行文件后,被加载到内存,操作系统为其分配独立地址空间(包含代码段、数据段、堆、栈等分区 ),CPU 执行指令时,这个动态执行流就是进程。比如服务器上的 Nginx 服务进程,占用独立内存、文件描述符、网络端口,负责处理客户端 HTTP 请求。进程管资源分配,为程序运行造“独立环境”;线程管执行调度,提升程序内部“并发效率”。

weixin_47868976的博客 1406

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

线程和进程的区别和联系

一个线程就是一个指令流,将指令集合中的一条条的指令以一定的顺序交给CPU去执行。线程指的是进程中一个单一顺序的控制流。线程是进程中真正执行任务的基本单位。线程是操作系统进行运算调度的最小单元,它是进程的子任务,用于保证程序的实时性,实现进程内部的并发,它不能独立拥有系统资源,但它可与同属一个进程的其他线程共享该进程所拥有的全部资源。

weixin_39038328的博客 1497

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

进程和线程的区别和关系

进程(Process)是运行中的一个程序实例或一段代码。它是相对独立的任务执行实体。

shi_ki2的博客 940

JavaWeb语法一:进程和线程的区别与联系

进程和线程的基本概念,和进程和线程之间的联系与区别。

qq_56701924的博客 1628
上一篇: java命名规则
下一篇: Android四大组件
嚴志熵
博客等级 码龄10年 9粉丝 40原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值