浏览器是怎样工作的(一):基础知识 - 范文中心

浏览器是怎样工作的(一):基础知识

10/10

译注:

前两天看到一篇不错的英文文章,叫做 How browsers work,该文概要的介绍了浏览器从头到尾的工作机制,包括HTML等的解析,DOM树的生成,节点与CSS的渲染等等,对于想学习浏览器源码的同学来说,实在是很棒的一篇科普文章。尽管对于每部分,该文的描述并不足够深入,但综合来讲,即使没兴趣学浏览器源码,也还是有一些值的学习的思想在里面的,可以权当开拓下视野,有益无害。

于是,我想分节挑重点翻译一下与大家分享。以下为译文:

我们要讨论的浏览器

当今主流浏览器有五类: Internet Explorer, Firefox, Safari, Chrome 以及 Opera。 我会基于开源浏览器 Firefox, Chrome 与 Safari(部分开源)来举例说明。 按照 W3C 浏览器统计, 当今(2009年10月), Firefox, Safari 及 Chrome 的总占有率已接近 60%,这是非常可观的。

浏览器的主要功能

浏览器的主要功能是展示网页资源,也即请求服务器并将结果显示在浏览器窗口中。资源的格式一般是HTML,但也有PDF、图片等其它各种格式。资源的定位由URL来实现。更多细节请参考“网络”一节。

浏览器释与展现HTML文件的方式是参照HTML与CSS规范来的,这些规范由 W3C (World Wide Web Consortium) Web标准化组织来维护。 当前HTML版本是 4 (http://www.w3.org/TR/html401/),HTML5正在进行中。当前CSS版本为2 (http://www.w3.org/TR/CSS2/),同样,版本3进行中。

过去几年里,各版本浏览器有许多各自的扩展,这使网页作者很难写出兼容性好的内容。如今这一严重的兼容性问题已经开始好转,各种浏览器都开始兼容标准规范。

各浏览器的用户接口有很多相同的地方,下面是一些常用的用户接口:

用于输入URI的地址栏

前进后退按钮

书签选项

刷新停止按钮,用于控制页面加载

主页按钮

很奇怪的是,浏览器的用户接口并没有写进任何规范中,这种极大的相似性只是在多年的实践经验以及浏览器之间的相互借鉴中形成的。HTML5规范没有规定浏览器必须有哪些交互元素,但是列出了一些通用元素,比如地址栏, 状态栏和工具栏。 当然,特定浏览器有自己独有的特性,如Firefox的下载管理器。更多内容请参考用户接口一节。

浏览器的上层结构

浏览器的主要概念如下 (1.1):

用户接口 – 包括地址栏,前进后退,书签菜单等窗口上除了网页显示区域以外的部分。

浏览器引擎 – 查询与操作渲染引擎的接口。

渲染引擎 – 负责显示请求的内容。比如请求到HTML, 它会负责解析HTML 与 CSS 并将结果显示到窗口中。

网络 – 用于网络请求, 如HTTP请求。它包括平台无关的接口和各平台独立的实现。

UI后端 – 绘制基础元件,如组合框与窗口。它提供平台无关的接口,内部使用操作系统的相应实现。

JavaScript解释器。用于解析执行JavaScript代码。

数据存储。这是一个持久层。浏览器需要把所有数据存到硬盘上,如cookies。新的HTML规范 (HTML5) 规定了一个完整(虽然轻量级)的浏览器中的数据库:’web database’。

图1: 浏览器的主要概念

需要注意的是,与其它浏览器不同,chrome使用多个渲染引擎实例,每个Tab一个,每个Tab都是一个独立进程。

我会拿出一个章节来介绍每块内容。

组件间的通信

Firefox 与 Chrome 开发了一种特殊的通信架构,这会在一个特殊章节讨论。

本文作者:hfliu 转载请注明来自:携程设计委员会


相关内容

  • 软件市场调研与营销报告
    数学与计算机学院 实践调查报 告 ( 20 12 / 2013 学年 第 3 学期) 目 录 第1章 调研工作方案 1.1调研目的 1.2调研内容 1.3主要调查对象和范围 1.4调研方式 1.5调研人员 1.6调研时间 第2章 问卷分析 ...
  • 宝洁网申常见问题解答
    宝洁网申常见问题解答 1. 我需要登陆什么网址来进行网上申请宝洁公司的职位? 请浏览宝洁中国的网站 http://www.pg.com.cn , 注意申请前请认真阅读网上申请指南. 2. 我要怎样进行网上申请?宝洁公司网上申请的程序是怎么样 ...
  • 湖北省网上申报系统常见问题集
    湖北省网上办税系统常见问题及解答 在网上申报的使用中碰到任何问题,首先请确定您使用的浏览器为操作系统自带的Internet Explorer,并且版本为7.0以上(在浏览器的"帮助"菜单的"关于Internet ...
  • 高中信息技术必修知识点汇总
    主题1 信息的获取 高中信息技术必修知识点汇总 一.信息及其特征 1.信息的基本概念 "信息"一词通常是指数据.消息所包含的内容和意义.信息的表现形式有多种,如:图片.声音.动作.表情.文字等.当今世界的三大要素:物质. ...
  • 面向服务的战场态势感知与协同技术研究
    第2期2012 年4月 Journal of CAEIT Vol.7No.2Apr.2012 檵檵0 共用态势图(COP )简称态势图,是军事指挥部门了解战场态势的主要手段,是广泛的战场态势感知系统.服务和应用的一个关键部分,是服务于决策制 ...
  • 室内设计职业生涯规划书范文
    室内设计职业生涯规划书范文 2015-12-28 18 手机版 个人信息 姓名:CNrencai 性别:女 年龄:21 学校:大连某计算机专修学院 年级:06 专业:艺术设计 我的未来不是梦! 我一直认为"未来尽在掌握" ...
  • 云南省初中信息技术课程教学内容
    云南省初中信息技术课程教学内容 模块一 信息技术简介 指导意见 (1) 信息与信息社会. (2) 信息技术应用初步. (3) 信息技术发展趋势. (4) 计算机在信息社会中的地位和作用. (5) 计算机的基本结构和软件简介. 教学内容 1. ...
  • 初中信息技术八年级上册备课笔记
    义 务 教 育 实 验 教 科 书 信 息 技 术 八年级上 备 课 资 料 目 录 第一单元 网络与生活 第一课 我看网络 第二课 上网准备 第三课 我的E世界 第四课 因特网探源 第五课 因特网的未来 第二单元 网上交流 第六课 电子邮 ...
  • 人教版小学四年级信息技术下册教学计划
    小学四年级下册信息技术教学计划 一.情况分析 1.信息技术状况 信息技术装备的改善,促进了我校信息技术教学水平的提高,目前除低年级没有开设信息技术课外,中高年级已按要求开足开齐.大部分学生对计算机发展史.计算机 的基本组成.计算机的各部分设 ...