精华内容
下载资源
问答
  • 组成: 每个进程由哪些部分组成? 组织方式: 系统中各个进程之间是如何被组织起来的? 特征: 相比于程序,进程哪些特性? 进程定义 引入多道程序技术之后:为了方便操作系统管理,完成各程序并发执行、引入进程...

    2.1.1 进程的定义组成组织方式特征

    知识来源: B站王道考研

    知识总览

    定义: 在计算机发展史上,“进程”是为了解决什么问题被引入的?
    组成: 每个进程由哪些部分组成?
    组织方式: 系统中各个进程之间是如何被组织起来的?
    特征: 相比于程序,进程由哪些特性?

    进程定义

    引入多道程序技术之后:为了方便操作系统管理,完成各程序并发执行、引入进程、进程实体的概念。

    进程实体:PCB、程序段、数据段
    内存分配

    图2.1 内存分配

    PCB:系统为每个运行的程序配置一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代码存放位置)

    程序段、数据段、PCB三部分组成了进程实体(进程映像)。一般情况下,我们报进程实体简称为进程,例如,所谓创建进程,实质上是创建进程实体的PCB;而撤销进程,实质上是撤销进程实体中的PCB。
    注意:PCB是进程存在的唯一标志!


    从不同的角度,进程可以有不同的定义,比较传统典型的定义有:
    1、进程是程序的一次执行过程
    2、进程是一个程序及其数据在处理机上顺序执行时所发生的活动
    3、进程是具有独立功能的程序在数据集合上运行的过程(强调“动态性”),它是系统进行资源分配和调度的一个独立单位。

    引入进程实体的概念后,可把进程定义为:
    进程是进程实体运行过程,是系统进行资源分配调度的一个独立单位。
    注意:严格来说,进程实体和进程并不一样,进程实体是静态的,进程则是动态的

    进程的组成

    进程由程序段、数据段、PCB三部分组成。
    进程的组成

    图2.2 进程的组成

    PCB :操作系统通过PCB来管理进程,因此PCB中应该包含操作系统对其进行管理所需的各种信息。

    程序段:即程序代码存放的地方。
    数据段:程序运行时使用、产生的运算数据。如全局变量、局部变量、宏定义的变量就是存放在数据段中。
    PCB组成

    图2.3 PCB组成

    PCB:
        进程描述信息
          进程的标识符PID
          用户标识符UID
       进程控制和管理信息
          进程当前状态
          进程优先级
       资源分配清单
          程序段指针
          数据段指针
          键盘
          鼠标
       处理机相关信息
          各种寄存器

    进程标识符PID:当进程被创建时,操作系统会为该进程分配一个唯一的、不重复的ID,用于区分不同的进程。
    各种寄存器值:当进程切换时需要把进程当前的运行情况记录下来保存在PCB中,如程序计数器的值表示了当前程序执行到哪一句。
    进程组成

    图2.4 进程组成

    进程的组织

    在一个系统中,通常有数十、数百乃至数千个PCB。为了能对他们加以有效的管理,应该用适当的方式把这些PCB组织起来。
    注:进程的组成讨论的是一个进程内部有哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题。
    进程的组织方式
       链接方式
          按照进程状态将PCB分为多个队列
          操作系统持有指向各个队列的指针
       索引方式
          根据进程状态的不同,建立几张索引表
          操作系统持有指向各个索引表的指针

    链接方式

    链接方式

    图2.5 链接方式

    索引方式

    索引方式

    图2.6 索引方式

    进程的特征

    进程和程序是两个截然不同的概念,相比与程序,进程拥有以下特征:
    进程的特征
       动态性
       并发性
       独立性
       异步性
       结构性
    动态性(最基本的特征):进程是程序的一次执行过程,是动态地产生、变化和消亡的
    并发性:内存中有多个进程实体,各进程可并发执行
    独立性:进程是能够独立运行、独立获得资源、独立接受调度的基本单元
    异步性(导致并发执行不确定性):各进程按各自独立的、不可预知的速度向前推进,操作系统要提供“进程同步机制”来解决异步问题。
    结构性:每个进程都会配置一个PCB。结构上看,进程由程序段、数据段、PCB组成。
    知识点总结

    图2.7 知识点总结
    展开全文
  • 线程是程序执行的最小单位,是进程的一个执行流,一个进程由多个线程组成 二、进程     进程:指在系统中能独立运行并作为资源分配的基本单位,它是一组机器指令、数据和堆栈等组成的,是一个...

    一、简介

    在这里插入图片描述
        进程是资源分配的基本单位,它是程序执行时的一个实例,在程序运行时创建;线程是程序执行的最小单位,是进程的一个执行流,一个进程由多个线程组成

    二、进程

        进程:指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。

        注意,进程一般有三个状态:就绪状态、执行状态和等待状态【或称阻塞状态】;进程只能由父进程建立,系统中所有的进程形成一种进程树的层次体系;挂起命令可由进程自己和其他进程发出,但是解除挂起命令只能由其他进程发出。

        进程控制块(PCB):PCB不但可以记录进程的属性信息,以便操作系统对进程进行控制和管理,而且PCB标志着进程的存在,操作系统根据系统中是否有该进程的进程控制块PCB而知道该进程存在与否。系统建立进程的同时就建立该进程的PCB,在撤销一个进程时,也就撤销其PCB,故进程的PCB对进程来说是它存在的具体的物理标志和体现。一般PCB包括以下三类信息:进程标识信息;处理器状态信息;进程控制信息。

        由程序段、相关的数据段和PCB三部分构成了进程实体(又称进程印像),一般,我们把进程实体就简称为进程。

        进程的特征:

    • 动态性:进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的。
    • 并发性:任何进程都可以同其他进程一起并发执行。
    • 独立性:进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位。
    • 异步性:由于进程间的相互制约,使进程具有执行的间断性,即进程按各自独立的、不可预知的速度向前推进。

    在这里插入图片描述
        进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。程序运行时系统就会创建一个进程,并为它分配资源,然后把该进程放入进程就绪队列。进程调度器选中它的时候就会为它分配CPU时间,程序开始真正运行。

    三、线程

        线程:线程是进程中的一个实体,作为系统调度和分派的基本单位。Linux下的线程看作轻量级进程。

        线程的性质:

    • 线程是进程内的一个相对独立的可执行的单元。若把进程称为任务的话,那么线程则是应用中的一个子任务的执行。
    • 由于线程是被调度的基本单元,而进程不是调度单元。所以,每个进程在创建时,至少需要同时为该进程创建一个线程。即进程中至少要有一个或一个以上的线程,否则该进程无法被调度执行。
    • 进程是被分给并拥有资源的基本单元。同一进程内的多个线程共享该进程的资源,但线程并不拥有资源,只是使用他们。
    • 线程是操作系统中基本调度单元,因此线程中应包含有调度所需要的必要信息,且在生命周期中有状态的变化。
    • 由于共享资源【包括数据和文件】,所以线程间需要通信和同步机制,且需要时线程可以创建其他线程,但线程间不存在父子关系。

        多线程使用的情形:前台和后台工作情况;异步处理工作情况;需要加快执行速度情况;组织复杂工作的情况;同时有多个用户服务请求的情况等。

        线程机制的优点:
        多线程运行在同一个进程的相同的地址空间内,和采用多进程相比有以下优点:

    • 创建和撤销线程的开销较之进程要少。创建线程时只需要建立线程控制表相应的表目,或有关队列,而创建进程时,要创建PCB表和初始化,进入有关进程队列,建立它的地址空间和所需资源等。
    • CPU在线程之间开关时的开销远比进程要少得多。因开关线程都在同一地址空间内,只需要修改线程控制表或队列,不涉及地址空间和其他工作。
    • 线程机制也增加了通讯的有效性。进程间的通讯往往要求内核的参与,以提供通讯机制和保护机制,而线程间的通讯是在同一进程的地址空间内,共享主存和文件,无需内核参与。

    在这里插入图片描述
        线程是程序执行时的最小单位,它是进程的一个执行流,是CPU调度和分派的基本调度单位。一个进程可以由很多个线程组成,线程间共享进程的所有资源,每个线程有自己的堆栈和局部变量。线程由CPU独立调度执行,在多CPU环境下就允许多个线程同时运行。同样多线程也可以实现并发操作,每个请求分配一个线程来处理。

    四、进程和线程的区别

    (1)调度:

        在传统的操作系统中,CPU调度和分派的基本单位是进程。而在引入线程的操作系统中,则把线程作为CPU调度和分派的基本单位,进程则作为资源拥有的基本单位,从而使传统进程的两个属性分开,线程编程轻装运行,这样可以显著地提高系统的并发性。同一进程中线程的切换不会引起进程切换,从而避免了昂贵的系统调用,但是在由一个进程中的线程切换到另一进程中的线程,依然会引起进程切换。

    (2)并发性:

        在引入线程的操作系统中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间也可以并发执行,因而使操作系统具有更好的并发性,从而更有效地提高系统资源和系统的吞吐量。例如,在一个为引入线程的单CPU操作系统中,若仅设置一个文件服务进程,当它由于某种原因被封锁时,便没有其他的文件服务进程来提供服务。在引入线程的操作系统中,可以在一个文件服务进程设置多个服务线程。当第一个线程等待时,文件服务进程中的第二个线程可以继续运行;当第二个线程封锁时,第三个线程可以继续执行,从而显著地提高了文件服务的质量以及系统的吞吐量。

    (3)拥有资源:

        不论是引入了线程的操作系统,还是传统的操作系统,进程都是拥有系统资源的一个独立单位,他可以拥有自己的资源。一般地说,线程自己不能拥有资源(也有一点必不可少的资源),但它可以访问其隶属进程的资源,亦即一个进程的代码段、数据段以及系统资源(如已打开的文件、I/O设备等),可供同一个进程的其他所有线程共享。

    (4)独立性:

        在同一进程中的不同线程之间的独立性要比不同进程之间的独立性低得多。这是因为
    为防止进程之间彼此干扰和破坏,每个进程都拥有一个独立的地址空间和其它资源,除了共享全局变量外,不允许其它进程的访问。但是同一进程中的不同线程往往是为了提高并发性以及进行相互之间的合作而创建的,它们共享进程的内存地址空间和资源,如每个线程都可以访问它们所属进程地址空间中的所有地址,如一个线程的堆栈可以被其它线程读、写,甚至完全清除。

    (5)系统开销:

        由于在创建或撤销进程时,系统都要为之分配或回收资源,如内存空间、I/O设备等。因此,操作系统为此所付出的开销将显著地大于在创建或撤消线程时的开销。类似的,在进程切换时,涉及到整个当前进程CPU环境的保存环境的设置以及新被调度运行的CPU环境的设置,而线程切换只需保存和设置少量的寄存器的内容,并不涉及存储器管理方面的操作,可见,进程切换的开销也远大于线程切换的开销。此外,由于同一进程中的多个线程具有相同的地址空间,致使他们之间的同步和通信的实现也变得比较容易。在有的系统中,现成的切换、同步、和通信都无需操作系统内核的干预。

    (6)支持多处理机系统:

        在多处理机系统中,对于传统的进程,即单线程进程,不管有多少处理机,该进程只能运行在一个处理机上。但对于多线程进程,就可以将一个进程中的多个线程分配到多个处理机上,使它们并行执行,这无疑将加速进程的完成。因此,现代处理机OS都无一例外地引入了多线程。

    展开全文
  • 进程相关

    2019-01-02 19:50:50
    1、什么是进程?  进程是指系统中正在运行的应用程序,程序一旦运行就是进程;... 一个进程可以多个线程组成; 2、什么是线程?  线程是进程的一个实体,是进程的执行路径; 3、进程和线程之间的区别?  ...

    1、什么是进程?

          进程是指系统中正在运行的应用程序,程序一旦运行就是进程;

          进程是系统分配资源的独立实体,且每个进程之间都是相互独立的,一个进程是无法直接访问另一个进程的,除非通过对应的工具或者方式才可以访问;

          一个进程可以由多个线程组成;

    2、什么是线程?

          线程是进程的一个实体,是进程的执行路径;

    3、进程和线程之间的区别?

         1> 地址空间和其他资源文件:进程之间是相互独立的,但是对于同一个进程中的线程来说是共享的;

         2> 通信:

               进程间:通过管道、信号量、共享内存、消息队列等;

              同一个进程的线程:直接读写;

        3> 调度和切换:线程上下文切换比进程上下文切换块;

        4> 在多线程中,进程不是一个可执行的实体;

    4、如何选择进程与线程?

        1> 频繁的销毁与创建则选择线程,因为进程的创建和销毁代价很大;

        2> 线程的切换速度很快,所以需要大量的计算,切换频繁时使用线程,还有就是耗时性的操作使用线程可以提高应用的响应速度;

        3> 对CPU的使用率来说,线程更占优势,多机分布式采用进程,多核分布式使用线程;

        4> 并行操作使用线程,例如C/S架构的服务器端并发线程响应用户的请求;

        5> 追求稳定安全时,选择进程,追求执行速度时选择线程;

    5、死锁是什么?

        多个并发进程因争夺系统资源而产生的相互等待的现象;

        例如:a与b同时要进门,但是门一次只能容许一个人进,a等待b让路,b等待a让路,若无外力作用,导致俩人都无法进去;

        死锁的原因:

                 1> 系统资源的不足;

                 2> 进程的推进不合理;

    6、产生死锁的四大必要条件?

         互斥:一个系统资源在同一时间只能有一个进程可以使用; 

         不可抢占条件:一个进程在获得资源且未使用完之前,其他进程不能抢夺,只能等待当前进程使用完成后释放获得;

         占有且申请条件:一个进程在获得一个资源A时候,申请另一个资源B,但是B资源是其他线程持有的,导致当前进程无法执行;

         循环等待条件:俩个或者多个进程的执行需要多个资源,但是所属的资源互相背其他线程占用,导致循环等待持有资源的进程释放资源的情况;

    7、如何解决死锁?

         1> 最简单的办法就是不让上述的条件都满足;

               互斥性是无法改变的;

              打破不可抢占条件:当前进程持有部分资源却有申请其他资源,而其他资源被占用时,释放当前进程所持有的资源;

              打破占有且申请条件:不需要在执行前得到全部的资源才执行,得到可以开始执行的资源后就开始执行,执行完响应的资源之后释放,并且执行过程中需要其他资源时在进行申请;

              打破循环等待:资源的有序分配,将资源从小到大排序,进程的申请顺序必须从小到大(及当其占用了小的资源时申请大的资源才会给分配,否则拒绝);

       2> 合理地分配资源;

       3> 使用银行家算法:如果进程申请的资源系统的剩余内存可以满足,则分配;

    8、多线程的实现方式?

         (1)继承Thread类;

         (2)实现Runable接口(如果当前类需要继承其他类则可以使用);

         (3)使用匿名内部类(Thread类或者是Runable接口):只执行一次的线程;

         (4)定时器:

         (5)线程池的方式:线程和数据库连接这些资源是很宝贵的;

         (6)通过Spring的注解:通过@Async来定义一个线程任务;

    9、线程同步的方式?

            https://www.cnblogs.com/goody9807/p/6522176.html

         (1)同步方法、同步块;

         (2)wait()、notify、sleep;

         (3)voliate关键字;

         (4)ThreadLocal线程本地变量;

         (5)显示索ReentranLock

         (6)使用阻塞的队列;

    展开全文
  • 进程

    2012-08-27 18:34:43
    进程是由一组元素组成实体,进程的两个基本元素为程度代码和代码相关的数据集 进程可以表示为一下元素: 标识符:跟这个进程相关的唯一的标识符,区别其他进程状态:程序正在进行,则处于运行态...
    什么是进程

    进程是由一组元素组成的实体,进程的两个基本元素为程度代码代码相关的数据集

    进程可以表示为一下元素:

    • 标识符:跟这个进程相关的唯一的标识符,区别其他进程
    • 状态:程序正在进行,则处于运行态
    • 优先级:相对于其他进程的优先级
    • 程序计数器:程序中即将被执行的下一条指令的地址
    • 内存指针:程序代码和进程相关数据的指针,其他进程共享内存块的指针
    • 上下文数据
    • I/O状态信息
    • 记账信息
    上述信息放置在进程控制块


    进程状态

    从处理器角度上看,它在指令序列中按照某种顺序执行指令,这个顺序根据程序计数器寄存器中不断变化的值来指示,程序计数器可能指向不同进程中不同部分的程序代码


    分派器:从一个进程切换到另一个进程

    进程队列:队列中每一项都指向某个特定进程的指针,或者队列可以由数据块构成的链表组成,每个数据块表示一个进程

    进程的派生:为一个进程的显式请求创建另一个进程
    父进程:一个进程派生另一个进程
    子进程:被派生的进程


    进程终止的原因:
    • 正常完成
    • 超过运行时限
    • 无可用内存
    • 越界:访问不允许访问的内存单元
    • 保护错误:使用不允许使用的资源和文件
    • 算术错误
    • 时间超出:等待时间超出
    • I/O失败
    • 无效指令
    • 特权指令:使用为操作系统保留的指令
    • 数据误用
    • 操作员或者操作系统干涉
    • 父进程终止
    • 父进程请求
    操作系统的控制结构
    操作系统维护的四个不同类型的表:
    内存,I/O,文件和进程

    内存表用于跟踪内存和外存,内存的某些部分为操作系统保留,一部分留给进程
    保存在外存的进程使用某种类型的虚拟内存或简单的交换机制

    内存表:
    • 分配给进程的内存
    • 分配给进程的外存
    • 内存块或虚拟内存块的任何保护属性
    • 管理虚拟内存所需要的任何信息
    I/O表:
    管理计算机系统的I/O设备和通道
    如果正在进行I/O操作,操作系统需要知道I/O操作的状态和作为I/O传送的源和目标单元


    文件表


    进程表


    进程位置

    进程映像:程序,数据,栈和属性的集合称做进程映像




    进程的生命周期:

    进程描述符:
    进程的优先级,在CPU上运行还是因某个事件被阻塞,需要分配什么样的地址空间,允许访问哪个文件

    进程的状态:
    可运行状态,可中断的等待状态,不可中断的等待状态,暂停状态,僵死状态

    标识一个进程:
    能够被独立调度的每个执行上下文都必须有自己的进程描述符
    进程与进程描述符具有严格的一一对应的关系,这使得32位的进程描述符地址标识进程成为方便
    进程标识符processID,PID存放在进程描述符的pid字段中,PID被顺序编号,PID有上限(32767),达到上限则循环使用已闲置的小pid号
    同一组的线程有共同的PID,一个线程组中的所有线程使用和该线程组的领头线程相同的PID

    进程描述符处理
    进程描述符存放在动态内存中,而不是放在永久分配给内核的内存区
    单独为进程分配的存储区域内:
    (1)内核态的进程堆栈
    (2)线程描述符

    这块存储区域的大小为两个页框(8192)

    esp为CPU栈指针,存放栈顶单元地址,数据写入堆栈esp减小,thread_info是52字节,内核栈能扩展到8140字节

    内核从寄存器esp中得到当前CPU上运行的thread_info结构的地址,取得thread_info地址后调用current宏来取得进程描述符的地址
    current->pid返回当前的CPU上执行的进程的PID

    进程链表:
    将所有的进程描述符链接起来,task_struct结构包含list_head类型的tasks字段,prev和next指向前面和后面的task_struct元素
    进程链表的头:init_task,0进程

    TASK_RUNNING状态的进程链表:
    建立多个可运行进程链表,不同的进程优先权对应一个不同的链表
    如果进程的优先级为k(范围为0-139),则run_list将该进程链入优先级为k的链表
    多处理器系统中每个CPU都有自己的进程链表
    运行队列的数据结构是进程描述符的链表

    进程间的关系:
    父子关系
    一个进程创建多个子进程,子进程之间为兄弟关系
    进程0和1由内核创建,进程1是所有进程的祖先

    pidhash表及链表:
    从PID导出进程描述符指针
    进程P1向P2发送kill()系统调用,内核从PID导出进程描述符,从P2的进程描述符取出记录挂起信号的指针
    4个散列表:进程描述符包含不同类型的PID字段

    PIDTYPE_TGID类型散列表:
    pid_hash数组第二个元素为散列表的地址,在散列表71项为起点形成的链表中,有两个PID号为246和4351的进程描述符
    PID值存在pid结构的nr字段,pid结构在进程描述符中
    pid_list存放链表的头,每个PID链表中指向前一个元素和后一个元素的指针也存放在每个链表元素的pid_list字段

    如何组织进程:
    等待队列是在事件上的条件等待,希望等待特定事件的进程把自己放在合适的等待队列,并放弃控制权
    等待队列表示一组睡眠的进程,当某一个条件变为真时,由内核唤醒它们
    等待队列由双向链实现,其元素包括指向进程描述符的指针,每个等待队列都一个等待队列头。
    等待队列链表中的每个元素代表一个睡眠进程,该进程等待某个事件的发生,其描述符地址存放在task字段中,task_list字段中包含的是指针,由这个指针把一个元素链到等待相同事件的进程链表中
    两种睡眠进程:
    (1)互斥进程等待队列元素的flags字段为1,由内核有选择性唤醒
    (2)非互斥进程flags字段为0,总是在事件发生时由内核唤醒
    等待访问临界资源就是互斥进程的典型例子

    进程资源限制:
    每个进程都会有资源限制,限制指的是进程能使用的系统资源数量
    资源限制存放在current->signal->rlim字段中,该字段为rlim结构的数组
    rlim_cur字段是资源的当前资源的限制
    rlim_cur表示正运行进程所占用的CPU时间的当前限制
    rlim_max字段是资源限制所允许的最大值

    进程切换
    内核必须能够挂起正在CPU上运行的进程,并恢复以前进程的执行

    硬件上下文:
    每个进程拥有独立的进程空间,但是必须共享CPU寄存器,恢复一个进程之前,内核确保寄存器装入挂起进程时的值
    进程可执行上下文的一个子集,可执行上下文包含进程执行所需要的所有信息
    进程切换:保存prev硬件上下文,用next硬件上下文代替prev
    linux2.6执行进程切换:
    通过一组mov指令逐步执行切换,控制装入数据的合法性,可以检查ds和es段寄存器的合法性
    进程切换只发生在内核态 
    在进程切换之前,用户态所有寄存器的内容都已保存在内核态堆栈上
    thread字段:
    每次进程切换,被替换的进程的硬件上下文必须保存在别处
    每个进程描述符包含一个类型为thread_struct的thread字段,只要进程被切换出去内核就把其硬件的上下文保存在这个结构


    执行进程切换:
    进程切换分为两步:
    (1)切换页全局目录以安装一个新的地址空间
    (2)切换内核态堆栈和硬件上下文,硬件上下文提供内核执行新进程需要的所有信息

    switch_to 宏
    该宏有三个参数:prev,next,last
    参数last:进程切换中,涉及到三个进程而不是两个进程切换


    创建进程:
    效率低:子进程复制父进程所拥有的资源,子进程需要拷贝父进程的整个地址空间
    三种机制:
    (1)写时复制允许父子进程读相同的物理页
    (2)轻量级进程允许父子进程共享每个进程在内核的许多数据结构
    (3)vfork()系统调用创建的进程能共享其父进程的内存地址空间,阻塞父进程执行,直到子进程退出或执行一个新的程序为止


    展开全文
  • 一个标准的线程线程ID,当前指令指针(PC),寄存器集合和堆栈组成。 另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但...
  • 进程与线程

    2020-01-04 09:04:27
    一个程序的多个运行实例对应多个进程,每个进程包含一个或多个线程。 按照功能可分为:交互进程和后台进程; 按照归属分为:用户进程和系统进程。 进程控制块(PCB): 操作系统定义的、用于记录进程状态及控制进程运行...
  • Linux之初识进程

    2018-12-25 14:49:03
    学习Linux我们离不开进程这个概念,那么什么是进程呢? 进程:简而言之就是正在执行的程序...假设处理器开始执行这个程序代码,那么这个执行代码的实体就是一个进程。 描述进程—PCB 进程信息被放在一个叫进程控制...
  • 进程、线程

    2019-07-10 10:03:15
    进程:就是一定功能的程序段在某个数据段上的一次运行活动,每个进程一个PCB进程控制块,进程实体由程序段、数据段和PCB进程控制块组成。 为什么要引入进程? 如果没有进程概念的系统执行IO程序和计算程序,那么...
  • 1.什么是进程? 进程是操作系统结构的基础;是一个正在执行的程序;计算机中正在运行的程序实例;可以分配给处理器并处理器执行的一个实体;...3./proc下 每一个数据目录都是一个进程,目录名就是进程号 P...
  • 进程基础

    2011-03-14 21:44:00
    3.进程是一个动态的实体,这个实体由几部分组成?答:(1)正文段(text)/代码段:存放被执行的机器指令。这个段是只读的(所以,在这里不能写自己能修改的代码),它允许系统中正在运行的两个或多个进程之间能够...
  • 操作系统——进程

    2020-03-12 16:22:39
    什么是作业、进程、线程、管程? 作业:用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合。...线程:线程是一个进程实体,是被系统独立调度和执行的基本单位。 管程:实际上是定义一个数据...
  • 线程 进程 协程

    2019-09-21 22:27:22
    一条线程指的是一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。  一个标准的线程线程ID,当前指令指针(PC),寄存器集合和堆栈组成。另外,线程是进程的中的一个实体,是被...
  • 什么是进程? 进程:是并发执行的程序在执行过程中分配和...一个程序一个或多个进程组成一个进程由一个或多个线程组成。 例如: 对于java程序来说,当在DOS命令窗口输入:java HelloWorld 回车之后,会先启动J...
  • 问题二:什么是进程进程由什么组成的? ①进程(映像)的组成:程序段、数据段、进程控制块(PCB)引入进程控制块的原因在于为了使参与并发执行的程序(含有数据)能够独立运行,故配置一个专门的数据结构PCB ...
  • 关于进程的理解及监控

    千次阅读 2018-01-29 18:30:38
    进程的概念 什么是进程 进程(Process)是计算机中程序执的实体。程序通常是指令和相关数据组成的,在 Linux 系统中,程序的运行通常是用户通过一个命令行解释器(例如 bash shell)...当一个进程终止后,其
  • 全面解析Linux 内核 3.10.x - 内核进程

    千次阅读 2015-12-25 21:00:58
    可以产生一个或者多个子进程,最终都要走向”死亡”。为什么进程是操作系统的灵魂?因为它之于操作系统就犹如生命对于自然,犹如人之于家。一、透过现象看本质从用户程序的角度看,进程就是一次运行活动,是程序的...
  • Linux-进程

    2017-08-15 12:59:34
    从定义上来说的话,进程就是一个正在执行的程序、计算机中正在运行的程序的一个实体 其实进程可以看作是三部分组成的分别是: 一段可以执行的程序(运行中的程序) 程序所需要的相关数据(变量、工作空间、缓冲...
  • 今天整理的文章是给大家梳理Python的进程与线程的区别,没什么代码,希望大家能清楚知道他们的区别,什么情况用线程,什么情况用进程做到...线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分
  • 进程 线程 协程

    2017-11-29 09:30:00
    2.1什么是线程 ...一个线程线程ID,当前指令指针(pc),寄存器集合和堆栈组成 线程是进程实体,是被系统调度和分派的基本单位 线程自己不拥有系统资源,只有一点在运行上必不可缺少的资源 ...
  • 进程是正在执行的一个程序或命令,每个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源,它程序指令,和从文件、其它程序中读取的数据或系统用户的输入组成。操作系统会给进程分配一个 ID,...
  • 文章目录什么进程进程进程控制块进程状态两状态进程模型进程的创建和终止五状态模型被挂起的进程进程描述进程控制进程创建进程切换 现代操作系统最基础的任务...可以把进程当成由一组元素组成实体进程的连
  • 进程管理

    2008-02-10 17:33:00
    一、 进程的基本概念 进程既是 OS 中的一个重要概念,又是系统进行资源分配和独立运行的基本单位。...在学习时应清楚地理解为什么程序不能与其他程序并发执行,而 PCB、程序段和数据段三部分组成进程实体却能与其他
  • 进程实体由程序段,相关的数据段以及PCB三部分组成。那什么是PCB?PCB是Process Control Block的简称,即进程控制块。系统用PCB来描述进程的基本情况和活动过程。所谓创建进程,其实就是创建PCB,撤销进程,其实就是...
  • 操作系统(进程1)

    2017-06-06 09:47:17
    这里的进程实体(也称为进程映像)就是指程序段,相关的程序段,和PCB三部分组成的实体。而PCB是指为了使参与并发执行的每个程序(含数据)都能独立的运行,在操作系统中必须为其专门分配的一个数据结构。了解了...
  • 大话进程与线程

    2017-05-03 15:52:12
    进程:指在系统中能独立运行并作为资源分配的基本单位,它是一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。   进程的特征: 1.动态性:进程的实质是程序的一次执行过程,进程是动态产生,...
  • 进程描述和控制

    2013-03-03 12:40:10
          进程描述和控制   ...什么进程 ...1:一个正在执行中的程序。...2:一个正在计算机上执行的...也可以把进程视为一组元素组成实体进程的两个基本元素是程序代码和代码相关联的数据集。假设处理器开始...
  • 注意:平时我们说的某个进程由什么组成,实际上是指进程快照而不是进程,如果不做说明默认进程指的是进程快照。 进程控制块(PCB):是进程存在的唯一标识。当进程被创建时操作系统为其创建PCB,当进程结束时,会回收...
  • 进程由以下三部分组成: 1、程序:我们编写的程序用来描述进程要完成哪些功能以及如何完成。 2、数据集:数据集则是程序在执行过程中需要的资源,比如图片、音视频、文件等。 3、进程控制块:进程控制块是...
  • python多线程和多进程

    2018-09-12 23:43:00
    一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务 一个标准的线程线程ID,当前指令指针(PC),寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 137
精华内容 54
关键字:

一个进程实体由什么组成