程序、进程、线程之间的区别与联系

原创 2016年08月28日 14:43:21

三者之间的形象化理解:

程序:代码实现了功能,就是程序,是静态的;

进程:执行中的程序就是进程,是动态的;

线程:进程内的一个执行单元,也是进程内的可调度实体,可以并发执行提高了进程的效率。

进程和线程的关系:

(1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。
(2)资源分配给进程,同一进程的所有线程共享该进程的所有资源。
(3)处理机分给线程,即真正在处理机上运行的是线程。
(4)线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步。

线程与进程的区别:

(1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位
(2)并发性:不仅进程之间可以并发执行,同一个进程的多个线程之间也可并发执行
(3)拥有资源:进程是拥有资源的一个独立单位,线程不拥有系统资源,但可以访问隶属于进程的资源.

(4) 系统开销:在创建或撤消进程时,由于系统都要为之分配和回收资源,导致系统的开销明显大于创建或撤消线程时的开销。但是进程有独立的地址空间,一个进程崩溃后,在保护模式下不会对其它进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,一个线程死掉就等于整个进程死掉,所以多进程的程序要比多线程的程序健壮,但在进程切换时,耗费资源较大,效率要差一些 

程序与进程的区别:

       程序是指令的有序集合,其本身没有任何运行的含义,是一个静态的概念。而进程是程序在处理机上的一次执行过程,它是一个动态的概念。
  程序可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是永久的,进程是暂时的。
  进程更能真实地描述并发,而程序不能;进程是由程序和数据两部分组成的。
  进程具有创建其他进程的功能,而程序没有。
  同一程序同时运行于若干个数据集合上,它将属于若干个不同的进程。也就是说同一程序可以对应多个进程。

版权声明:本文为博主原创文章,未经博主允许不得转载。

程序、进程、线程的联系与区别

程序:一组指令的有效集合 进程:程序的执行就是进程。也可以把进程看成一个独立的程序,在内存中有其对应的代码空间和数据空间,一个进程所拥有的数据和代码只属于自己。进程是资源分配的基本单位,也是...
  • ivyvae
  • ivyvae
  • 2014年09月26日 22:38
  • 1498

进程 线程 程序的区别与联系

进程和程序区别和联系表现在以下方面:  1)程序只是一组指令的有序集合,它本身没有任何运行的含义,它只是一个静态的实体。而进程则不同,它是程序在某个数据集上的执行。 进程是一个动态的实体,它有自己的...
  • tonywgx
  • tonywgx
  • 2011年10月31日 13:53
  • 3843

程序、任务、进程和线程的联系与区别

概念:           程序(program)只是一组指令的有序集合。         任务(task)是最抽象的,是一个一般性的术语,指由软件完成的一个活动。一个任务既可以是一个进程...
  • xiaohouye
  • xiaohouye
  • 2016年07月01日 16:14
  • 2227

程序与进程的区别 和 联 系

 1. 进程是程序的一次运行活动,属于一种动态的概念。 程序是一组有序的静态指令,是一种静 态 的 概 念。 但 是, 进 程 离 开 了程 序 也 就 没 有 了 存 在 的 意 义。 因 此, 我...
  • fuqin163
  • fuqin163
  • 2007年03月30日 17:28
  • 12260

操作系统中作业、程序、进程、线程及管程的定义与联系

概念 作业 作业是指用户在一次解题或一个事务处理过程中要求计算机系统所做工作的集合。它包括程序,数据及其作业说明书。 程序 程序是为解决一个信息处理任务而预先编制的工作执行方案,是由一串CPU能够...
  • u010794180
  • u010794180
  • 2014年12月06日 11:03
  • 2704

进程与程序的区别和联系

1)进程是程序及其数据在计算机的一次运行活动,是一个运行过程,是一个动态的概念。进程的运行实体是程序,离开程序的进程没有存在的意义。而程序是一组有序的指令集合,是一种静态概念。 2)进程是程序的一次...
  • jxq0816
  • jxq0816
  • 2015年12月07日 00:27
  • 5428

进程和线程的定义、区别与联系

一、进程 进程:指在系统中能独立运行并作为资源分配的基本单位,它是由一组机器指令、数据和堆栈等组成的,是一个能独立运行的活动实体。     注意,进程一般有三个状态:就绪状态、执行状态和等待状态【...
  • yanxiaolx
  • yanxiaolx
  • 2016年06月26日 16:52
  • 15301

进程和线程关系及区别

1.定义 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立...
  • yaosiming2011
  • yaosiming2011
  • 2015年03月15日 21:06
  • 225481

进程,线程,程序的理解以及区别

1.什么是进程(Process)和线程(Thread)?有何区别?   线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)地址空间:进程内的一个执行单元;进程至...
  • lixin88
  • lixin88
  • 2012年11月25日 15:28
  • 2735

iOS线程和进程的区别和联系

线程和进程的区别主要在于它们是不同的操作系统资源管理方式。进程有独立的地址空间,一个进程崩溃后,在保护模式的影响下不会对其他进程产生影响,而线程只是一个进程中的不同执行路径。线程有自己的堆栈和局部变量...
  • KimmyKin
  • KimmyKin
  • 2016年07月30日 01:50
  • 409
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:程序、进程、线程之间的区别与联系
举报原因:
原因补充:

(最多只允许输入30个字)