如何准确区分进程、线程和协程三者间的具体差异?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2828个文字,预计阅读时间需要12分钟。
一、进程概述首先来理解一下操作系统的进程:操作系统对正在运行的程序进行抽象,将其视为进程(process)。进程就是正在执行的程序实例。
例如,运行一个web浏览器和一个文本编辑器,它们都是运行的进程。每个进程都是独立的,有自己的内存空间和运行状态。
有人可能会说:
一、进程先来了解一下操作系统的进程:
操作系统对正在运行程序的抽象,这个就是进程(process)。
比如运行一个 web 浏览器,一个 text 文本,都是运行的一个一个进程。
有的人说:进程是程序运行资源的集合。进程是系统资源分配的最小单位等等。
从静态的角度来说,进程确实是运行程序的各种资源集合。
如果你进一步思考,进程里的各种资源都有哪些呢?如下图所示:
(图1:进程资源)
内存管理相关
文件系统
调度相关
信号处理
内核栈
进程各种状态
进程运行时统计信息
进程标识
等等。
可以看出,进程中的资源是相当多的。
从 Linux 操作系统对进程的定义也可以看出。
本文共计2828个文字,预计阅读时间需要12分钟。
一、进程概述首先来理解一下操作系统的进程:操作系统对正在运行的程序进行抽象,将其视为进程(process)。进程就是正在执行的程序实例。
例如,运行一个web浏览器和一个文本编辑器,它们都是运行的进程。每个进程都是独立的,有自己的内存空间和运行状态。
有人可能会说:
一、进程先来了解一下操作系统的进程:
操作系统对正在运行程序的抽象,这个就是进程(process)。
比如运行一个 web 浏览器,一个 text 文本,都是运行的一个一个进程。
有的人说:进程是程序运行资源的集合。进程是系统资源分配的最小单位等等。
从静态的角度来说,进程确实是运行程序的各种资源集合。
如果你进一步思考,进程里的各种资源都有哪些呢?如下图所示:
(图1:进程资源)
内存管理相关
文件系统
调度相关
信号处理
内核栈
进程各种状态
进程运行时统计信息
进程标识
等等。
可以看出,进程中的资源是相当多的。
从 Linux 操作系统对进程的定义也可以看出。

