浏览器

HCX大约 2 分钟BrowserBrowser

浏览器

事件循环

前置知识

浏览器的功能相当丰富,涉及到了许多操作系统的知识,这里简单介绍一下

进程模型

  • 进程是指计算机中正在运行的一个程序的实例。每个进程都有自己的地址空间、内存、文件描述符等资源。进程间是相互独立的,它们不能直接访问彼此的内存。每个进程都由操作系统分配和管理,拥有自己的执行流程。

  • 线程是进程中的执行单元。一个进程可以包含多个线程,它们共享同一个进程的资源。线程共享进程的内存空间、文件和其他资源,因此多个线程可以同时访问和修改相同的数据。由于线程间共享资源,因此线程之间的通信和同步比进程间更加高效。

相关信息

一个进程至少有一个线程。在操作系统中,一个进程的执行至少包含一个主线程。主线程是进程的初始线程,它执行程序的主要逻辑。除了主线程外,进程还可以创建和管理其他辅助线程,这些线程可以并行执行不同的任务或处理不同的事件。

浏览器中的进程和线程

浏览器是一个多进程和多线程的应用程序,复杂程度接近操作系统

浏览器中的任务管理器
浏览器中的任务管理器
  • 浏览器中的进程可以大致分为一下几类

    1. 浏览器进程(Browser Process):

    2. 渲染进程(Renderer Process):

    3. GPU 进程(GPU Process):

    4. 插件进程(Plugin Process):

  • 线程则为

    1. 主渲染线程(Main Renderer Thread):

    2. 事件线程(Event Thread):

    3. 工作线程(Worker Thread):