浏览器渲染原理-ali(待整理完)

200 阅读2分钟

  • 1.我们平常浏览的网页是应用、
  • 2.操作系统运行的时候有两个态:一个是内核态一个是用户态,打开文件或者播放声音,或者在显示屏上输出一个字符,其实都是调用操作系统内核里面的东西;如果我们计算一个1+2,实际上我们是跑在用户态上;操作系统是如何运行的呢?通过操作系统调用相关的操作系统提供给我们的api然后运行的,平常的网页是通过js去调用网页浏览器能提供的接口,再去进行渲染网页,例如打开网页听歌、看电影等一系列的操作;应用和操作系统的关系就像网页和浏览器之间的关系
  • 3.浏览器究竟是什么?用户访问互联网最重要的一个接口,可以把浏览器当做一个软件

navigator.userAgent(浏览器用户代理,可以输出浏览器内核,相关版本号)

判断是否是移动端(打开淘宝手机端,可以通过手机端切换机型,来获取手机操作系统是android还是iphone)

标识H5容器,方便调用H5容器特定的接口

  • 平常的时候做微信,要判断一下是微信调用的,我们可以通过一个简单的方法,用user-Agent去标识,这个东西是来源于微信的,我们发出来的是微信的界面,和网页的界面有些许不同,可能要带一些微信相关的js,平常做微信开发,同一个页面既可以放到网页里又可以放到微信里,这时候我们需要用一些用户代理,由微信的客户端发给微信的服务器端

内核(是操作系统的核心)

系统调用(就是我们通过用户态切换到内核态的时候,在编程里面叫trap,简单说就叫作系统调用,内核代码简洁高效,基本上没有bug)

调用操作系统所提供的服务(我们看一个网页都是调用jpu的显卡显示出来的,其实是网页调用浏览器,浏览器调用浏览器内核,浏览器内核有渲染的引擎,最后调用的还是系统调用,文件的调用,gpu的调用,声音的调用以及硬件的调用)

http是构建在tcp协议上的,我们建立的连接其实是tcp连接