当前位置:首页 > 建站优化 > 正文内容

据报道称“浏览器内核有上千万行代码”,浏览器内核真的很复杂吗?

zhuangbi888.com2021-03-12 22:40建站优化425

确实非常的复杂!

首先可以明确的是,浏览器是少有的大型软件系统,其复杂性可以媲美我们每天使用的Windows系统。

微软甚至放弃自家的IE和edge内核,转而使用chrome内核,chrome优秀是一方面,更重要是开发浏览器内核太复杂,太烧钱。当然微软已经不是当年的微软了!

现在微软也在全力拥抱开源,甚至在win10里面支持内置wsl的Linux内核。如果说某一天我们使用的Windows系统,基于Linux内核开发,大家也不要太惊讶。

随着微软加入chrome阵营,chrome实力大增,会加速甩开其他浏览器!说不定某一天苹果也宣布使用chrome内核!

从浏览器的基本功能来看,其核心模块有:

网络请求

我们知道,目前web系统,都是BS模式的,也就是系统相关的页面,发布在服务器端的。

浏览器想要运行,第一件事情就是向服务器请求页面代码。

这就是网络请求,浏览器的最基本功能之一。

页面解析请求到页面之后,需要对页面进行解析,先认识页面,然后才能进行下一步工作。

页面渲染解析了页面之后,就可以对页面进行渲染了。渲染完成之后,我们就看到了web系统的界面了。

这些功能,似乎看起来没有那么复杂!那浏览器的几千万行代码,到底在实现了哪些复杂的功能呢?

模块代码量统计稍后补充。。。

此外,现代浏览器还具备以下特点:

跨平台

这意味着你不能简单调用操作系统的api来实现功能,必须考虑跨平台问题,还有可能要从头实现某些重要功能。

高性能

Google专门为Google chrome打造了高性能的V8引擎,来解释执行JS代码。如今结合nodeJS,V8引擎甚至已经在后端发力。

高标准

也就是各种web标准要支持到位,要做到上图一样,360度无死角,才能成为优秀的浏览器。

HTML

HTML用来描述网站页面的界面骨架,由一颗树形结构的HTML文档构成,也称为DOM树。

在HTML中,记录了构成页面的各种控件及其位置,参数等等基本结构。页面加载的时候,是最先下载HTML并解析的。

HTML最新版本是HTML5,其中加入了大量新特性,浏览器必须支持这些最新的HTML特性,才能算是一个合格的浏览器。

CSS

CSS则是负责页面的美化装修。什么前景色,背景色,圆角边框,边框颜色,边框大小等等。基本上你能想到的界面调整参数,CSS里面都应有尽有!这也正是浏览器的一个复杂模块。目前最新版本是CSS3。

JavaScript

界面骨架有了,也可以做的非常漂亮,尽善尽美了。那页面的逻辑怎么办?

没错,JavaScript就是负责前端页面的逻辑部分的。从最早期的前端输入校验,发展到如今的近乎万能,JavaScript经历了漫长的发展。

其中也经历了各种标准和版本,目前的主流版本是ES6。

浏览器为了支持最新的JavaScript,也需要开发巨量代码。

WebGL

WebGL是最近几年才火爆起来的一个特性,他将web的渲染性能大幅提升。

因为通过WebGL,我们可以直接调用显卡进行渲染和计算。

这使得在web端实现大型的三维引擎成为可能。比如Three.js,Cesium等等。

为了支持webgl,浏览器又必须进行大量开发工作。

Web Assembly

前面说到了JavaScript,使用JavaScript我们已经可以在web端实现大型三维引擎了。

尽管如此,还是不能满足我们目前对于web端的更为复杂的应用的效率要求。还是有很多人认为JavaScript的速度慢。

于是人们又起草了Web Assembly的标准。这是一种类似汇编语言的web标准,号称web端的汇编语言。

其目的在于解决JavaScript执行效率低的问题。同时可以使用C++等高级语言,开发Web Assembly模块。

如今已经有很多Web Assembly结合JavaScript的应用案例了。如Google在其Google earth的web版本中就大量使用该技术。

