精华内容
下载资源
问答
  • 并发进程是指
    2020-05-29 16:42:16

    线程是并发,进程是并行;
    进程之间相互独立,是系统分配资源的最小单位,同一个进程中的所有线程共享资源。

    更多相关内容
  • 并发进程

    千次阅读 2019-09-02 21:58:08
    并发进程 1 程序执行的顺序性 1.1 程序执行顺序性 程序执行的顺序性包括两个定义:程序内部的顺序性和程序外部的顺序性 内部:程序内部的顺序性是单线程进程执行时呈现程序内部的顺序性 外部:程序外部的顺序性...

    并发进程

    1 程序执行的顺序性

    1.1 程序执行顺序性

    程序执行的顺序性包括两个定义:程序内部的顺序性和程序外部的顺序性

    内部:程序内部的顺序性是指单线程进程执行时呈现程序内部的顺序性

    外部:程序外部的顺序性是指多个进程之间的顺序执行关系,这人写进程在时间上按照次序严格有效的执行,完成一个作业级的任务。

    2 程序执行的并发性

    2.1 程序并发性的含义

    进程的并发性是指一组进程在执行时间上是重叠的,即一个进程执行的第一条指令是在另一条指令结束前开始的。

    并发的实质是一个处理器在几个进程之间的多路复用

    2.2 并发程序设计

    把一个程序编制成若干个可同时执行的程序模块的方法

    如果这些模块属于同一个进程(说明这个程序是一个单线程,这个单线程通过多个线程分别实现这些模块),在进程内部执行,则称为并发多线程程序设计

    如果模块属于不同的进程(说明这个程序是通过多个进程实现不同的功能模块),则称为并发多进程程序设计

    2.3 并发进程分类

    并发进程之间的关系分为两类:无关的和交互的

    无关的并发进程:一组并发进程分别在不同的变量集合上操作

    交互的并发进程:一组并发进程共享某些变量

    并发进程的无关性是进程的执行与实践无关的一个充分条件,又称为Bernstein条件。相关定义可以参考下方链接。

    https://baike.baidu.com/item/Bernstein%E6%9D%A1%E4%BB%B6/5452747?fr=aladdin

    大概意思是用这个Bernstein条件用来确定那些进程是可以并发的。

    3 与时间有关的错误

    对于一组交互并发的进程,若执行的相对速度无法相互控制,则会出现与时间有关的错误,与时间有关的错误有两种表现形式:结果不唯一和永远等待

    3.1 结果不唯一

    购机票问题,可能会出现同一张票卖给两个乘客的情况,正确的做法是执行购买操作时只能一先一后不能同时执行。

    3.2 永远等待

    借书还书问题,合作进程之间等待、唤醒之类的同步信号发送次序颠倒时

    4 进程的交互

    4.1 进程之间的竞争关系

    竞争关系时由于并发进程共用一套计算机系统资源引起的

    死锁:一组已经获得部分资源的进程等待获得其他进程所占用的资源,最终该组进程陷入死锁僵局

    解决方式:进程互斥–若干进程要使用同一共享资源时,最多只允许一个进程使用

    饥饿:一个进程由于其他进程总是优于它而被无限期拖延

    解决方式:FCFS(先来先服务)策略

    展开全文
  • 操作系统之进程—并发进程(一)

    万次阅读 多人点赞 2018-11-03 21:55:22
    1.顺序程序设计 传统的程序设计方法是顺序程序设计,即把一个程序设计成一个顺序执行的程序模块,不同程序也是按序执行的。顺序分成内部顺序和外部顺序 内部的顺序性 : 程序在处理器上执行时严格有序的,...2.并发...

    1.顺序程序设计

    传统的程序设计方法是顺序程序设计,即把一个程序设计成一个顺序执行的程序模块,不同程序也是按序执行的。顺序分成内部顺序和外部顺序

    • 内部的顺序性 : 程序在处理器上执行时严格有序的,即只有当一个操作结束后,才能开始后继操作,这称为程序内部的顺序性
    • 外部的顺序性 : 如果完成一个任务需要若干个不同的程序,这些不同程序在时间上按调用次序严格有序执行,这称为程序外部的顺序性

    2.并发程序设计

    并发含义

    • 一个程序分成若干个可同时执行的程序模块的方法称为并发程序设计,进程的并发性是指一组进程的执行在时间上是重叠的,重叠是指一个进程执行的第一条指令是在另一个进程执行的最后一条指令完成之前开始的

    并发例子

    有两个进程A和B,进程A执行操作a1、a2、a3,进程B执行操作b1、b2、b3

    • 进程A和B顺序(串行)执行的情况:在单处理器上,进程A执行完,进程B才开始执行,它们的操作次序为:a1、a2、a3、b1、b2、b3
    • 进程A和B并发执行的一种情况:在单处理器上,进程A和B交替(交叉)执行,它们交替(交叉)执行的操作次序可能为:a1、b1、b2、a2、a3、b3

    并发实质

    • 并发的实质是一个处理器在几个进程之间的多路复用 (多路复用比较出名的有时分复用,根据时间片调用不用的进程)
    • 并发是对有限的物理资源强制行使多用户共享,消除计算机部件之间的互等现象,以提高系统资源利用率
    • 宏观:并发性反映一个时间段中几个进程都在同一处理器上处于运行还未运行结束的状态
    • 微观:任一时刻仅有一个进程在处理器上运行

    并发差异

    • 并发多线程程序设计:模块都属于一个进程,在进程内部执行
    • 并发多进程程序设计:模块属于不同进程

    3.并发进程的特性

    并发进程之间的关系分为两类:无关的交互的

    • 无关的并发进程:一个并发进程不会改变另一个并发进程的变量值
    • 交互的并发进程:一组并发进程共享某些变量,进程的执行可能影响其他并发进程的执行结果

    Bernstein条件

    并发进程的无关性是进程的执行与时间无关的一个充分条件,又称为Bernstein条件

    4.进程的交互:协作和竞争

    竞争关系(间接制约关系)

    系统中的多个进程之间彼此无关,相互并不知道其它进程的存在,相互之间并不交换信息。但是由于这些进程共用了一套计算机系统资源,因而必然产生竞争资源的问题,一个进程的执行可能影响到同其竞争资源的其它进程。操作系统必须协调好诸进程对资源的争用。一旦一个进程要使用已分配给另一个进程的资源,则该进程必须等待

    资源竞争产生两个问题

    • 一个是死锁(Deadlock)问题,就是一组进程如果都获得了部分资源,还想要得到其他进程所占用的资源,最终所有进程都将陷入死锁
    • 一个是饥饿(Starvation) 问题,是指一个进程由于其它进程总是优先于它而被无限期拖延 既要解决饥饿问题,又要解决死锁问题。解决饥饿问题的最简单策略是FCFS资源分配策略(先来先服务)

    竞争解决

    进程互斥是解决进程间竞争关系(间接制约关系)的手段

    进程互斥

    • 指若干进程要使用同一共享资源时,任何时刻最多允许一个进程使用,其他要使用该资源的进程必须等待,直到占有资源的进程释放该资源
    • 进程互斥关系是一种特殊的进程同步关系,即逐次使用互斥共享资源,是对进程使用资源次序上的一种协调  
    • 临界区管理可以解决进程互斥问题

    协作关系(直接制约关系)

    某些进程为完成同一任务需要分工协作,由于合作的每一个进程都是独立地以不可预知的速度推进,这就需要相互协作的进程在某些协调点上协调各自的工作。当协作进程中的一个到达协调点后,在尚未得到其伙伴进程发来的消息或信号之前应阻塞自己,直到其他合作进程发来协调信号或消息后才被唤醒并继续执行。这种协作进程之间相互等待对方消息或信号的协调关系称为进程同步

    进程同步:

    指两个以上进程基于某个条件来协调它们的活动。一个进程的执行依赖于协作进程的消息或信号,当一个进程没有得到来自于协作进程的消息或信号时需等待,直到消息或信号到达才被唤醒

     

     

    展开全文
  • 并发与并行是cpu运行多个程序的方式 不管是并行与并发,在用户看起来都是‘同时’运行的,他们都只是一个任务而已,正在干活的是cpu,而一个cpu只能执行一个任务。 并行就相当于有好多台设备,可以同时供好多人...
  • 僵尸进程的父进程已经退出,而该进程dead之后没有进程接受,就成为僵尸进程(zombie)进程。任何进程在退出前(使用exit退出) 都会变成僵尸进程(用于保存进程的状态等信息),然后由init进程接管。如果不及时回收...
  • 程序仅仅只是一堆代码而已,而进程指的是程序的运行过程。 并发与并行 无论是并行还是并发,在用户看来都是’同时’运行的,不管是进程还是线程,都只是一个任务而已,真是干活的是cpu,cpu来做这些任务,而一个cpu...
  • 22、进程的概念与进程并发执行

    千次阅读 2020-10-15 19:08:51
    文章目录一、进程的描述与控制1.1 进程1.2 进程的特点1.3 进程的结构二、进程的状态2.1 进程并发执行2.2 进程的2状态2.3 进程的5状态2.4 进程的状态转换图 一、进程的描述与控制 1.1 进程 进程也称之为任务。 ...

    一、进程的描述与控制

    1.1 进程

    • 进程也称之为任务。
    • 指一个程序执行的过程:进程是程序在一个数据集合上的运行过程,是系统进行资源分配调度的一个独立单位;也是可并发执行的程序在一个数据集合上的运行过程
    • 进程是可被跟踪的:可以使用执行指令的序列来进行跟踪。(从处理器角度上)

    1.2 进程的特点

    • 动态性
    • 并发的
    • 独立性
    • 异步性

    1.3 进程的结构

    • 程序(依赖于程序)
    • 数据
    • PCB(Process Control Block)进程控制块

    二、进程的状态

    2.1 进程的并发执行

    例:假设内存中由3个进程A,B 和 C,他们的程序代码已全部装入内存。若A,C两进程需要执行12条指令,B进程需要执行4条指令,且B进程执行到第4条指令处必须等待I/O。如何跟踪他们的执行过程?

    2.2 进程的2状态

    2.2.1 进程可以被理解为两个状态

    • Running(执行):
    • Not-running (非执行):

    2.2.2 状态转换图

    在这里插入图片描述

    • 并非所有进程只要Not-Runing就处于ready状态(就绪:完事具备,就差CPU分配给我),有的需要blocking(阻塞)等待I/O完成。
    • Not-running又可分为ready和blocked两种状态。
      所以2状态比较难处理这类情况。

    2.3 进程的5状态

    2.3.1 进程可被分为5个状态

    • Running(执行):占用处理器(单处理机环境中,某一时刻仅一个进程占用处理机)
    • Ready(就绪):准备执行的状态,准备被调度的状态,有机会就会开始执行。
    • Blocked(阻塞):等待某事件发生才能执行,如 等待I\O完成等。
    • New(新状态):进程控制块(PCB)已经创建,但未被OS接纳为可执行进程。
    • Exit(退出):因停止或取消,被OS从执行状态释放(将死状态)。

    2.3.2 状态转换图

    在这里插入图片描述

    • Null -> New:新创建进程首先处于新状态。
    • new -> Ready:OS接纳新状态进程为就绪进程。
    • Ready -> Running:OS只能从就绪进程中选一个进程执行。
    • Running -> Exit:执行状态的进程执行完毕,或被取消,则转换为退出状态。
    • Running -> Ready:分时系统中,时间片用完,或者优先级高的进程到来,及那个种植优先级低的进程的执行。
    • Running -> Block:执行进程需要等待某事件发生。通常因进程需要的系统调用不能立即完成,而阻塞(非锁死)。
    • Block -> Ready:当阻塞进程等待的事件发生,就转换为就绪状态。
    • Ready -> Exit:某些系统允许父进程在任何情况下终止其子进程。若一个父进程终止,其子孙进程都必须终止。
    • Block -> Exit:同上。

    进程在运行过程当中,等待的事件可能不相同,所以我们可能需要不同类型的阻塞队列。

    展开全文
  • 第三章 并发进程 1.顺序程序设计的特点: 程序执行的顺序性:一个程序在处理器上的执行是严格按序的,即每个操作必须在下一个操作开始之前结束。 程序环境的封闭性:运行程序独占全部资源,除初始状态外,其所处的...
  • 进程并发与并行,三种状态

    千次阅读 2020-03-17 09:23:30
    进程的特征: 1.动态性,是进程最基本的特性,可表现为由创建而产生,由调度...3.独立性,是指进程实体是一个能独立运行的基本单位,同时也是系统中独立获得资源和独立调度的基本单位。 进程并发与并行 并发相比并...
  • 并发两个或多个事件在同一个时间段内发生。 并行:两个或多个时间在同一时刻发生(同时发生)。 2、 线程与进程 进程就是在内存中独立占用一定空间正在运行的程序; 是操作系统进行资源(包括cpu、内存、...
  • 进程线程和并行并发

    千次阅读 2019-01-17 16:37:40
    进程是具有一定独立功能的程序,关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。一个进程要是能独立运行,它必须拥有一定的资源,包括用于存放程序正文,数据的磁盘和内存地址空间...
  • 进程并发并行串行

    2021-01-22 23:45:16
    进程并发并行及同步异步 一、进程并发、并行、串行 并发: 多个任务看起来是同时进行, 这是一种假并行 单核下使用多道技术实现 并行: 多个任务同时进行 并行必须有多核才能实现,否则只能实现并发(伪并行) ...
  • 并发单核CPU通过快速切换时间片方式,处理大量时间,营造出时间被并行处理的假象(因为CPU处理速度远大于其他环节(寄存器环境配置环节)的处理速度),实质上cpu仍然是只能做一件事。 并行:多核CPU在同一...
  • 理解并发进程

    千次阅读 2019-04-28 18:15:45
    顺序程序设计: 1、执行的顺序性(即一个程序在处理器上是严格按照顺序执行的,每个操作必须在一个操作开始之前结束)。...这一点当你看到下面的并发进程就会深刻体会到。因为并发程序执行的结...
  • 进程在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。 线程:线程是进程中的一个实体,作为系统调度和分派的基本单位。Linux下的线程看作...
  • 进程的并行和并发

    千次阅读 2019-10-06 14:22:18
    一、进程并发和并行 并行: 并行是两者同时执行,比如赛跑,两个人都在不停的往前跑;(资源够用,比如三个线程,四核的CPU ) 并发: 并发资源有限的情况下,两者交替轮流使用资源,比如一段路(单核CPU资源)...
  • 1>单线程或者单进程 相当于短链接,当accept之后,就开始数据的接收和...是TCP连接后,每一个客户机的请求并不由服务器直接处理,而是由服务器创建一个子进程来处理 2.多线程并发服务器 多进程服务器是对多进程的服
  • Python 协程并发

    2020-12-21 21:10:44
    文章目录先行内容同步和异步阻塞和非阻塞并行和并发协作式多任务和抢占式多任务线程正文协程可等待对象一个协程并发执行的例子协程的逻辑扩展内容生成器参考 先行内容 同步和异步 同步和异步关注的发送方和接收方...
  • 并发&并行&多线程&多进程&协程

    千次阅读 多人点赞 2020-05-19 15:25:00
    并行(Parallelism) 并行是说同一时刻做很多操作。多进程是实现并行的有效方法。因为它可以将许多任务分配到计算机的多个核心上。多进程很适合计算密集型的...并发是比并行更加宽泛的概念,它的是,多个任务可以交
  • java并发面试题(一)

    2021-01-09 13:57:06
    答:并发多个任务在同一个CPU上执行,然后按照划分时间片来交替执行,在同一个时间段内,多个任务都在执行,是属于相同实体上的多个事件,并发是为了更好的利用处理器的每个核,以达到更高的性能。 使用多线程...
  • 进程的互斥是并发进程间的一种普通 的关系,进程互斥是对于某个系统资源当有一个进程正在使用时,其他进程进程如果想使用,则必须等待,,即该资源不得同时使用,直到使用该资源的进程释放了该资源,其他进程可...
  • 操作系统——并发进程

    千次阅读 热门讨论 2015-03-16 17:15:02
    并发进程涉及到两个问题也是操作系统致力于解决的问题——合理分配资源。   与时间产生的错误是在同一个进程发生中断时,占用处理器的时间上出现了问题。当两个相同的操作要进行时同时进行时,开头都可以,处理器...
  • 文章目录一、并发介绍1. 进程和线程2. 并发和并行(1)并发(2)并行(3)并发和...同一个进程中的多个线程之间可以并发执行。 2. 并发和并行 并发和并行最开始都是操作系统中的概念,表示的是 CPU 执行多个任务的方式
  • 并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是,通过设计保证系统能够同时并行处理很多请求。 严格意义上说,单核的CPU是没法做到并行的,只有多核的CPU才能做到严格意义...
  • 互斥是指并发执行的多个进程由于竞争同一资源而产生的相互排斥关系。 2-直接互相制约欢喜(合作)-同步 进程之间共同完成一项任务直接发生相互作用的关系。 临界资源与临界区 临界资源打印机,磁带机,表格 。...
  • Rust的并发编程(一)多进程并发

    千次阅读 2020-09-09 11:23:33
    文章目录Rust的并发编程(一)多进程并发创建子进程等待子进程结束定子进程的命令行参数进程间通信 Rust的并发编程 并发,是在宏观意义上同一时间处理多个任务。并发的方式一般包含为三种:多进程、多线程以及...
  • 程序的顺序执行和并发执行 顺序执行:按照顺序进行执行。 顺序性:严格按照顺序执行,前一个结束后一个才能执行 封闭性:程序运行时独占资源,只有程序本身才能改变机器各种资源的状态。 可再现性:结果与执行速度...
  • 1. 几个概念1.1 并发在...1.2 互斥并发进程之间的制约关系有两种,即互斥和同步。多个并发进程之间,因竞争使用临界资源而互相排斥执行的间接制约关系,叫作互斥。例1:例2:共享变量设两个进程P1,P2,它们共享同一
  • 模拟进程并发执行

    2011-12-05 21:51:33
    进程并发性: 多个进程实体同时存在于内存中,能在一段时间内同时运行。 引入进程的目的就是为了使进程并发执行,以提高资源利用率,所以并发性是进程的重要特征,也是OS的重要特征。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 207,438
精华内容 82,975
关键字:

并发进程是指