进程与线程的区别

说要面试这个东西,提前做下总结,内容都是去各大博主那里拈来的。


一般系统下的进程与线程


定义方面:进程是具有独立功能的程序在某个数据集合上的一次运行过程;线程是进程中的一个执行路径。


角色方面:在支持线程机制的系统中,进程是系统资源分配和调度独立单位,线程是系统调度和分配的最小基本单位。线程也称轻量级进程。(没有线程的系统,进程就成了基本的了)


资源方面:进程拥有一定的系统资源,而线程只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的地址空间全部资源.


独立性方面:除去共享资源外,进程有自己独立的地址空间而线程不能独立执行,线程必须依赖于进程而存在。同一进程下的不同线程间的独立性远低于不同进程间的独立性。


开销方面:进程上下文切换需要切换页表等重量级资源,线程上下文切换只需要切换寄存器等轻量级数据线程执行切换开销小,但不利于资源的管理和保护;而进程正相反


数量方面;个程序至少有一个进程,一个进程至少有一个线程即主线程

 

逻辑角度来看,多线程的意义在于一个应用程序中,有多个执行部分可以同时执行。但操作系统并没有将多个线程看做多个独立的应用,来实现进程的调度和管理以及资源分配。多线程提高了程序的并发性,降低切换开销,提升系统的吞吐量和资源利用率。

 

Linux有点特殊哟!其线程和进程太相近了!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值