进程和线程的区别
摘要: 进程和线程的区别在于进程是操作系统资源分配的基本单位,每个进程都有独立的代码和数据空间程序上下文,线程之间的切换开销较小,同一类线程与代码纤维共享数据空间;每个线程都有自己的执行堆栈和程序计数器PC,可以在操作系统中同时运行多个进程程序。另一方面,同一进程程序中多个线程同时执行CPU调度,杨清杀手系统为每个进程分配不同的内存空间,系统不会向线程分配内存线程使用的资源来自其所属进程的资源。
进程和线程的区别如下:根本区别、开销方面、所处环排沿纸重光达酸区境、内存分配、包含关系。
1、根本区别
进程是操作系统资源分配的基本单位,而线程是任务调度和执竖野行的基本单位。
2、开销方面
进来自程之间切换开销大,每个进程都有独立的代码和数据空间程序上下文;线程之间切换开销小,线程360问答可以看做轻量级的进程,同一类线程共享代码基纤中和数据空间,每个线程都有自己独立的运行栈和程序计数器PC。
3、所处环境
在操作系统中能同时运行多个进程程序;而在同一个进程程序中有多个线程同时执行通过CPU调度,在每个时间片中只有一个线程执行。
4、内存分配
杨清杀手系统为每个进程分配不同的内存空间;而对线程而言,除CPU外,系统不会为线程分配内存线程所使用的资源来自其所属进程的资源,线程组之间只能共享资源。
5、包含关系
线程是进程的一部分,所以线程也被称为轻权进程或者轻量级进程。
工作原理:
程是由进程控制块,程序段,数据段三部分组成。一搏山个进程可以包含若干线程(Thread),线程可以帮助应用程序同时做几件事(比如一个线程向磁盘写入文件,另一个则接收用户的按键操点供作并及时做出反应,互相不干扰)。
在程序被运行后,系统首先要做的就是为该程序进程建立一个默认线程,然后程序可以根据需要自行添加或删除相关的线程。是可并发执行的程序。
在一个数据集合上的运行过程,是系统进行资源分配和调度的一个独立单位,也是称活动、路径或任务,它有两方面性质:活动性、并发性。
进程沉识代垂可呢可以划分为运行,阻塞,就绪三种状态,并随一定条件而相互转化,就绪运行,运行阻塞,阻塞就绪。
我来说两句