关于进程与线程
“ 进程是资源分配的最小单位,线程是CPU调度的最小单位 ” 一、进程(Process) 1、什么是进程 进程(Process) 是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。 在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。 程序是指令、数据及其组织形式的描述,进程是程序的实体。 二、线程 1、什么是线程 线程(thread) ,有时被称为轻量级进程(Lightweight Process,LWP), 是程序执行流的最小单元 。一个标准的线程由线程 ID、当前指令指针(PC)、寄存器集合和堆栈组成。 另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。 一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。 由于线程之间的相互制约,致使线程在运行中呈现出间断性。 2、线程的基本状态 线程有 就绪 、 阻塞 和 运行 三种基本状态: 就绪状态 是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机 运行状态 是指线程占有处理机正在运行 阻塞状态 是指线程在等待一个事件(如某个信号量),逻辑上不可执行