浏览器WEB Browser



浏览器发展史

浏览器诞生与发展

浏览器的诞生

早期浏览器

Netscape

Internet Explorer 与浏览器战争

chrome的崛起

时代之泪

IE浏览器终成时代之泪,Microsoft Edge 成为Win11默认浏览器

那些同样重要的浏览器

Firefox

opera

Tor

"暗网"

other

UC

Trident + Webkit(Blink)

QQ浏览器

Trident普通模式 + Webkit极速模式

360

Trident兼容模式 + Blink极速模式

搜狗

Trident兼容模式 + Webkit高速模式

猎豹

Trident + Webkit(Blink)

遨游

Trident兼容模式 + Blink极速模式

百度

IE内核

2345

Trident兼容模式 + Blink极速模式

浏览器市场份额

百度统计

w3counter

statcounter

浏览器架构

计算机的核心

三层计算机体系结构

顶部是应用程序

中间是操作系统

底部是机器硬件

CPU

GPU

进程与线程

浏览器的进程/线程架构模型

浏览器进程划分

浏览器进程

渲染进程

插件进程

GPU进程

chrome多进程架构

优点

稳定性:防止一个页面奔溃影响整个浏览器

安全性与沙箱化

共享拷贝

架构变革

站点隔离

浏览器整体架构

用户界面

浏览器引擎

渲染引擎

网络

JavaScript 解释器

用户界面后端

数据存储

求同存异的浏览器架构

浏览器基本原理

常见的JS引擎

Chrome V8

JavaScriptCore

SpiderMonkey: Mozilla的JavaScript引擎,使用 C/C++ 编写

Rhino: Mozilla的开源 JavaScript引擎,使用Java编写

Nashorm: Oracle Java Development Kit(JDK) 8开始内置的JavaScript引擎,使用Java编写

ChakraCore : Microsoft的开源与JavaScript引擎

JerryScript: Samsung开源与JavaScript引擎,被IoT.js使用

Hermes: Facebook开源 JavaScript引擎,为React Native优化

QuickJS: 由FFmpeg作者Fabrice Bellard开发

浏览器与JavaScript

V8 执行一段 JavaScript 的流程

Chrome V8的事件机制

常见浏览器的渲染引擎和JS引擎

延伸阅读

浏览器的不同形态

WebView

Android

Android WebKit WebView基于WebKit

Chromium WebView 基于Chromium

IOS

UIWebView基于WebKit

WKWebView基于WebKit

Headless Browser

Electron

浏览器WEB Browser 常识的更多相关文章

  1. 对于一个网站,如何禁止直接从浏览器Web browser中访问js文件

    比如有一个网站,https://testsystem.infotest.com 在这个网站的内容文件目录下面,有一个scripts文件夹,该文件夹中有一个js文件,比如lukeTest.js文件 这样 ...

  2. 教你如何清除 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 的历史记录

    有些许强迫症的开发人员可能会因为 MyEclipse/Eclipse 中 Web Browser 和 Switch Workspace 冗余的历史记录而感到苦恼,下面的方法就可以有效的帮助解决你的痛点 ...

  3. atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结

    atitit.浏览器web gui操作类库 和 操作chrome浏览器的类库使用总结 1. 常见标准 1 1.1. 录制重放 1 1.2. 一个窗体一个proxy cookie 1 1.3. exec ...

  4. C#爬虫(02):Web browser控件CefSharp的使用

    一.CefSharp介绍 CEF 全称是Chromium Embedded Framework(Chromium嵌入式框架),是个基于Google Chromium项目的开源Web browser控件 ...

  5. 关于PB调用Microsoft Web Browser控件的一些问题

    Microsoft Web Browser控件是WINDOWS系统自带的控件,一般不需要单独安装,由于工作的需要,把使用中遇到的问题记录一下,以便查阅. 插入控件: 环境为PB12.0,insert- ...

  6. [转]Display PDF within web browser using MVC3

    本文转自:http://www.codeproject.com/Tips/697733/Display-PDF-within-web-browser-using-MVC Introduction I ...

  7. C#彻底解决Web Browser 跨域读取Iframes内容

    C#彻底解决Web Browser 跨域读取Iframes内容 用C# winform的控件web browser 读取网页内容,分析一下数据,做一些采集工作. 如果是同一个域名下面还是好办的,基本上 ...

  8. How To Open An URL In Android’s Web Browser

    How To Open An URL In Android’s Web Browser 以下核心代码片断,将展现使用“android.content.Intent” 打开一个指定的 URL. butt ...

  9. How to open a web site with the default web browser in a NEW window

    http://delphi.about.com/cs/adptips2004/a/bltip0504_4.htm When using ShellExecute (as explained in th ...

随机推荐

  1. 【NX二次开发】移动WCS坐标系

    说明:移动WCS坐标系 用法: #include <uf.h> #include <uf_csys.h> extern DllExport void ufusr(char *p ...

  2. Paxos 图解 (秒懂)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...

  3. 无规矩不成方圆,聊一聊 Spring Boot 中 RESTful 接口设计规范

    在设计接口时,有很多因素要考虑,如接口的业务定位,接口的安全性,接口的可扩展性.接口的稳定性.接口的跨域性.接口的协议规则.接口的路径规则.接口单一原则.接口过滤和接口组合等诸多因素,本篇文章将简要分 ...

  4. 使用阿里云服务器部署jupyter notebook远程访问

    安装annaconda 与jupyter notebook annaconda在已经自带了jupyter notebook.jupyter lab.ipython 等一系列工具,不需要再单独安装这些工 ...

  5. leetcode动态规划题目总结

    Hello everyone, I am a Chinese noob programmer. I have practiced questions on leetcode.com for 2 yea ...

  6. kubernetes ceph-csi分析

    概述 最近在做分布式存储ceph接入kubernetes,用的是csi这一套,在开发的过程中,自己也用有道云笔记做过一些ceph-csi相关的源码分析.知识总结之类的记录,刚好自己又萌生了发博的想法, ...

  7. AcWing 828. 模拟栈

    实现一个栈,栈初始为空,支持四种操作: (1) "push x" – 向栈顶插入一个数x: (2) "pop" – 从栈顶弹出一个数: (3) "em ...

  8. redis--hash的实现

    Redis数据结构---字典,哈希表,dict 或java中的map,数据使用key -> value的形式存储,整个redis数据库就是基于字典实现,api见hash REDIS的hash实现 ...

  9. linux 操作目录

    脚本 获取一个目录下各子目录中的文件个数 #!/bin/sh find /tmp/homework -maxdepth 1 -type d | while read dir; do count=$(f ...

  10. RabbitMQ入门教程 [转]

    1.引言 RabbitMQ--Rabbit Message Queue的简写,但不能仅仅理解其为消息队列,消息代理更合适.消息队列主要解决应用耦合,异步消息,流量削锋等问题.实现高性能,高可用,可伸缩 ...