【操作系统】进程与线程的区别

                                            进程与线程的区别

进程与线程是两个比较容易混淆的概念,但实际上他们是两个不一样的东西。

 

一、各自包含什么?

进程是线程的容器,因此简单地来讲,一个进程内部包含一个或多个线程。


线程是进程的一个实体,包含程序计数器(指向当前指令)、寄存器(存储线程内的局部变量)和堆栈。

 

二、可独立运行吗?

进程是正在运行程序的一个实例,因此进程可以独立运行。


线程依托于进程,线程不可独立于进程而运行。

 

三、拥有系统资源吗?

进程是系统进行资源分配基本单位,所以拥有系统资源。


线程不拥有系统资源,或者说很少。

 

四、独立还是共享

各个进程有独立的地址空间,即进程间互独立。


处在同一个进程内的所有线程共享此进程内的所有资源,即同一进程内的线程资源共享。

 

五、创建与切换的开销比较

从狭义上来讲,进程是正在运行的程序的一个实例,启动一个程序即创建一个进程,开销是很大的。


线程是一种轻量级的进程,线程比进程小,基本上不拥有系统资源,因此创建线程的开销比创建进程小得多。

 

 

全部评论

相关推荐

07-24 19:01
门头沟学院 Java
后天笔试,又要开始做题了
Sairus:明天10:00笔试
投递京东等公司10个岗位
点赞 评论 收藏
分享
07-24 16:39
已编辑
门头沟学院 测试开发
点赞 评论 收藏
分享
自学java狠狠赚一...:骗你点star的,港卵公司,记得把star收回去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务