计算机前置知识"/>
计算机前置知识
五大浏览器:
IE浏览器
微软旗下一款产品,1995年诞生,争夺市场,网景公司(navigator浏览器)占据市场百分90量,第一次浏览器大战最终ie取胜了,ie最新版本是ie11,在去年2022年6月微软宣布不再对ie进行技术支持了,ie淘汰了
拓展:网景公司,livescript 刚出来没什么名气,在浏览器进行表单验证的,网景公司当时和sun(太阳,java)公司合作。最终将livescript改成javascript,98年的时候被AOL(美国在线)给收购了,最终将javascript 捐给了ECMA机构,EMCA就对javascript进行了一系列的规范和标准,ECMASCRIPT
Javascript = js
ECMASCRIPT = es
Es是一种标准(说明书) js 就是一种实现(按照说明写代码)
safari浏览器
2003年苹果公司在苹果手机上开发的一款浏览器,利用苹果手机市场的原因希望能占据浏览器的市场
firfox(火狐浏览器)
网景公司的部分员工建立了Mozilla机构,04年这批人开发了这款浏览器,并且使用了navigator的内核
chrome(谷歌浏览器) 下载地址:/
08年google公司推出一款浏览,一开始利用safari内核的一款器,发布以来一直以简洁、快速、安全著称
Opera(欧朋浏览器)
Opera浏览器也是95年欧普拉软件公司(挪威)推出,后来这款浏览器是被奇虎360收购
Edge:
微软2015推出的一款浏览器,IE不在被维护了,Edge代替IE浏览器,内核使用的就是谷歌浏览器的一款内核
4大浏览器的内核:
浏览器内核的作用:
浏览器内核分为两块分别是渲染引擎和js引擎,对网页语法的绩解析工作,不同浏览器的内核它的解析工作是不一样的
Trident内核:IE内核
最初的时候使用在IE4上面,它修改了mosaic(马赛克)浏览器内核,产生的,直至用到了IE11
Blink内核 chromeOpera
欧普拉软件公司和谷歌联合开发的一款内核,13年的时候退出的
Gecko内核: 火狐浏览器
最早就是用在navigator浏览器上的一个内核,代码开源的
Webkit内核:safari
苹果公司自主研发的一款内核,代码开源的
Chromium内核: Edge
Google公司退出的内核之前是使用在Chromium浏览器上面(这款浏览器类似于chrome浏览的小白鼠)
360浏览器百度浏览器 QQ浏览器 搜狗浏览器 披了一层皮肤
重要:浏览器从输入URL(地址)按下回车键以后发生了什么?
DNS域名解析
我们可以理解成DNS服务器就是一张映射表,它是将对应域名解析成相关的IP地址
Ping 指令可以用来诊断与服务器之间连接是否正常
建立TCP(传输控制协议)连接
TCP(传输控制协议):可以理解为两台设备连接的一种规则
三次握手:
客户端发送一个带有SYN标志的数据包给服务器,服务器收到以后回回传一个带有SYN/ACK的标志的数据包给客户端,最后客户端再回传一个带有ACK标识的数据包给服务器,握手结束,连接成功
SYN表示 请求连接
ACK表示 确认连接
大白话理解:
1).client说:hello server,我是client我想要连你可以吗?
2).server说: 好的 你连我吧,我也想连你可以吗?
3).client说:我也同意了,那我们就可以传输数据了.
3.发送HTTP请求
HTTP:超文本传输协议,建立在tcp连接之上的
我们可以理解成客户端和服务器之间传输内容的一些规则
包含了很多请求相关的信息
4.服务器处理请求
服务器收到请求以后,根据相关参数或者说请求方式等请求信息来处理数据
解析用户请求,服务器知道了要从数据库调用哪一些数据或者资源,然后准备返回给客户端
5.返回响应结果
服务器将准备好的数据或者资源 返回给客户端可能包含了(文件资源,数据,http状态码)
拓展:
常见http状态码:
200:表示服务器响应成功,也就是找到了客户端请求的内容,并且返回给了客户端
301: 永久重定向,表示访问的www.baidu但是最终跳转到了 www.baidu这个地址
302:临时重定向,类似于301 只是它是临时性的
304:告诉客户端请求成功了,但是这个资源不是由服务器提供的,而是客户端本地缓存中的资源,节省传输开销,性能优化
403:表示访问服务器的资源权限不够或者说IP被封掉了
404:表示服务器上没有该资源,也可以理解为找不到这些资源
500:表示服务器有问题了,服务器关闭了,服务器代码出错了
6.关闭TCP连接
为了避免服务器与客户端双方资源占用和消耗,当双方没有数据继续传递任何一方都可发起关闭的请求
关闭连接 需要经过4次挥手
FIN:请求关闭
第一次挥手:client发送一个FIN标识的数据包给server 请求关闭
第二次挥手:server收到FIN后 发送一个ACK标识的数据包给client确认关闭
第三次挥手:server发送一个FIN标识的数据包给client 表示请求关闭
第四次挥手:client 收到 FIN以后 发送一个ACK标识的数据包给server确认关闭
大白话理解:
Client:server 我这边没有数据给你了我们之间关闭连接吧
Server:好的,那我看看我这边还有没有数据给你
Server:我这边也没数据给你了,那我和你之间也关闭吧
Client:好的那就关吧
浏览器显示页面 注意这个过程并不是在关闭连接以后才发生
假设有一个html接收到,会从上往下进行加载解析,并且在过程中进行渲染,如果在过程碰到一些需要请求的资源如图片、视频外部链接的css js等资源那么又会重新连接去请求,但是这一个过程是异步
渲染过程主要由浏览器内核来完成
Webkit举例 不同内核渲染方式稍有不同
内核大致分为两个引擎 渲染引擎和引擎
渲染引擎解析(解析可以理解为是浏览器不认识代码,就是将浏览器不认识的东西转换成浏览器能认识的东西)html文件,构建DOM tree(DOM树 我们可以理解一种树结构数据)
然后解析CSS文件构建CSSOM tree(渲染树 我们可以理解一种树结构数据)
结合DOM tree 和 CSSOM tree生render tree(渲染树)
进行layout(布局)处理阶段,就是将render tree 分配到屏幕上的坐标,只是分配了坐标并没有展示出来
绘制阶段,渲染引擎遍历循环render tree将每一个节点绘制到屏幕上,需要知道这个这个绘制过程是渐进式的
最终js引擎解析js相关代码和执行
拓展:如果在过程碰到一些需要请求的资源如图片、视频外部链接的css js等资源那么又会重新连接去请求,但是这一个过程是异步
总结:DNS服务解析域名 – 建立TCP连接– http请求 – 服务器处理请求 – 服务器返回请求 – 关闭TCP连接– 解析文件渲染页面
计算机一些内容
1946年冯.诺依曼提出计算概念
计算机应该由5大部分组成,分别是,运算器 存储器,控制器,输入设备和输出设备
计算内部采用二进制来保存数据
将编号的程序和原始数据事先存到存储器中,然后启动计算机以后自动开始执行
输入设备:鼠标 键盘 麦克风
输出设备:扬声器 显示器..
运算器:处理算术逻辑运算
存储器:内存和外存
控制器:计算机指挥中心,功能就是从内存中读取数据然后交给运算器进行运算
内存:
内存中最小的单位bit,内存中基本的管理单位是字节(byte)
1024byte= 1kb(千字节)
1024kb= 1mb(兆字节)
1024mb= 1gb (吉字节)
1024gb= 1tb (太字节)
十进制:满十进一
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1617 18 19 20 ..99 100
二进制:满二进一
0 1 10 11 100 101 110 111 1000 1001 1010
十六进制:满十六进一位
0 1 2 3 4 5 6 7 8 9 a b c d e f 10 11 1213 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 ..
10B二进制里面10
10D十进制里面10
10H十六进制里面的10
————————————————
版权声明:本文为CSDN博主「yujc666」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:
更多推荐
计算机前置知识
发布评论