Browser
文章平均质量分 53
宏观视角下的浏览器6讲
浏览器中的页面循环系统6讲
Mme.Y
这个作者很懒,什么都没留下…
展开
-
05_浏览器页面循环系统
一. 线程模型 第一版——单线程 通过单线程处理安排好的任务 任务代码已经按照顺序写进线程里,线程按顺序执行这些任务 第二版——事件循环机制 线程处理过程中,接收并执行新任务 循环机制:线程语句后添加for 循环语句。线程循环执行 事件:执行过程中可以暂停等待用户输入 第三版——消息队列 线程处理其他线程发送过来的任务 消息队列:数据结构,存放要执行的任务,先进先出 任务类型:输入事件、微任务、文件读写、WebSocket、JS定时器等;JS执行、解析DOM、样式计算、布局计算、CS原创 2021-10-22 17:49:15 · 240 阅读 · 0 评论 -
04_浏览器页面渲染
一. 导航 用户发出URL请求到页面开始解析的过程 1. 用户输入 2. URL请求过程 通过IPC把URL请求发送到网络进程 网络进程发送网络请求,并接收响应数据(响应行、响应头、响应体) 网络进程解析响应头 3. 准备渲染进程 默认:一个页面一个渲染进程 4. 提交文档 文档:URL请求的响应体数据 二. 渲染流程 1. 构建DOM树 解析HTML成为浏览器可以理解的DOM HTML解析器解析HTML,输出树状结构的DOM 标签和内容均成为DOM树的结点 2. 样式计算 计算出原创 2021-10-17 17:01:13 · 76 阅读 · 0 评论 -
03_HTTP协议
HTTP 允许浏览器向服务器获取资源的协议,Web的基础 建立在TCP连接基础上,HTTP 的内容是通过 TCP 的传输数据阶段来实现的 HTTP工作开始前,浏览器需要TCP与服务器建立连接 HTTP请求流程 1. 构建请求 构建请求行信息,准备发起网络请求 2. 查找缓存 发生于真正发起网络请求之前 如果请求的资源已经在浏览器缓存中存有副本,就拦截请求,返回资源副本,结束请求 如果没有副本,则发送网络请求 浏览器缓存:在本地保存资源副本,以供下次请求时直接使用 缓存资源未过期,直接返回该资原创 2021-10-17 16:58:07 · 248 阅读 · 0 评论 -
02_TCP协议
互联网:理念和协议组成的架构 数据包:互联网中如果发送数据很大,数据就会被拆分为很多小数据包 IP 网络协议,底层协议 计算机地址为IP地址,IP头确保数据包送达正确主机 UDP 用户数据包协议 UDP通过端头号把数据包发给正确程序,传输速度快 问题: 数据包容易丢失 不能保证数据可靠性 TCP 传输控制协议,UDP升级版 可以解决UDP存在的两个问题 三个阶段: 建立连接:三次握手(发送三个数据包以确立连接的建立) 传输数据:数据包校验机制 断开连接:四次挥手(保证断开连接) .原创 2021-10-17 16:54:35 · 356 阅读 · 0 评论 -
01_浏览器(Chrome)架构
线程和进程 并行处理:计算机同一时刻处理多个任务,简化任务执行步骤,提升性能 进程 一个进程就是一个程序的运行实例 程序启动时,操作系统创建内存,存放代码、数据、文件和执行任务的线程。 整一个运行环境为进程。 线程 进程中的任务执行过程 线程 vs 进程 线程依赖于进程,进程使用多线程可以提升性能 一个线程的出错,会导致整个进程的奔溃 线程共享进程的数据 进程关闭,申请的内存全部被回收 进程与进程间相互不影响 浏览器进化史 单进程浏览器时代 浏览器所有功能模块都在同一个进程里运行 模块原创 2021-10-17 16:45:38 · 105 阅读 · 0 评论
分享