线程与进程

2023/1/31 browser

# 并行处理

计算机中的并行处理就是同一时刻处理多个任务。使用并行处理能大大提升性能。

# 线程

线程是资源调度的最小单位。

线程是不能单独存在的,它是由进程来启动和管理的。线程共享进程中的数据,使用相同的地址空间。

# 进程

进程是资源分配的最小单位。一个进程就是一个程序的运行实例。

详细解释:启动一个程序时,操作系统会为该程序创建一块内存,用来存放代码、运行中的数据和一个执行任务的主线程。我们把这样的一个运行环境叫进程。

# 进程与线程的关系

  1. 进程中任意一个线程执行出错,都会导致程序的崩溃

  2. 线程之间共享进程间的数据

  3. 当一个进程关闭后,操作系统会回收进程占用的内存

  4. 进程之间的内容相互隔离

# 单进程浏览器

单进程浏览器是指浏览器所有的功能模块都运行在同一个进程里。单进程浏览器不稳定、不流畅、不安全。

# 多进程浏览器(以 Chrome 为例)

  • 浏览器进程。主要负责界面显示、用户交互、子进程管理,同时提供存储等功能。

  • 渲染进程。核心任务是将 HTML、CSS 和 JavaScript 转换为用户可以与之交互的网页。

  • GPU 进程。GPU 的使用初衷是为了实现 3D CSS 的效果,只是随后网页、Chrome 的 UI 界面都选择采用 GPU 来绘制,这使得 GPU 成为浏览器普遍的需求。

  • 网络进程。主要负责页面的网络资源加载。

  • 插件进程。主要负责插件的运行。

多进程浏览器有着更高的资源占用以及更复杂的体系结构。

    我记得
    赵雷