进程和线程的区别

来源:互联网 发布:ubuntu 查看内核版本 编辑:程序博客网 时间:2024/06/16 18:57

1)调度
传统的操作系统中,进程是拥有资源的基本单位和独立调度、分配的基本单位。在引入线程的操作系统中,线程是调度的基本单位,进程是资源的拥有的基本单位。
2)并发性
引入线程的操作系统中,不仅进程之间可以并发执行,一个进程中的多个线程也可以并发执行,使操作系统具有更好的并发性,更加有效利用提高系统资源的利用率。
3)拥有资源
传统的操作系统,还是引入线程的操作系统中,进程都可以拥有资源,是系统中拥有资源的基本单位。一般,线程不拥有系统资源,但可访问隶属进程的资源。一个进程的代码段、数据段及所拥有的系统资源,可供该进程中的所有线程访问。
4)系统开销
在创建或者撤销进程时,系统要为之创建和回收进程控制块,分配或回收资源,操作系统所付出的开销远大于线程创建或撤销的开销。类似地,进程切换时,涉及当前进程CPU环境地保存以及新调度运行进程地CPU环境地设置,线程地切换仅需要保存和设置少量寄存器地内容,进程地切换代价高于线程。由于一个进程中地多个线程具有相同的地址空间,在同步和通信方面,线程也比进程容易。

0 0
原创粉丝点击