程序,进程,与线程

程序(Program或Procedure,港台称之为程式)是一组用计算机语言编写的命令序列的集合。程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的「程序」就称之为进程。线程是系统分配处理器时间资源的基本单元。每启动一个程序,就至少启动了一个进程。 
   
  进程(Process,台湾译作行程)是计算机中已运行程序的实体。程序本身只是指令的集合,进程才是程序(那些指令)的真正运行。进程本身不会运行,是线程的容器。线程不能单独执行,必须组成进程。一个程序至少有一个进程,一个进程至少有一个线程。 
   
  线程(Thread,台湾称执行绪)是进程中某个单一顺序的控制流,指运行中的程序的调度单位。在单个程序中同时运行多个线程完成不同的工作,称为多线程。多线程主要是为了节约CPU时间。 
   
  在任务管理器中查看进程和线程 
  线程自己不拥有系统资源,只拥有一点在运行中必不可少的资源(线程的运行中需要使用计算机的内存资源和CPU),但它可与同属一个进程的其它线程共享进程所拥有的全部资源。通常在一个进程中可以包含若干个线程,它们可以利用进程所拥有的资源。一个线程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行。

时间: 2024-10-18 16:38:23

程序,进程,与线程的相关文章

转: 关于程序 进程 和 线程

我对于线程,进程的概念一直都是比较模糊,最近整理了一下.总结起来就是,线程是进程的一部分,进程是程序的一部分. 线程的引入:例如,有一个Web服务器要进程的方式并发地处理来自不同用户的网页访问请求的话,可以创建父进程和多个子进程的方式来 进行处理,但是创建一个进程要花费较大的系统开销和占用较多的资源.除外,这些不同的用户子进程在执行的时候涉及到进程上下文切换,上下文切换是一个复杂 的过程.所以,为了减少进程切换和创建的开销,提高执行效率和节省资源,人们在操作系统中引入了"线程(thread)&q

C# 获取进程或线程的相关信息

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Diagnostics; namespace ConsoleApp { class ProcessDo { /// <summary> /// 获取进程相关信息 /// </summary> public static void GetProcessInfomation() { Proc

程序,进程,线程(需补充)

1.程序,进程,线程 程序:程序时完成特定任务的一系列指令集合. 进程:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程:线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发

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

程序:一组指令的有效集合 进程:程序的执行就是进程.也可以把进程看成一个独立的程序,在内存中有其对应的代码空间和数据空间,一个进程所拥有的数据和代码只属于自己.进程是资源分配的基本单位,也是调度运行的基本单位. 线程:线程被人们认为是轻量级的进程,它是进程中单独运行的一路程序.换句话说,就是一个进程可以包含多个线程,并且至少有一个主线程,同时同一进程的线程共享该进程的代码和数据.于此同时,每一个线程又都有自己的堆栈,这些堆栈对于线程来说是私有的.线程是处理机调度的基本单位. 那为什么要引入线程呢

linux学习之进程,线程和程序

                                                                                  程序.进程和线程的概念 1:程序和进程的差别 进程的出现最初是在UNIX下,用于表示多用户,多任务的操作系统环境下,应用程序在内存环境中基本执行单元的概念.进程是UNIX操作系统环境最基本的概念.是系统资源分配的最小单位.UNIX操作系统下的用户管理和资源分配等工作几乎都是操作系统通过对应用程序进程的控制实现的! 当使用c c++ j

System、应用程序进程的Binder线程池和Handler消息循环

首先看一张Android系统启动流程图: 一个进程最重要的两项指标一个是启动了Binder线程池,也就是能够进程Binder进程间通信了.还有一个是启动了Handler消息循环,能够使用了消息循环机制. 1.那么systemserver进程是什么时候实现上面两个机制的呢?见代码: 启动了Binder线程池.是子线程池. public static final void zygoteInit(String[] argv) throws ZygoteInit.MethodAndArgsCaller

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

概念: 程序(program)只是一组指令的有序集合. 任务(task)是最抽象的,是一个一般性的术语,指由软件完成的一个活动.一个任务既可以是一个进程,也可以是一个线程.简而言之,它指的是一系列共同达到某一目的的操作.例如,读取数据并将数据放入内存中.这个任务可以作为一个进程来实现,也可以作为一个线程(或作为一个中断任务)来实现. 进程(process)常常被定义为程序的执行.可以把一个进程看成是一个独立的程序,在内存中有其完备的数据空间和代码空间.一个进程所拥有的数据和变量只属于它自己. 进

程序,进程,线程

   程序   进程  线程学习笔记   定义: 一 程序只是一组指令的有序集合. 二 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位; 三 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程; 一进程与线程区别与联系 (1) 划分尺度:线程更小,所以多线程程序并发性更高; (

【Linux】程序、进程和线程的区别

程序.进程和线程的区别 程序是一组指令及参数的集合,指令按照既定的逻辑控制计算机运行.进程则是运行着的程序,是操作系统执行的基本单位.线程则是为了节省资源而可以在同一个进程中共享资源的一个执行单位. ? 程序和进程的区别: ????C.C++.Java等语言编写的源程序经相应的编译器编译成可执行文件后,提交给计算机处理器运行.应用程序的运行状态称为进程.进程与应用程序的区别在于应用程序作为一个静态文件存储在计算机系统的硬盘等存储空间中,而进程则是处于动态条件下由操作系统维护的资源管理实体.可以从

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

定义: 一 程序只是一组指令的有序集合. 二 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位; 三 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程; 一 进程与线程区别与联系 (1) 划分尺度:线程更小,所以多线程程序并发性更高; (2) 资源分配&处理器调度:进程是资源分