精华内容
下载资源
问答
  • 引入进程目的

    万次阅读 2018-05-24 10:03:14
    操作系统为何要引入进程这个概念,这要从多批道处理系统说起。为了提高CPU利用率,多批道处理系统一次性载入多个作业到内存中让程序并发执行,但这会造成一系列的问题。这里也谈到一个概念"并发",并发和...

                     ❤️强烈推荐人工智能学习网站❤️

                     操作系统为何要引入进程这个概念,这要从多批道处理系统说起。为了提高CPU利用率,多批道处理系统一次性载入多个作业到内存中让程序并发执行,但这会造成一系列的问题。这里也谈到一个概念"并发",并发和并行的概念很多人混淆不清。并发:指你有处理多个任务的能力,不一定要同时进行。并行:指你有同时处理多个任务的能力。

                     程序的并发执行产生的问题:

                     1.间断性。如果现在并发执行两个不同程序的A操作和B操作,两个不同程序的A操作和B操作根本没啥关系,但是它们是并发执行的,执行了A操作,但是B因为其他原因没有执行完毕,则A操作对应的那个程序也无法继续向下执行,必须等待B操作执行完毕

                       2.失去封闭性。并发执行的程序,系统中的资源都是共享的,而这些资源的状态也由这些程序来改变,致使其中一个程序运行时,其环境必然受到其他程序影响

                       3.不可在现性。因为程序运行的速度不同,程序的运行对环境也相互影响,则程序多次执行,虽然它们的初始条件相同,但是运行的结果却个不同。

                       上面产生的问题在进程这个概念引入后,都得到了很好的解决。

                      

     

     

    参考资料:计算机操作系统

    参考地址:https://www.zhihu.com/question/33515481

    展开全文
  • 为什么引入进程

    千次阅读 2018-01-24 22:43:55
    为了缓解这个矛盾,人们引入了多道批处理系统,该系统让程序并发执行,即在一个程序发起I/O请求时CPU不再选择等待I/O完成,而是转去执行下一个程序。  然而,由于发起I/O请求的程序而暂停的程序什么时候又重新...

            我们知道,最早出现的OS是单道批处理系统,由于它是顺序执行程序的,即一个一个地按先到先执行的顺序依次执行。因此,CPU的高速性与I/O的低速性之间的矛盾很明显。为了缓解这个矛盾,人们引入了多道批处理系统,该系统让程序并发执行,即在一个程序发起I/O请求时CPU不再选择等待I/O完成,而是转去执行下一个程序。

            然而,由于发起I/O请求的程序而暂停的程序什么时候又重新执行?由此引入分时系统,它首先规定一个用户可接受的等待时间间隔,然后按这段时间内要执行的程序数目N将其划分成N段,其中每段叫做一个时间片。这就使得在一段时间内,每个等待执行的程序都可以得到执行——解决了等待程序的最长等待时间。

            但是,分时系统存在一个问题:

     

            本来该程序段由于并发性可能执行到第4行直接跳到第6行执行,最后输出结果11,这显然不对。因此要使程序执行结果正确,那么并发执行的最小单元不能是指令。为了解决这个问题,引入了进程——进程是一个具有实现某些功能的程序块,并规定CPU在进程内只能顺序执行,即就是进程是能并发执行的单元。

    展开全文
  • 复习-进程线程引入目的及其比较

    千次阅读 2018-03-27 19:13:51
    进程引入目的进程引入目的是为了提高系统的资源利用率和增加系统的吞吐量。线程引入目的:线程引入是为了在进程的基础上节省系统的时空开销,进一步提高操作系统的并发性。进程与线程的比较: 进程是操作...

    进程引入的目的:进程引入的目的是为了提高系统的资源利用率和增加系统的吞吐量。

    线程引入的目的:线程引入是为了在进程的基础上节省系统的时空开销,进一步提高操作系统的并发性。

    进程与线程的比较:

    1.    进程是操作系统进行资源调度和独立运行的基本单位,引入线程之后,进程只是操作系统资源调度的基本单位,线程成为独立运行的基本单位。
    2. 多个线程共享同一进程的所有资源,表现在同一进程的所有线程都具有相同的地址空间。
    3. 创建或撤销进程时所付出的开销明显大于线程创建或撤销时所付出的时空开销。
    4. 对于多处理机系统,对于进程而言,不管有多少处理机,该进程只能运行在一个处理机上,而对于多线程进程,可以将一个进程中的多个线程非配多个处理机上,是它们并行的执行。
    展开全文
  • 引入进程 程序和进程有什么区别? PCB是做什么用的? 进程的基本状态 有“挂起”的进程状态 什么是挂起状态? 为什么需要挂起? 有挂起状态的状态讲解 PCB详解  在上一章节已经讲过了在单道系统的时代,内存中只有...


          在上一章节已经讲过了在单道系统的时代,内存中只有一个程序,这样的系统效率是不高的,所以需要在内存中同时运行多个程序, 同时运行多个程序有什么问题吗?

    顺序和并发

    先来看一下顺序程序的特征:

    • 顺序性:顺序性是指内存中只有一个程序,资源的利用率是很低的
    • 封闭性:程序独占系统的资源
    • 可再现性:相同的环境下由于只有一个程序独占资源,所以多次相同的输入会有相同的输出

    对比顺序程序,多道中的多个程序运行有什么特征,看一下并发程序的特征:

    • 间断性:多个程序宏观上并发,微观上轮流使用CPU,所以每一个程序都是走走停停,具有间断性,这样做提高了资源的利用率
    • 失去封闭性:多个程序共享系统的资源,所以资源的状态不专属于一个程序,失去了封闭性
    • 不可再现性:由于多个程序共享资源,每个程序都有对资源修改的权利,所以程序的输出结果是不一定的

          操作系统设计的最终目的是不但要提高资源的利用率,而且还要具备封闭性和可再现性,如何解决封闭性的问题

    引入进程

    解决封闭性有两种方法

    1.Bernstein条件:既然所有运行的程序不能并发运行,那么能否让一部分互不干扰的程序并发运行,在一部分程序上实现并发
    具体内容:
    在这里插入图片描述
          其实要表达的意思是这样的,将程序的所有读的集合和写的集合挪列出来,如果两个程序仅仅只有读集有交集,说明两个程序是可以并发的,也就是说两个程序可以同时读,但一个读一个写和同时写都是不能并发的

    2.引入进程

    那么能否有一个东西将资源封闭起来呢?

          进程就被引入了,进程是系统进行资源分配处理机调度的独立单位,所以进程之间是可以并发的。

                                      进程 = 数据段 + 程序段 + PCB

    程序和进程有什么区别?
    1. 进程是动态的,程序是静态的
    2. 进程具备并发性,程序没有
    3. 进程是资源分配和处理机调度的独立单位,并发性受系统制约
    4. 一个程序运行多次,对应多个进程
    PCB是做什么用的?

          PCB是程序控制块,为了使参与并发执行的每个程序都能独立的运行,在操作系统专门配备的数据结构。结构中有什么内容,在学习完进程的基本状态后再进行理解

    进程的基本状态

    进程的基本状态可以分为:就绪状态阻塞状态执行状态
    三者的转换关系用一张图来表示:
    在这里插入图片描述
    描述一下这个过程

    1. 当作业从外存的后备队列中调入内存的时候,该进程就处于了就绪状态,这个时候等待CPU时间片,如果CPU有空闲的时间,经过进程调度该进程进入运行状态,如果中间没有等待事件比如IO请求,那么进程直接完成撤销。
    2. 如果有IO请求,那么进入阻塞状态等待IO事件,如果IO事件具备,那么进程重新进入就绪状态等待CPU的调度。
    3. 如果进程运行到一半,CPU时间片用完了,那么就该其他进程运行了,那么该进程就会进入就绪状态等待CPU时间片。

    总结一下:

    1. 就绪状态:等待CPU时间片
    2. 阻塞状态:等待事件
    3. 执行状态:使用CPU

    有“挂起”的进程状态

    什么是挂起状态?

          挂起就是将正在活动的进程(执行,就绪,阻塞)处于静止状态,此时系统将回收这部分进程所占用的资源。

    为什么需要挂起?

    刚才上面的定义说到了目的和用途,那到底是什么用途?

    1. 系统负荷调节:前面讲到了实时系统,实时系统有过载保护,如何理解呢,在民用的操作系统中,有时系统超负荷时会出现死机,这时用户就会打开任务管理器关掉一部分不重要的程序,过一会在重新打开刚才关掉的程序。这个过程如果是实时系统,比如军事航空上,死机肯定是不允许的,随意关掉某个程序很复杂的。而挂起就可以解决一部分程序占用资源的问题,以达到系统负荷调节的目的。
    2. 终端用户的需要:举一个简单的例子,写代码时会用到调试,而调试就用到了挂起。
    3. 操作系统的需要:操作系统需要查看资源的使用情况,需要用到挂起。
    4. 对换的需要-虚拟内存:虚拟内存是比实际内存大的,虚拟内存就是通过把进程进行挂起,以增大内存的使用。
    有挂起状态的状态讲解

          理解了什么是挂起和挂起有什么用后,看一下有挂起状态的进程状态。可以把就绪状态和阻塞状态划分为静止和活动,通过一张图来看一下状态的转换。

    在这里插入图片描述
    可以看到虚线上面的和基本状态演变图相似,下面多了静止就绪静止阻塞

    说一说不同点:

    1. 从创建直接到静止就绪,说明考虑到系统当前资源状况和性能的要求,不分配给新建进程所需的内存资源
    2. 两个激活,两个挂起,说明内存不足或者需要用内存的时候,执行挂起,用完后又进行了激活。

    PCB详解

    刚才上面已经说过了,了解了进程状态后来讲解PCB,因为这里我是根据进程的生命周期来讲解PCB

    PCB的作用以及描述

    1. 作为进程独立运行基本单位的标志,当系统创建了一个新进程,就建立了一个PCB,PCB因为是经常要用的,所以PCB被放到了内存区域达到系统内存
    2. PCB为进程管理所需要的信息,当调度程序调度进程时,只能根据该进程PCB中记录的程序和数据在内存或外存中的起始指针,才能找到对应的程序和数据,需要访问IO时也相同
    3. PCB提供调度所需的信息,只有处于就绪状态的进程才能被调度被执行,所以在PCB中提供了进程处于何种状态的信息,进程的优先级等信息。
    4. PCB能实现间断性的运行方式, 当进程因阻塞而暂停运行时,必须要保留CPU现场信息,当进程再次被调度时,还需要恢复CPU现场信息。
    5. 为实现与其他进程的同步与通信,PCB中有通信区域或通信队列指针等。
    6. 在进程执行完后,PCB会随之消亡

    通过上面的描述,已经知道了PCB中包含的一部分信息,具体来看一下

    PCB中的信息

    1. 进程标识符:唯一的表示一个进程
    2. 处理机状态:包括通用寄存器,指令计数器,程序状态字,用户栈指针
    3. 进程调度信息:进程状态,进程优先级,进程调度信息,事件
    4. 进程控制信息:程序和数据地址,进程同步,资源清单,链接地址
    展开全文
  • 2.引入进程目的 / 为什么要有进程:  为了使进程实体能和其它进程实体并发执行,以提高资源利用率和系统吞吐量。     3.线程的定义:  线程是进程的子任务,是CPU调度和分派的基本单位。     4.引入线程的...
  • 有了进程为什么还要引入线程?

    千次阅读 2018-01-26 12:15:15
     引入线程是有目的的——因为进程作为可拥有资源和可独立调度的基本单位,犹如一个随时背着粮草的士兵,这必然会造成士兵的执行事务速度,所以,一个想法就是:分配两个士兵执行同一个事务。一个负责搬运所需粮草并...
  • 实时操作系统追求的目标是( )。 A.高吞吐率 B.充分利用内存   C. 快速响应 D. 减少系统开销 7、 CPU状态分为系统态和用户态,从用户态转换到系统态的唯一途径是( )。 A. 运行进程修改程序...
  • 进程

    千次阅读 2021-04-10 21:41:24
    1.进程的概念 程序: (1)存放在磁盘上的指令和数据的有序集合(文件) (2)静态的 进程: (1)执行一个程序所分配资源的总称...通过系统数据段,可以使得操作系统有效的管理进程,系统数据段中主要包含:进程控制块
  • 1,为什么会产生或者引入线程呢??? 2,程序,进程,线程之间的区别??? 3,线程的优缺点,线程的模型(1:1,N:M,N:1)???
  • 什么是进程? ( 进程的详细概念 )

    万次阅读 多人点赞 2017-12-09 15:19:46
    为什么引入进程的概念?  从理论角度看,是对正在运行的程序过程的抽象;  从实现角度看,是一种数据结构,目的在于清晰地刻画动态系统的内在规律,有效管理和调度进入计算机系统主存储器运行的程序。 什么...
  • 进程常见知识点总结

    2019-07-01 22:42:19
    不管是工作面试还是应试考试,进程都是操作系统中非常重要的...我们首先来分析一下为什么操作系统要引入进程这个概念,即进程从哪来? 一般来说,操作系统按照是否支持并发可分为以下两类: 早起的计算机大多数都是...
  • 六.linux进程之守护进程

    千次阅读 2019-04-27 16:41:04
    一、守护进程引入 1、进程查看命令ps 2、向进程发送信号指令kill 3、守护进程简介 二、编写简单守护进程 1.Linux系统守护进程的创建流程: 1、后台运行 2、脱离控制终端、登录会话和进程组 3、改变当前...
  • 线程 vs 进程

    万次阅读 多人点赞 2017-01-22 19:51:54
    进程与线程的区别是很重要的...引入进程之前–多道程序设计概述多道程序设计技术是操作系统最早引入的技术,它的设计思想是允多个程序同时进入内存并运行,其目的是为了CPU的利用率,进而提高系统效率。特点多道程序设
  • 进程调度

    千次阅读 2012-12-04 15:27:35
    进程调度 无论是在批处理系统还是分时系统中,用户进程数一般都多于处理机数、这将导致它们互相争夺处理机。另外,系统进程也同样需要使用处理机。这就要求进程调度程序按一定的策略,动态地把处理机分配给处于...
  • 在OS中引入进程后,一方面使系统的吞吐量和资源的利用率得到提升,另一方面也使得系统变得复杂,如果没有合理的方式对进程进行妥善的管理,必然会引起进程对系统资源的无序竞争,使系统变得混乱;为了实现对并发进程...
  • 在此之前对进程通信不太了解。 最近因项目需要稍有涉足,目前还在学习中 正文  项目需求  两个独立的解决方案,属于两个项目,在系统中开辟两个进程。  需要在第一个项目中调用第二个项目,对第二个项目进行...
  • 如何将代码植入已知java进程id(pid)并执行?自jdk 1.6以来,java提供一种java进程间通信的技术.此技术可以实现将任意代码通过代理方式植入到正在运行的jvm中并执行.注意: attach相关技术被封装在JAVA_HOME/lib/tools....
  • 线程与进程

    2017-09-06 13:31:22
    系统引入进程目的是为了多个程序并发执行,而线程的引入是为了减少并发中的时空开销,以提高并发能力 1.进程  进程是资源的拥有者,资源包括内存、存储、I/O设备等,进程同时又是一个可以独立调度和分派的基本...
  • 进程管理

    千次阅读 多人点赞 2021-05-05 22:15:07
    进程管理
  • Python-----线程、进程、协程(主要看代码)

    千次阅读 多人点赞 2020-07-30 11:31:22
    文章目录线程进程进程和线程对比协程可迭代对象 && 迭代器生成器协程协程--yield协程-----greenlet协程------gevent进程、线程、协程对比 线程 多任务:操作系统可以同时运行多个任务。 python 默认是单任务...
  • 进程与线程

    2016-03-18 13:56:37
    进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位。 进程的特征:动态性、...引入进程目的,是为了使多道程序并发执行,以提高资源利用率和系统吞吐量。而引入线程,则是为了减小程序在并发执行
  • 进程基础

    千次阅读 多人点赞 2019-11-03 20:07:32
    进程的基本概念 程序顺序执行的特征: 1)顺序性:处理机严格按照程序所规定的顺序执行,每一步操作必须在下一步操作开始前执行 2)封闭性:程序在封闭的环境下运行,程序独占资源,资源的状态由程序决定,...
  • linux之进程的基本概念(进程进程组,会话关系)

    千次阅读 多人点赞 2018-04-29 09:02:30
    进程进程是操作系统的一个核心概念。每个进程都有自己唯一的标识:进程ID,也有自己的生命周期。一个典型的进程的生命周期如图4-1所示。进程都有父进程,父进程也有父进程,这就形成了一个以init进程为根的家族树。...
  • 假定父进程malloc的指针指向0x12345678, fork 后,子进程中的指针也是指向0x12345678,但是这两个地址都是虚拟内存地址 (virtual memory),经过内存地址转换后所对应的 物理地址是不一样的。所以两个进城中的这两个...
  • 操作系统——进程

    千次阅读 2017-06-27 09:54:23
    操作系统——进程为什么要引入进程?​ 由于操作系统的多道程序环境下,允许多个程序并发执行,一旦并发执行,意味着多个程序有间断性及不可再现性的特点,引入了进程的概念之后,可以更好的描述和控制程序的并发...
  • 操作系统进程状态和状态转换详解

    千次阅读 多人点赞 2019-11-01 10:28:55
    ​ 之前的有博文对进程和线程的区别进行了详细的介绍,并且说明了引入进程目的是为了能够使程序并发的执行,并且可以对并发执行的程序加以描述和控制。这篇博文,我们就来对进程的状态转换来进行详细的分析。本文...
  • Linux 进程进程调度详解

    千次阅读 2015-09-24 15:37:41
    进程调度发生在什么时机呢?这与引起进程调度的原因以及进程调度的方式有关。 引起进程调度的原因有以下几类, (1)正在执行的进程执行完毕。这时,如果不选择新的就绪进程执行,将浪费处理机资源。 (2)执行中进程...
  • 进程进程进程实体的运行过程,是系统进行资源分配和调度的一个独立的单位。 进程控制快:为了使参与并发执行的程序(含数据)能独立的运行,必须为之配置一个专门的数据结构。 进程的状态:运行状态,就绪状态...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 170,991
精华内容 68,396
关键字:

引入进程的主要目的