2

第11章 线程

线程和进程联系和区别

我们从调度、并发性、 系统开销、拥有资源等方面,来比较线程与进程

  • 1.调度

    在引入线程的操作系统中,则把线程作为调度和分派的基本单位。而把进程作为资源拥有的基本单位. 在同一进程中,线程的切换不会引起进程的切换.在 由一个进程中的线程切换到另一个进程中的线程时,将会引起进程的切换。

  • 2.并发性

    在引入线程的操作系统中,不仅进程之间可以并发执行,而且在一个进程中的多个线程之间,亦可并发执行,因而使操作系统具有更好的并发性,从而能更有效地使用系统资源和提高系统吞吐量。

  • 3.拥有资源
    进程是拥有资源的一个独立单位。一般地说,线程自己不拥有系统资源(也有一点必不可少的资源),但它可以访问其隶属进程的资源: 代码段、数据段、已打开的文件、I/O设备等. 

  • 4.系统开销
    由于在创建或撤消进程时,系统都要为之分配或回收资源,如内存空间、I/O设备等。在进行进程切换时,涉及到整个当前进程CPU环境的保存以及新被调度运行的进程的CPU环境的设置。而线程切换只须保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作。由于同一进程中的多个线程具有相同的地址空间,致使它们之间的同步和通信的实现,也变得比较容易。


shiyang6017
158 声望59 粉丝

引用和评论

0 条评论