试从调度性 并发性 拥有资源及系统开销方面 对进程和线程进行比较。
-
正确答案:进程和线程之间在调度性、并发性、拥有资源及系统开销方面的比较如下: (1)调度性。在传统的操作系统中拥有资源的基本单位和独立调度、分派的基本单位等都是进程而在引入线程的OS中则把线程作为调度和分派的基本单位而把进程作为资源拥有的基本单位。 (2)并发性。在引入线程的OS中不仅进程间可以并发执行而且在一个进程的多个线程间也可以并发执行因而比传统的OS具有更好的并发性。 (3)拥有资源。在这两种OS中拥有资源的基本单位都是进程。线程除了一点——在运行中必不可少的资源(如线程控制块、程序计数器、一组寄存器值和堆栈)外本身基本不拥有系统资源但它可访问其隶属进程的资源。 (4)开销。由于创建或撤消进程时系统都要为之分配和回收资源如内存空间等进程切换时所要保存和设置的现场信息也要明显地多于线程因此OS在创建、撤消和切换进程时所付出的开销将显著地大于线程。另外由于隶属于同个进程的多个线程共享同一地址空间和打开文件从而使它之间的同步和通信的实现也变得更为容易。
进程和线程之间在调度性、并发性、拥有资源及系统开销方面的比较如下:(1)调度性。在传统的操作系统中,拥有资源的基本单位和独立调度、分派的基本单位等都是进程,而在引入线程的OS中,则把线程作为调度和分派的基本单位,而把进程作为资源拥有的基本单位。(2)并发性。在引入线程的OS中,不仅进程间可以并发执行,而且在一个进程的多个线程间,也可以并发执行,因而比传统的OS具有更好的并发性。(3)拥有资源。在这两种OS中,拥有资源的基本单位都是进程。线程除了一点——在运行中必不可少的资源(如线程控制块、程序计数器、一组寄存器值和堆栈)外,本身基本不拥有系统资源,但它可访问其隶属进程的资源。(4)开销。由于创建或撤消进程时,系统都要为之分配和回收资源,如内存空间等,进程切换时所要保存和设置的现场信息也要明显地多于线程,因此,OS在创建、撤消和切换进程时所付出的开销将显著地大于线程。另外,由于隶属于同个进程的多个线程共享同一地址空间和打开文件,从而使它之间的同步和通信的实现也变得更为容易。
