20170925_线程和进程的区别
来源:互联网 发布:linux下安装jenkins 编辑:程序博客网 时间:2024/06/05 06:11
20170925_线程和进程的区别
从以下几方面进行阐述:
1、调度。
在传统操作系统中,拥有资源和被操作系统独立调度的基本单位都是进程。但是引入线程之后,线程成为操作系统独立调度的基本单位,而进程则仍是拥有系统资源的独立单位。
在同一进程中,线程的切换不会引起进程的切换。但是,不同进程中线程的切换势必会引起进程之间的切换。
2、拥有资源。
不论是传统的还是引入线程概念的操作系统,进程都是拥有系统资源的基本单位,线程不拥有资源(除了一点线程运行时所必须要的资源),但是线程共享其隶属进程的系统资源。
3、并发性。
在引入线程的操作系统中,不仅操作系统内的进程可以并发执行,而且同一进程内的线程也可以并发执行,从而可以使操作系统具有更好的并发性,大大提高了系统吞吐量。
4、系统开销。
创建和销毁进程时,系统都要为之分配或回收资源,如内存空间、IO设备等,因此操作系统所付出的开销远大于创建或撤销线程的开销。
类似的,在进行进程切换时,涉及当前执行进程CPU环境的保护以及新调度的进程CPU环境的设置,这是需要花时间的;而线程切换时只需要保存和设置少量寄存器内容,因此开销很小。
另外,由于同一进程内的多个线程共享进程的地址空间,因此这些线程之间的同步和通信都比较容易实现。
5、地址空间。
进程的地址空间是相互独立的,同一进程内的线程是共享进程的资源的,某一个进程内的线程对于其他进程来说是不可见的。
6、通信方面。
进程之间的通信需要特殊的IPC机制,需要借助操作系统,而进程内的线程之间的通信可以直接读写数据段(如全局变量等)来进行通信。
阅读全文
0 0
- 20170925_线程和进程的区别
- 20170906_线程和进程的区别
- 操作系统_并行和并发的区别 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- 进程和线程的区别
- matlab曲线拟合工具箱cftool
- Java虚拟机工作原理详解
- 带你了解唐山市路北区景泰翰林(翰林雅居、卫国路、学院路、长宁道)
- Qt实现TcpClient和TcpServer连接收发数据
- TP5 ajax提交表单
- 20170925_线程和进程的区别
- $CATALINA_PID was set but the specified file does not exist. Is Tomcat running? Stop aborted.
- 如何编辑eclipse注释模板
- Python浅拷贝和深拷贝
- 关于MySql语句
- 文章标题
- ubuntu安装shutter出现E:无法修正错误
- BZOJ 1854 [Scoi2010]游戏 二分图匹配
- 自旋锁spin_lock和raw_spin_lock