浏览器的渲染原理

一、进程与线程

  进程:进程是cup资源分配的最小单位(是能拥有资源和独立运行的最小单元)

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

  线程:线程是cpu调度的最小单位,线程是不能单独存在的,线程是由进程来启动和管理的。

  二者区别

    1. 计算机资源独立分配到各个进程,进程之间互相独立,可以通信

    2.一个进程由多个线程组成,是包含关系

    3.同一进程下的各个线程之间共享程序的内存

            4.不同进程之间也可以通信,不过代价比较大

  为了提升浏览器的稳定性和安全性,浏览器采用了多进程模式。浏览器中打开一个网页就相当于起了一个新的进程(进程内会有自己的多线程)

二、浏览器中的进程

  1.浏览器有5个进程:浏览器主进程、渲染进程、网络进程、GPU进程、插件进程。

  2.其中渲染进程又有多个线程:GUI渲染线程、JS引擎线程(也成JS内核)、事件触发线程、定时器出发线程、异步http请求线程

三、从输入URL到浏览器显示页面发生了什么?

  • URL解析
    • 首先判断你输入的是合法URL还是一个带搜索的关键字,并且根据你输入的内容进行自动完成、字符编码等操作
  • DNS 域名解析
  • 建立TCP链接
  • 发送HTTP 请求
  • 响应HTTP 请求
  • 页面渲染
  • T CP四次握手
posted @ 2024-10-14 16:38  yangkangkang  阅读(4)  评论(0编辑  收藏  举报