这也会导致浏览器花费大量代码来支持Web Assembly的各种功能。

总结

非常感谢您能够耐心的看到这里。不知道您有没有发现,我们在Windows里面做的很多事情,在浏览器里面,居然也能做了!这说明浏览器已经慢慢发展到和操作系统差不多的功能了,您说他能不复杂吗!

标签: js网站源码

相关文章

公司介绍包含哪几方面?

公司介绍包含哪几方面?

介绍一个公司一个企业应从以下几方面着手: 1、 公司概况:这里面可以包括注册时间,注册资本,公司性质,技术力量,规模,员工人数,员工素质等; 2、公司发展状况:公司的发展速度,有何成绩,有何荣誉称号等...

域名黑名单(手机ip被加入黑名单)

域名黑名单(手机ip被加入黑名单)

黑名单作用: 邮件 址添加 黑名单 再收 该 址发 信件 效防止垃圾广告邮件 设置 : 1 邮箱设置 - 反垃圾 - 黑名单 栏目 点击 设置邮件 址黑名单 2 输入完整...

郑州网站设计公司排行(专业做网站设计的公司)

郑州网站设计公司排行(专业做网站设计的公司)

NAS非常适合小型企业当成文件服务器和内部网站(不适合面向互联网访问网站)来使用,维护和设置非常方便非专业人员也可以轻松搞定。建议购买2块硬盘以上的NAS这样多硬盘可以作为相互镜像,可以确保其中一块硬...

企业现在有必要做网站吗(企业为什么要做网站 作用是什么)

企业现在有必要做网站吗(企业为什么要做网站 作用是什么)

当然有必要,恰恰是因为企业规模小则更应该做网站,中小企业、初创企业通常都没什么知名度,师出无名客户信心度不足,你试想一下你跟人家介绍你的公司后,人家回去上网搜索你的企业品牌都找不到一个官网是什么感受?...

查询医疗机构的网站(医疗机构授权委托书书写模板)

查询医疗机构的网站(医疗机构授权委托书书写模板)

阿里云设置二级域名管理控制台---〉左边菜单栏,选择‘云解析'---〉域名---〉添加解析A解析指向IP地址CNAME解析指向域名主机记录:如 开发者论坛...

如何做一个网站设计(网站设计怎么做链接)

如何做一个网站设计(网站设计怎么做链接)

网页设计相对带硬件知识的嵌入式编程和PC端网络编程的难度要小多了,一个简单的网页只需要学习html,css,js这三个即可。最后有C语言的基础。 我学习网页在2003年非典在家没事上网,想做一个网上在...

gtx970电脑配置的简单介绍

gtx970电脑配置的简单介绍

本篇文章给大家谈谈gtx970电脑配置,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 文章目录列表: 1、gtx970配什么e 2、gtx970加i7+4790能玩荒野大镖客2吗?...

如何做好淘客站?

如何做好淘客站?

我现在几乎没怎么去推广,因为我做的是淘宝客独立网站,虽然现在网站的流量也不高,但来我站的都是些有用的IP,所以每天都有单子的!每天我要做的工作,首先是打开阿里妈妈淘客,检查昨天的收入,接下来就是看网站...

评论列表

南宁网站优化
南宁网站优化
2021-03-12 22:41

后,就可以对页面进行渲染了。渲染完成之后,我们就看到了web系统的界面了。这些功能,似乎看起来没有那么复杂!那浏览器的几千万行代码,到底在实现了哪些复杂的功能呢?模块代码量统

注册im域名
注册im域名
2021-03-12 22:41

页面,然后才能进行下一步工作。页面渲染解析了页面之后,就可以对页面进行渲染了。渲染完成之后,我们就看到了web系统的界面了。这些功能,似乎看起来没有那么复杂!那浏览

大型网站模板
大型网站模板
2021-03-14 23:58

DOM树。在HTML中,记录了构成页面的各种控件及其位置,参数等等基本结构。页面加载的时候,是最先下载HTML并解析的。HTML最新版本是HTML5,其中加入了大量新特性,浏览器必须支持这些

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。