精华内容
下载资源
问答
  • 1.1程序设计 1.1.1程序的顺序执行 Ii表示第i个程序的输入;Pi表示第i个程序的计算处理;Oi表示第i个程序的打印输出 对于一个要解决的问题,往往需要按一定的顺序执行,典型的是输入,计算,然后进行打印...
    1.1多道程序设计
    1.1.1程序的顺序执行
    Ii表示第i个程序的输入;Pi表示第i个程序的计算处理;Oi表示第i个程序的打印输出
    对于一个要解决的问题,往往需要按一定的顺序执行,典型的是输入,计算,然后进行打印输出。

    顺序程序设计方式的一些特点
    (1)简单,方便,容易理解;
    (2)确定性:程序运行结果,不会受运行过程中出现的中断事件的影响;
    (3)封闭性:运行程序独占整个计算机系统资源,除了初始状态以外,该程序所处的环境只有本身决定,只有程序本身才能改变系统资源状态和环境。
    (4)可再行性:一个程序,只要初始输入条件相同,运行结果也必然相同。

    缺点:计算机资源使用效率不高



    1.1.2程序的并发执行
    程序的并发执行:是指一个程序的执行还没有结束,另一个程序就已经开始了。
                                宏观上:在这段时间内,“同时”完成几个程序;
                                微观上:任何时刻就只有一个程序在运行。
    并发性的两层含义:(1)内部顺序性,对于一个程序而言,他的所有指令都是按序执行的;
                                    (2)外部并发性对于多个程序而言,他们是交叉运行的
    1.1.3多道程序设计
    单道程序设计:主存中每次只存在一个程序,该程序运行时独占整个计算机系统资源
    多道程序设计:让多个程序同时进入一个计算机系统的主存储器并发执行

    优点:充分发挥了计算机硬件的并发性,消除了处理器和外围设备相互等待的现象,大大提高了系统的效率。

    1.1.4并发程序执行的条件
    Bernstein条件:并发程序如果无关,则这些进程可以并发执行。
                         i个程序集合(1)读变量集合R(Pi)
                                             (2)写变量集合W(Pi)
                        如果(R(P1)并W(P2))
                            交(R(P2)并W(P1))
                            交(W(P1)并W(P2))= 空集
          

    展开全文
  • 处理器管理

    千次阅读 热门讨论 2014-01-21 15:17:42
     从宏观上看,程序的执行可以是顺序执行的,可以是并发执行的,也可以是道执行。处理器通过两级调度来确定到底该处理哪个进程。处理器选择要处理的进程时分为两步:一,作业调度,通过作业调度,决定将那些进程...


       对处理器的管理是操作系统的一个功能。

       其中,对处理器的管理感觉一直都是围绕在进程上面。

       从宏观上看,程序的执行可以是顺序执行的,可以是并发执行的,也可以是多道执行。处理器通过两级调度来确定到底该处理哪个进程。处理器选择要处理的进程时分为两步:一,作业调度,通过作业调度,决定将哪些进程装入主存中进行等待,而第二步,进程调度,则是宣布哪个进程获得了处理器的占用权。

       在微观上,若干个就绪的队列通过对进程块的链接来形成进程队列,一旦有进程让出处理器,就会有新的进程得到处理器的占用权,这时,进程的状态会改变。另外,当产生中断时,也会有进程状态的改变。那么,如何对众多进程进行管理?这时,就用到了进程控制块。在进程控制块中,包含着进程的标识信息,说明信息,线程信息,管理信息,记录着进程的状态。

        但是随着进程的增多,就会增加进程调度的次数,这会给调度和控制带来复杂性。所以,引入了线程。把进程中可以并发执行的个部分分别作为一个线程,将线程作为进程中可独立执行的子任务。

         有3个词在这里要做区分下,它们是:程序,进程,线程。

         程序是一种静态实体,程序可作为软件资料长期保存。而进程是程序在一个数据集上的执行过程,可看做是一种动态实体。进程是一个动态的实体,它有自己的生命周期。它因创建而产生,因调度而运行,因等待资源或事件而被处于等待状态,因完成任务而被撤消。反映了一个程序在一定的数据集上运行的全部动态过程;进程和程序并不是一一对应的,一个程序执行在不同的数据集上就成为不同的进程,可以用进程控制块来唯一地标识每个进程。而这一点是程序无法做到的,由于程序没有和数据产生直接的联系,既使是执行不同的数据的程序,他们的指令的集合依然是一样的,所以无法唯一地标识出这些运行于不同数据集上的程序。一般来说,一个进程肯定有一个与之对应的程序,而且只有一个。而一个程序有可能没有与之对应的进程(因为它没有执行),也有可能有多个进程与之对应(运行在几个不同的数据集上)。

        对于进程和线程,在现代操作系统中,把用户一个计算问题或一个应用问题作为一个进程,把该进程中可以并发执行的各部分分别作为线程。线程是进程中可以独立执行的子任务。个人理解是,进程是 操作系统进行资源分配的最小单位,而线程是比进程更小的能独立运行的最小单元,线程占用所属进程的资源,因而多线程能减小资源的浪费,替代多进程带来的缺点。





    展开全文
  • 下面从程序的顺序执行、程序的执行环境和程序并发执行几方面介绍程序设计模型。 一、程序的顺序执行 程序是一个在时间上按严格次序前后相继的操作序列,这些操作是机器指令或高级语言编写的语句。人们习惯的...

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

    一、程序的顺序执行

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

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

    1.顺序性

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

    2.封闭性

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

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

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

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

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

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

    二、程序的并发执行

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

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

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

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

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

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

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

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

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

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

    展开全文
  • 处理器管理与进程管理

    千次阅读 2019-04-25 21:25:29
    引子 :程序运行并发环境中的问题 (1)运行过程不确定 (2)结果不可再现1.进程定义 进程是程序在某个数据集合上的一次运行活动。数据集合是指软硬件环境,个进程共存或共享的环境。2.进程的特征 (1)动态...

    用图文描述组成进程的要素,并说明其作用。

     

    一、进程概念


    引子 :程序运行在并发环境中的问题
        (1)运行过程不确定
        (2)结果不可再现
    1.进程定义
        进程是程序在某个数据集合上的一次运行活动。数据集合是指软硬件环境,多个进程共存或共享的环境。
    2.进程的特征
        (1)动态性
            进程是程序的一次执行过程,动态产生且动态消亡;
        (2)并发性
            进程同其他进程一起向前推进;
        (3)异步性
            进程按照各自的速度向前推进(每一个进程按照自定逻辑,不考虑其他进程的运行,各自占用CPU);
        (4)独立性
            进程是系统分配资源和调度CPU的单位(但是有了线程后,操作系统调度CPU的单位就变成了线程)。
    3.进程与程序的区别
        (1)进程是动态的:程序的一次执行过程;
        (2)程序是静态的:一组指令的有序集合;
        (3)进程是暂存的:在内存中短期驻留;
        (4)程序是长存的:可以在存储介质上长期保存;
        (5)一个程序可能有多个进程。
    4.进程的分类
        (1)按照使用资源的权限进行分类
            ①系统进程:系统内核相关的进程;
            ②用户进程:运行于用户态的进程。
        (2)按照对CPU的依赖性进行分类
            ①CPU型进程:主要用于计算;
            ②I/O型进程:主要用于I/O操作。


    二、进程状态


    1.进程的状态
        (1)运行状态(Running)
            进程已经占用CPU,在CPU上运行。
        (2)就绪状态(Ready)
            具备运行条件但是由于没有CPU可用,所以暂时不能运行。
        (3)阻塞状态(Block)也叫等待状态(Wait)
            由于等待某项服务完成或者等待某个信号而不能运行的状态,比如等待系统调用,I/O操作等等。
    2.进程的三态模型
        (1)就绪->运行:进程调度。
        (2)运行->就绪:时间片到或者被强占。
        (3)运行->阻塞:请求服务后等待响应,或者等待某个信号的到来。
        (4)阻塞->就绪:请求的服务已经完成,或者等待的信号已经到来。

    3.进程的五态模型

        (1)新建状态
            用户向系统提交程序后,在进程建立之前的过程。
        (2)终止状态
            进程撤出系统的过程.

    用图文描述什么是进程切换,为什么进行进程切换,进程切换的步骤?

    进程的切换

    为了控制进程的执行,内核必须有能力挂起正在CPU执行的进程,恢复以前挂起的进程执行。 
    所有进程共享CPU寄存器,进程恢复时必须装入寄存器的一组数据(硬件上下文TSS)。在进程切换时,首先要保存挂起进程的硬件

    上下文,同时要装载唤醒进程的硬件上下文。这块linux实现的是使用软件执行进程切换。这样可以通过move指令检查装入寄存器值的合法性。 

    进程的上下文

            Context,指进程运行环境,CPU环境(比如各个寄存器的取值)等等。进程的上下文由三部分组成:用户级上下文(程序、数据、共享

            存储区、用户栈,它们占用进程的虚拟地址空间)、寄存器上下文(由各个寄存器组成)、系统级上下文(PCB、核心栈等)。
        

    进程切换的工作过程
    1、(中断/异常等触发)正向模式切换并压入PSW/PC 。 (Program Status Word 程序状态字。program counter 程序计数器。指向下一条要执行的指令)

    2、保存被中断进程的现场信息。

    3、处理具体中断、异常。

    4、把被中断进程的系统堆栈指针SP值保存到PCB。(Stack Pointer 栈指针。Process Control Block 进程控制块。)

    5、调整被中断进程的PCB信息,如进程状态)。

    6、把被中断进程的PCB加入相关队列。

    7、选择下一个占用CPU运行的进程。

    8、修改被选中进程的PCB信息,如进程状态。

    9、设置被选中进程的地址空间,恢复存储管理信息。

    10、恢复被选中进程的SP值到处理器寄存器SP。

    11、恢复被选中进程的现场信息进入处理器。

    12、(中断返回指令触发)逆向模式转换并弹出PSW/PC。

    用图文描述模式转换、进程切换、进程状态转换三者之间的关系?

    ◆运行状态(TASK_RUNNING)

    指正在被CPU运行或者就绪的状态。这样的进程被成为runnning进程。运行态的进程可以分为3种情况:内核运行态、用户运行态、就绪态。

    ◆可中断睡眠状态(TASK_INTERRUPTIBLE)

    处于等待状态中的进程,一旦被该进程等待的资源被释放,那么该进程就会进入运行状态。

    ◆不可中断睡眠状态(TASK_UNINTERRUPTIBLE)

    该状态的进程只能用wake_up()函数唤醒。

    ◆暂停状态(TASK_STOPPED)

    当进程收到信号SIGSTOP、SIGTSTP、SIGTTIN或SIGTTOU时就会进入暂停状态。可向其发送SIGCONT信号让进程转换到可运行状态。

    ◆僵死状态(TASK_ZOMBIE)

    当进程已经终止运行,但是父进程还没有询问其状态的情况。

    展开全文
  • 多核处理器就是指单个 CPU 中有个可执行单元。 如下图所示,单个 CPU 中有两套可执行单元。 多处理器(MultiprocessorMultiprocessorMultiprocessor) 多处理器系统则是一个拥有个 CPU 的系统。每个 CPU 中也...
  • 并行是指,同一时刻处理个任务,并发是指个可独立运行的任务,彼此在某一段时间内独立有序运行。 实现: 最初,程序员们用所掌握的有关机器底层的知识来编写中断服务程序,主进程的挂起是通...
  • 在单处理器上使用并发程序,并不是因为这样能提高大的性能,反而会增加系统的开销,因为程序片段相互切换,无疑要进行上下文切换(从一个任务切换到另外一个任务)。 真正的原因是考虑到阻塞的问题,程序片段...
  • 个计算问题同时装入一个计算机系统的主存储器(内存) 并行执行, 这种程序设计技术称为程序设计, 这种计算机系统称为程序设计系统 , 简称为道系统. 采用程序设计技术应注意以下三方面的问题: ...
  • 第三章 操作系统处理器管理 3.3 处理器管理 3.3.1 基本概念与术语 3.3.2 作业调度 3.3.3 进程调度 3.3.4 程序并发运行出现的问题 3.3.5 道程序设计基础并行程序设计 3.3.1 基本概念与术语 作业和进程 特权指令...
  • 操作系统 -- 处理器管理

    千次阅读 2019-08-11 16:23:30
    这篇文章主要是对处理器管理这一部分进行详细说明。 进程的由来   从联机批处理 -> 脱机批处理 -> 道批处理 -> 程序设计技术,很大的原因是cpu和其他硬件资源速度不匹配(cpu太快,其他硬件速度都...
  • Oracle EBS系统在后台通过运行大量“并发处理程序”的方式保证相关业务功能的实现,系统需要这些在后台运行的“并发程序”进行有效管理,这是通过所谓“并发管理器”来实现的。系统后台可以有个不同的“并发管理...
  • 【操作系统】处理器管理

    千次阅读 2017-04-07 19:11:01
    处理器管理就是进行处理器的分配调度。  所谓“一张图胜过千言万语”,那就先来一张思维导图来描述一下主要内容: 1 先说进程: 执行顺序 进化分为三步: ...动态的个进程可以含有相同的程序、可以并发执行
  • 2 - 处理器管理

    2018-06-12 10:44:12
    2 - 处理器管理 标签: 操作系统 处理器状态 处理器至少分用户态和内核态。 状态 指令 程序 资源 用户态 非特权指令 运行用户程序 申请资源 内核态 可用特权指令 运行系统程序 管理、...
  • 采购订单接收报如下错误:APP-FND-00204:并发管理器在运行并发请求xxxxx的派生并发程序 接收事务处理管理器 - RCVOLTM时出错。TM-TIMEOUT.英文:APP-FND-00204: Concurrent Manager encountered an error while ...
  • 第一部分我们介绍并行和并发程序的原理;第二部分介绍的是并行程序的设计;第三部分介绍并发程序的设计。 Java的线程编程 Java中实现线程的方法: 1.继承Thread类 class MyThread extends Thread { ...
  •  让个计算题同时进入一个计算机系统的主存储器并行执行,这种程序设计方法称为程序设计,这样的计算机系统称为程序设计系统。现代计算机系统具有处理器与外围设备并行工作的能力。为了发挥这一能力,提高...
  • 处理器管理(笔记)

    千次阅读 2018-09-09 11:31:12
     处理器管理是操作系统的重要组成部分,它负责管理,调度和分派计算机系统的重要资源————处理器,并控制程序执行。  操作系统的基本任务是“进程”实施管理,操作系统必须有效控制进程的执行,给进程分配...
  • 1.并发:在一段时间内完成个任务执行,或者说是在一段很短的时间内可以执行多程序指令,微观上看起来好像是可以同时运行多个进程,单核处理器就可以做到。 在一段时间内,有两个或两个以上的程序同时处于开始...
  • OS——处理器管理

    2014-03-31 21:26:10
    今天的主题是处理器管理...采用程序设计,能增加单位时间内的算题量,但每道程序来说可能延长了执行时间。   进程是个新概念,进程是一个程序在某个数据集上的一次执行。它有三种基本状态:等待态,就绪态,运
  • 在现代操作系统中,处理器的分配和运行都是以进程为基本单位的,因而对处理器管理也可以视为进程的管理。进程是程序的一次执行过程。 处理器管理包括以下功能。 1.1.进程控制 进程控制的主要任务就是为程序...
  • 内功修炼之操作系统学习(二:处理器管理

    千次阅读 多人点赞 2012-06-25 10:50:08
     处理器管理是操作系统的重要组成部分,它负责调度、管理和分配处理器并控制程序执行处理器管理中最重要的是处理器调度,即进程调度,也就是控制、协调进程对处理器的竞争。为了提高并发粒度和降低并发开销,...
  • 并发程序

    2012-12-28 10:24:31
     2、单核处理器的并发是CPU的一种调度策略,从逻辑和表面上看起来是并发执行。  3、多核处理器能实现真正意义上的并发,  4、所心就算是单核,但线程进程的执行,能够让CPU调度更机会,让人觉得是在并发...
  • 并发编程面试题(2020最新版)

    万次阅读 多人点赞 2020-03-14 17:28:01
    在 Java 程序中怎么保证线程的运行安全?并行和并发有什么区别?什么是线程,线程的优劣?线程和进程区别什么是线程和进程?进程与线程的区别什么是上下文切换?守护线程和用户线程有什么区别呢?如何在 Windows...
  • 操作系统(五)——处理器管理

    千次阅读 热门讨论 2015-04-25 21:57:43
    操作系统(三)——处理器管理 处理器管理:从表层意思中可以看出,就是处理。想生活中用来进程处理事件的。处 理器管理就是进行处理器的分配调度的!    一个计算问题往往要一定的顺序执行的,执行的顺序是有...
  • 1. 几个概念1.1 并发在操作系统的一个时间段中,有几个程序同时处于启动运行运行完毕之间的状态,且这几个程序都在同一个处理机上运行并发又有伪并发和真并发:伪并发是指单核处理器并发,真并发是指多核...
  • ch1处理器管理

    2010-01-28 22:59:00
     硬件只能发现中断事件,捕捉它并产生中断信号,但不能处理 操作系统的工作就是中断信号进行处理上面这段呢,是处理器管理和硬件的联系。处理器管理呢,实质上就是中断处理,将正在处理器执行的进程中断出去,...
  • 《操作系统》——处理器管理

    千次阅读 热门讨论 2015-04-10 16:27:37
    现代计算机系统具有处理器与外围设备并行工作后的能力,为了发挥这一能力,提高系统的效率,可以采用程序设计技术,让几个程序同时装入主存储器并行执行。进程的并发执行就是由此而来。  处理器就相当于...
  • 操作系统——处理器管理

    千次阅读 热门讨论 2015-04-19 19:23:17
    在自考之——我看《操作系统概论》博客中,我操作系统的知识进行了归纳和总结。这篇文章可以说是自己在第一次接触操作系统的内容之后的总结。总体来说,它能够帮助自己宏观把控这部分知识。何以见得?在软件设计师...
  • 先将作业流预输入至磁盘空间中的输入井区域,从输入井中选取作业调入主存的工作称为作业调度,然后通过进程调度从个等待执行的作业进程选取一个让处理器处理。 进程是描述程序执行情况的,进程有
  • 操作系统-处理器管理

    2018-10-27 18:46:54
    知识点1:进程及其实现 一. 进程 1.进程是程序对某个数据...6.并发进程:同时进行的进程(这里的同时指的是宏观上的同时,实际为进程在同一时间段执行) 7.进程三种状态之间的关系(三态模型) ( !图中进...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 129,971
精华内容 51,988
关键字:

多程序并发执行是对处理器的管理