进程和线程不同点

1.进程是程序的一次运行,是资源分配的基本单位;
2.线程是进程的实体,是CPU独立调度的基本单位;
3.在资源上,进程是拥有自己的资源的;而线程本身不拥有资源,但是它可以访问隶属进程的资源,和属于同一个进程的线程们共享资源。
4.在调度上,进程间的切换上下文开销很大;而线程之间的上下文切换很快,开销小。并且同一进程下的线程切换不会引起进程的切换,不同进程的线程切换是会引起进程切换的。
5.在系统开销上,进程切换开销大是因为进程的创建、销毁,系统会分配内存空间和IO设备等。线程切换开销小是因为只涉及一些寄存器的操作。
6.在通信上,进程通信借助IPC,线程通信直接读取同一进程的共享变量进行通信。
IPC(进程间通信):

(1) 管道(PIPE) -一个缓冲传输介质连接来通信
- 管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道。
- 只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程);
- 单独构成一种独立的文

本文深入探讨了进程与线程的区别,强调了进程作为资源分配单位,线程作为调度单位的角色。详细介绍了进程间通信(IPC)的各种机制,如管道、命名管道、信号量、消息队列、共享内存和Socket。此外,还讨论了进程调度算法,如多级反馈调度,以及同步方式,包括临界区、互斥和信号量的概念。
最低0.47元/天 解锁文章
444

被折叠的 条评论
为什么被折叠?



