进程与线程

Posted FarmGuo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程与线程相关的知识,希望对你有一定的参考价值。

进程三个状态:就绪Ready,运行 Runing,阻塞 Suspend。就绪代表资源都已经准备好,只待CPU执行,阻塞表示需要获取资源导致当前无法继续执行而被挂起。
进程是资源分配的基本单位,而线程是CPU调度和执行的基本单位。
进程创建后会分配进程控制块(PCB)包含以下信息
1,进程描述信息:进程标示符(pid),用户标示符(uid)
2,进程控制和管理信息:进程状态,进程优先级
3,资源分配信息:内存地址空间、文件列表
4,CPU相关信息:寄存器的值,页表信息
通常PCB是以链表的方式进行管理,把具有相同状态的进程链在一起,组成各种队列。
进程的上下文切换不仅包含了虚拟内存、栈、堆、全局变量等用户空间的资源,还包含了内核堆栈、寄存器等内核空间的资源。
而同一个进程内的线程上下文切换则只需要切换线程的私有数据、寄存器等不共享的数据
同一个进程的线程共享进程的所有资源,代码段,数据段。

以上是关于进程与线程的主要内容,如果未能解决你的问题,请参考以下文章

JAVA线程与线程进程与进程间通信

线程与进程的区别

线程与进程的区别

线程与进程的区别

多任务-进程与线程的区别

进程与线程的联系与区别