实训两天,计网、计组、数据库个人总结
计网
IP地址分为IPv4/v6(网络地址)+MAC(物理地址)
静态地址:在本地server与外界通信时始终采用一个地址,这样在本地换网之后仍然能连上,缺点是对服务器要求比较高,很贵。
动态地址:废话,非静态地址。MAC是出厂时设置的没啥好说的。一般所说的IP地址(v4/v6)指的都是私网IP,即与路由器和内网通信的IP(即,小张)
公网IP:直接连接到互联网的设备(路由器)直接互相通信的IP(即,张先生)
有线通信(网线):快 插上就能登ssh,不需要远程命令和sha256等验证
IP地址=网络地址+主机地址
192.168.1.168=192.168.1.0+0.0.0.168
主机地址就是IP地址的最后一位,表示该网下本机的编号(张老二)
网络地址是由路由器的DHCP服务器分配的
子网掩码:筛选与本机同网段的机子,例如同一层但不同机房的机子在同一网段,而不同机房在不同网段,在一个机房无法访问另一个机房的ftp
子网掩码是由初次连接该网时,DHCP管理员编辑给机子的。同一网段下的机子共享同一子网掩码。
原理:255.255.255.0 & 192.168.1.5 = 192.168.1.0 把子网掩码的前导1的个数记住,IPv4常写成A.B.C.D/E,E即子网掩码的前缀长(1总要是一段前缀)
通过掩码算出的同一类型机子就在同一网段下,有互相通信的权力,在同时连了内网或者网线的情况下,一般只要输了账密就能通信,所以FJOI可以ssh来作弊()
广播:发信息给统一网段的机子,“我是谁谁谁,我的mac是多少,请问网关是谁”当轮到网关回答时会承认自己是网关,然后机子以后要通信都可以回去找网关
网关:即接线大爷,管理一段范围内的server的所有通信,一般就是路由器的IP。比如同一个wifi下,却不在同一个网段下的机子想要互相传文件,就需要扔文件到网关上来分享(例如LJ以前让交题到ftp上,但也是有权限的)要是同一网段的话直接传,不会过网关。
广播地址:比如子网掩码255.255.255.0,那网络地址192.168.0.0的广播地址就是192.168.0.255,就是能广播到的最大IP。
同时,网络地址和广播地址一小一大都要用于存储信息,所以不允许机子占用其IP,即很少有.0或.255结尾的,有的都是特殊的
DNS:域名映射服务。如果想直接通过182.61.200.7访问baidu,那就开DNS,然后ping一下baidu就行了
DHCP:管理并响应机子对路由器的请求,例如下发子网掩码和网络地址(大部分功能的路由器网关都是DHCP)
NAT:内网与公网IP的转换协议,即张先生<->小张
VPN:虚拟通道,远程加密连接,不让墙知道你是中国人
防火墙:在内网与外网之间的一个具有筛选清除拦截功能的网关
代理服务器:我连到DHCP,DHCP再连到代理,代理去youtube取数据回来给DHCP,DHCP再给我。(不开代理的话就只是我->DHCP->web->DHCP->我)所以代理只是代替DHCP跨过了防火墙。
VPN和代理是两种方式,VPN更全面更安全,但配置复杂,代理提供的保护较少,所以一般称代理为梯子,VPN为飞机。
端口:大型服务器的一个独立小功能通道,例如一个门户页面
公网通信:本机-路由器-路由器-服务器
本机直接ping 得到的可以是公网也可以是内网,但ping内网的时候如果不在同一网段下是ping不到的。其他时候如果没有防火墙一般都是能ping通的,除非ping公网的时候遇到了经典的“DNS解析错误”无法把公网识别为IP地址。不过很多时候公网为了防爆都会上墙度
路由器在互相通信的过程中,会截胡你的信息,解决它的方式就是TCP穿透
和本机通信,一般都是127.0.0.1或者静态IP
其他的以后再学
计组:
Arm:精简指令集,短小快速,低功耗,用于嵌入式(英伟达)
x86:复杂指令集,功能全面,用于PC等大型设备(Intel,AMD)
Armv8:所有运算都是寄存器互相倒腾,自己去搜;simd一个寄存器能存储四个int即128位
IEEE754:

locality:cpu自动优化连续访问,提前准备出下一个可能访问的位置
PGO优化:
if(x>100)
return a
return b
这样x>100之后先是return b加入缓存,之后才是跳转return a
这样当x>100次数过多时return b仍然被加入L1 cache,造成浪费
而PGO会检测这个问题,如果>100的概率过大,就直接return a
所以if(_builtin_expect(x>100,1))
return a
return b
就会让编译器认为x大概率大于100然后调整汇编指令顺序,起到和PGO一样的效果
程序执行时间 = 【指令数 × 每条指令的平均时钟周期数】 × 频率
指令数:指令集决定
时钟周期:CPU决定
频率:芯片决定
数据库:
环境java&maven&sql
用gsql并且多熟练一下vim
熟练ctrl+c/v,命令行有的时候换行有问题
然后美美clean,package
配置.oml的时候一定小心!写错一点就启动不了数据库
板子连上显示器,显示器就是板子本身(的图形化界面),装的东西都在板子里,登录host即可查看
vscode的ssh很烦,所以能直接用显示器的环境就直接用
启动任务都用root,切到别的用户不要cd,要su - openEuler,否则建文件容易建出需要root权限的文件
如果真建了,sudo chmod 777 ./文件 可以试试,但也不一定有用,最好删了重装

浙公网安备 33010602011771号