精华内容
下载资源
问答
  • 下面从程序的顺序执行、程序的执行环境和程序并发执行几方面介绍多道程序设计模型。 一、程序的顺序执行 程序是一个时间上按严格次序前后相继的操作序列,这些操作是机器指令或高级语言编写的语句。人们习惯的...

    采用多道程序设计可以提高处理器的利用率。多道程序设计技术充分发挥了处理器与外围设备以及外围设备之间的并行工作能力,从而提高处理器和其他各种资源的利用率。下面从程序的顺序执行、程序的执行环境和程序的并发执行几方面介绍多道程序设计模型。

    一、程序的顺序执行

    程序是一个在时间上按严格次序前后相继的操作序列,这些操作是机器指令或高级语言编写的语句。人们习惯的传统程序设计方法是顺序程序设计,计算机也是以顺序方式工作的:处理器一次执行一条指令,对内存一次访问一个字节或字,对处部设备一次传送一个数据块。顺序处理也是人们习惯的思考方法,为了解决一个复杂的问题,人们把它分解成一些较为简单、易于分析的小问题,然后逐个解决。也可以把一个复杂的程序划分为若干个程序段,然后按照某种次序逐个执行这些程序段。

    我们把一个具有独立功能的程序独占处理器直到得到最终结果的过程称为程序的顺序执行。程序的顺序执行具有如下特点。

    1.顺序性

    程序所规定的动作在机器上严格地按顺序执行。每个动作的执行都以前一个动作的结束为前提条件,即程序和机器执行它的活动严格一一对应。

    2.封闭性

    程序运行后,其计算结果只取决于程序自身,程序执行得到的最终结果由给定的初始条件决定,不受外界因素的影响。程序所使用的资源(包括处理器、内存、文件等)是专有的,这些资源的状态(除了初始状态外)只有程序本身的动作才能改变。

    3.程序执行结果的确定性

    也称为程序执行结果与时间无关性。程序执行的结果与它的执行速度无关,即处理器在执行程序时,任意两个动作之间的停顿对程序的计算结果都不会产生影响。

    4.程序执行结果的可再现性

    如果程序在不同的时间执行,只要输入的初始条件相同,则无论何时重复执行该程序都会得到相同的结果。

    程序的顺序性和封闭性是一切顺序程序所应具有的特性,从这两个特性出发,不难引出程序执行时所具有的另外两个特性。顺序程序与时间无关的特性,可使程序的编制者不必去关心不属于他控制的那些细节(如操作系统的调度算法和外部设备操作的精确时间等);顺序程序执行结果的可再现性,则对程序检测和校正程序的错误带来了方便。

    二、程序的并发执行

    所谓程序并发执行,是指两个或两个以上程序在计算机系统中,同时处于已开始执行且尚未结束的状态。能够参与并发执行的程序称为并发程序。程序的并发执行,可以充分利用系统的资源,提高计算机的处理能力。但是,程序的并发执行产生了一些和程序顺序执行时不同的特性。程序的并发执行有如下特征。

    1.在执行期间并发程序相互制约

    资源的共享和竞争存在于多道程序的并发执行中,从而制约了各道程序的执行速度。由于本来并无逻辑关系的程序之间产生了相互制约的关系,而各个程序活动的工作状态与所处环境有密切关系,使并发程序的执行出现了“执行——暂停——执行”的活动现象。

    2.程序与计算不再一一对应

    在并发执行中,允许多个用户进程调用一个共享程序段,从而形成了多个“计算”。如在分时系统中,一个编译程序往往同时为几个用户提供编译服务,该编译程序便对应了几个“计算”。

    3.并发程序的执行结果不可再现

    并发程序执行结果与其执行的相对速度以及并发执行的多道程序之间的相互关系有关,导致并发程序的执行结果不可再现,即执行结果是不确定的。

    4.程序的并行执行与程序的并发执行

    多道程序的并发执行是指它们在宏观上,即在某一段时间周期内是同时进行的(这个时间周期,比处理器的指令处理周期要长得多,但是从操作人员的感觉来看,仍然时一个瞬间)。但从微观上看,除了多处理器系统外,在单处理器系统中,这些程序仍然是顺序执行的。

    程序的并行执行与程序的并发执行,这两者存在着差别。前者是指不论从宏观的时间周期上看,还是从微观上看,若干程序确实在同时运行;而程序的并发执行,如果在单处理器系统中,它们在宏观上是同时进行的,但在微观上,这些程序仍然是顺序执行的

    展开全文
  • 程序并发执行的特征

    千次阅读 2020-10-13 22:14:34
    1:间断性:程序在并发执行的...2:失去封闭性:当系统中有并发执行程序时,各个资源是他们所共享的,这些资源的状态也由这些程序所改变,所以摸一个程序运行环境会受到其他程序的影响。 3:不可再生性 ...

    1:间断性:程序在并发执行的时候,因为是共享资源,以及完成同一项任务而相互合作,致使在这些并发执行的程序之间形成了相互制约的关系,导致程序执行呈现:执行--暂停--执行

    2:失去封闭性:当系统中有多个并发执行的程序时,各个资源是他们所共享的,这些资源的状态也由这些程序所改变,所以摸一个程序的运行环境会受到其他程序的影响。

    3:不可再生性

    展开全文
  • 程序并发执行

    千次阅读 2020-03-07 11:16:57
    今天学习了程序并发执行并发执行,指两个或两个以上程序在计算机系统中,同时处于已开始执行且尚未结束的状态。能够参与并发执行程序称为并发程序。并发程序的执行和程序顺序执行的特征不同。 并发执行的特征...

    今天学习了程序的并发执行,并发执行,指两个或两个以上程序在计算机系统中,同时处于已开始执行且尚未结束的状态。能够参与并发执行的程序称为并发程序。并发程序的执行和程序顺序执行的特征不同。

    	并发执行的特征如下:   
    	( 1 )在执行期间并发程序相互制约 
    	( 2 )程序与计算不再一一对应。 允许多个程序共享一个程序段。
    	( 3 )并发程序的执行结果不可再现 并发程序与其执行的相对速度以及并发执行的多道程序
    		之间的相互关系有关。
    
    展开全文
  • 02进程学习之并发,时钟中断,单道程序设计和多道程序设计的区别 1 并发的概念 并发:一个时间段内可以运行多个程序。注意并不是同一时刻运行,即不是并行。 2 时钟中断 时钟中断:发送指令使当前占用CPU的进程停止...

    02进程学习之并发,时钟中断,单道程序设计和多道程序设计的区别

    1 并发的概念
    并发:一个时间段内可以运行多个程序。注意并不是同一时刻运行,即不是并行。

    2 时钟中断
    时钟中断:发送指令使当前占用CPU的进程停止并记录时间,好让其它进程可以执行。
    由于我们程序可以并发执行,所以每个程序都会争夺CPU,当我们需要切换另一个进程时,就是利用时钟中断来暂停它,记录本次时间等待其它进程执行完再回到被中断的那个时刻执行该进程。例如酷狗和微信的切换。

    3 单道程序设计
    单道程序设:“所有进程一个一个排对执行。若A阻塞,B只能等待,即使CPU处于空闲状态。所以已被淘汰。

    4 多道程序设计
    多道程序设计:内存中可以有多个进程轮流执行,不会阻塞,但需要硬件基础支撑。实际上就是并发的思想。

    5 四者的区别
    在不考虑单道程序设计下,多道程序设计是并发的实现,时钟中断是多道程序设计的前提。或者你可以理解为并发就是多道程序设计,毕竟这两个概念并不需要很严谨。

    展开全文
  • 程序并发执行时的特征

    千次阅读 2020-02-13 16:25:28
    间断性。程序在并发执行时,由于他们共享资源等原因导致彼此间形成了相互制约的关系。 失去封闭性。 不可再现性。程序在并发执行时由于不知道哪个程序会被优先执行导致处理结果可能出现不一致。 ...
  • 操作系统试题一.... 操作系统是系统软件中的一种,进行系统安装时可以先安装其它软件,然后再装操作系统。 ( 1 )2. 虚拟存储器是利用操作系统产生的一个假想的特大存储器,是逻辑上扩充了内存容量
  • 内存中执行。(程序运行起来之后,产生一个进程)。 那么我们可以形象的将程序比作一个剧本,这个剧本就是一张一张的纸组成的,那么就是进程就要演的戏,一出戏上面包括舞台、演员、灯光、道具等等。同一...
  • 四、 程序并发执行

    2020-05-23 16:59:52
    间断性:程序在并发执行时,由于它们共享系统资源,以及为完成同一项任务而相互合作,致使这些并发执行程序之间形成了相互制约的关系。(当图中C1已经数据处理完毕时,I2还没有输入那么C2就得进入暂停,当使C2...
  • 1.1多道程序设计 1.1.1程序的顺序执行 Ii表示第i个程序的输入;Pi表示第i个程序的计算处理;Oi表示第i个程序的打印输出 对于一个要解决的问题,往往需要按一定的顺序执行,典型的是输入,计算,然后进行打印...
  • 并发执行多程序的方法

    千次阅读 2016-09-02 16:42:07
    一种是并行的,即程序运行后不必等待执行结束就运行下一个。  最简单的方法就是使用批处理文件或Windows脚本,也可以使用VC写个小程序,读取配置文件中的程序路径及参数,循环调用CreateProcess函数即可。下面主要...
  • 进程之间的约束关系:程序并发执行的相互制约
  • 让计算机程序并发运行是一个经常被讨论的话题,今天我想讨论一下Python下的各种并发方式。
  • 1.通过实验理解进程的概念,进程的组成(PCB结构),进程的并发执行和操作系统进行进程管理的相关原语(主要是进程的创建、执行、撤消)。 2.通过实验来了解进程的三种状态以及状态间的转换。 二、实验内容及要求 用...
  • 把多个程序同时装入一个计算机系统的主存储器并行执行,称为并发程序设计 1.并发一段时间内完成多个任务执行,或者说是...多道环境下的程序设计叫做并发程序设计 2.并行:同一时刻多个任务同时执行,或者说...
  • 设计一种Qt Creator下的并发性能分析方案,通过实时监控程序并发事件,采集程序运行过程中的并发性能数据,分析程序并发性能瓶颈和死锁原因,并以插件形式进行视图数据显示.通过实验表明,该并发性能分析方案可以...
  • 所谓的程序并发执行是指若干个程序同时系统中运行,这些程序的执行时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。 补充: 顺序程序的特点: 顺序性、封闭性、可再现性。 并发程序的...
  • 随着实际应用对并发软件需求的不断增加,并发程序的应用越来越广,程序切片的研究不再仅仅局限于顺序程序,并发程序切片的研究也越来越。但是由于并发程序执行的不确定性,并发程序切片的研究还有许多问题有待解决。...
  • 操作系统:程序并发执行

    千次阅读 2018-09-09 21:22:00
    早期无操作系统及单批处理系统时,程序都是按照顺序进行执行的。先进入内存的先执行在执行的过程中不能执行其他的程序程序中的指令也是按照顺序执行,一条指令正在执行时不能开始执行另一条指令。所以程序...
  • 程序并发执行任务时,对公有变量一般情况都是需要利用悲观锁进行锁定,该代码可以通过乐观锁(即无锁)来实现公有变量的访问
  • Java并发程序设计编程

    2018-02-10 23:38:51
    并发编程的目的是为了让程序运行的更快,但是并不是启动更的线程,就能让程序最大限度的并发执行进行并发编程时,如果希望通过线程执行任务让程序运行的更快,会面临非常的挑战,比如上下文切换的问题,...
  • 文章目录进程与程序的区别多道技术并发与并行的区别开启进程的两种方式方式一:定义好需执行的函数,实例化Process对象时调用函数方法二:自定义类,继承Process,自定义方法,实例化对象调用方法 进程与程序的区别...
  • 主要介绍了Erlang中的并发程序简介,本文讲解了Erlang中基本的并发函数、并发程序模板、程序在出错时立即崩溃的优点、为了互联网上执行并发程序等内容,需要的朋友可以参考下
  • 运行任务:代理池(Python爬虫代理IP池(proxy pool)),url:https://github.com/jhao104/proxy_pool 代理池启动方式: 如上所述:启动代理池时发现需要同时启动两个py文件,但是每次去找到两个不再同一个位置的...
  • EBS 并发程序配置

    千次阅读 2017-01-17 11:52:32
    本文档描述了EBS系统中的并发程序(即请求)和可执行程序的配置步骤,简要的介绍了如何配置一个简单的并发程序的过程。 一般的并发程序配置主要包含以下几个方面: 可执行(非必须)、并发程序、参数(非必须) 其中的并发...
  • 以前,编写C++并发线程程序时,总是要借助操作系统提供的API。因此,C++的线程程序移植比较麻烦。现在,最新的C++语言标准引入了线程,解决了不同平台之间需要修改才可以运行的移植问题。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 701,450
精华内容 280,580
关键字:

多道程序的并发执行在