- 博客(14)
- 收藏
- 关注
原创 操作起来 3.23
3.23格子量也要无量纲化计网(参考:小林coding)TCP断开连接 4次握手客户端主动断开连接,发送FIN标志位为1的TCP报文,进入fin_wait_1状态,服务器收到FIN报文,向客户端发送ACK报文,进入CLOSED_WAIT状态,客户端收到ACK报文,进入FIN_WAIT_2状态等待服务器处理完数据后,向客户端发送FIN报文,进入LAST_ACK状态客户端收到FIN报文,回一个ACK报文,进入TIME_WAIT状态服务器收到ACK报文,进入CLOSED状态,至此服务器断开连接
2022-03-23 22:31:31
656
原创 操作起来 3.22
3.22Leetcode子集class Solution {public: vector<vector<int>>ans; vector<int>path; void bt(vector<int>& nums, int index){ ans.push_back(path); for(int i = index; i < nums.size(); i++){
2022-03-22 22:02:07
167
原创 操作起来 3.21
3.21操作系统内存管理虚拟内存单片机没有操作系统,并且直接操纵内存操作系统是怎么做的呢?操作系统为每一个进程分配一块虚拟空间,并且能够将不同的虚拟空间和不同的物理内存映射起来(内存管理单元MMU)如何管理虚拟地址和内存地址间的关系内存分段虚拟地址:段选择因子 + 段内偏移量;段选择因子:段号+特权等标志位段表通过段号找到段内描述符(段基地址+段界限+特权级DPL)再结合段内偏移量就能找到物理内存地址即通过段表映射虚拟地址在内存分段机制下分为了4个段:栈、堆、数据段、代码段存在的问
2022-03-21 21:51:10
97
原创 操作起来 3.18
3.19操作系统为什么0.1 + 0.2 不等于 0.3也就是计算机只能近似的表达0.1、0.2,两个近似值相加是得不到准确值的,存在精度误差为什么负数用补码表示例如int类型, 第一位表示正负数 0- 正 1 - 负,其它31位表示数据因为不用补码的话加减之前得判断一次,负数+整数改为负数减正数也就是和正数相加统一十进制小数转化为二进制小数点前半部分(除二取余) + 小数点后半部分(乘二取整)8.625 - 1000.101按照此逻辑0.1就不能用计算机精确表达出来啦,只能表达近似值
2022-03-18 21:53:50
183
原创 操作起来 3.17
3.17计算机网络TCP基本认识头格式:序列号(32位):计算机生成的随机数作为初始值,通过SYN包传给接收端主机,每发一次自增一次该数据字节数的大小,解决网络包乱序问题确认应答号:指下一次期望收到的数据的序列号,收到这个代表之前的数据已被正常接收控制位:ACK:该位为1时,确认应答字段有效,除开最初建立连接时SYN包其他都为1RST: 该位为1时,表示TCP连接出现异常必须强制断开连接SYN:该位为1时,表示希望建立连接,并在序列号字段进行初始值的设定FIN:该位为1时, 表示今
2022-03-17 21:32:37
477
原创 操作起来 3.16
3.16计网http2缺点1 队头堵塞多个请求在一个tcp里,当tcp丢包时,整个tco需要重传,阻塞tcp中所有请求基于TCP连接,若是TCP中有数据遗失,2 tcp和tls握手耗时三个RTT时延3 网络迁移时需要重新连接TCP tcp由四元组确定,源IP、源端口……TCP需要有源IP,目的ip、源地址,目的地址,如果ip发生改变,需要重传,例如从移动信号变为wifiQuic协议的特点quic具有类似tcp的功能,能保证udp连接的可靠性无队头阻塞同一连接上并发实现多个流,因
2022-03-16 21:59:01
411
原创 operate mow 3.15
3.15操作系统CPU伪共享多个线程读写同一个cache line的不同变量时,cache line失效的情况eg:线程A读取数据a,线程B读取数据b而恰巧a b在同一个cache line中,A读取的时候将cache line标记为独享状态,B读取的时候标记为共享状态,A修改的时候将B中标记为失效状态,A中为修改状态,B准备修改时发现A是修改状态,将其写入内存,然后再从内存中读取b,并标记为修改状态。可以看出B有一次无效的cache line读取解决方法:避免热点数据都在同一个cache li
2022-03-15 22:38:51
393
原创 操作起来 day5
3.14计网HTTPS如何优化?分析性能消耗TLS握手环节对称密钥生成;数字证书;需要生成椭圆曲线密钥握手后对称加密报文传输硬件优化https属于计算密集型,cpu工作,而不是类似I/O密集型的网卡、硬盘工作。选择好的cpu软件优化软件升级协议优化密钥交换算法优化选择ECDHE优化,强于RSA,能够抢跑,也具备向前安全性,椭圆曲线选好的TLS优化1.2->1.3,由2个RTT减少为一个,客户端在say hello时带上要交换的密钥,并且支持的密码套件列表也得到了瘦身证书
2022-03-14 22:41:37
309
原创 caozuoqilai day4
3.13回溯的题可以先把二叉树画出来,能帮助思考!!!Leetcode组合总和Ⅲclass Solution {public: vector<vector<int>>ans; vector<int>path; void backtracing(int k, int n, int index){ if(path.size() == k && n == 0){ ans.push_back
2022-03-13 21:53:43
2237
原创 操作起来 day3
3.12计网非对称加密:公钥加私钥,通信前建立联系对称加密:通信过程中使用同一密钥(会话密钥?)对称加密密钥不能泄露,思路:密钥交换算法:采用非对称加密算法来保护对称加密密钥RSARSA(服务器公钥)可加密pre-master,即客户端产生的第二个随机数的思路就是服务器将公钥随着证书发给客户端,客户端用公钥加密然后发给服务器,服务器用私钥将信息解密得到密钥,双方再用密钥进行对称加密的信息传输密码套件格式:密钥交换算法+签名算法+对称加密算法+摘要算法缺陷:不支持前向保密,如果服务器私钥
2022-03-12 21:48:08
531
原创 操作起来 day2
文章目录3.11HTTPget与posthttp优缺点http1.1长连接管道网络传输队头堵塞HTTPShttp与https的区别HTTPS的策略混合加密非对称加密对称加密摘要算法数字证书HTTPS如何建立连接,期间交互了什么?SSL/TLS协议基本流程http1.1的性能瓶颈HTTP21 头部压缩2 二进制格式3 数据流4 多路复用5 服务器推送HTTP2的缺陷HTTP3QUICTLS1.3+QPCK三次QUIC握手leetcode[ 删除链表的倒数第 N 个结点]数数递归双指针计算机系统硬件结构内存CP
2022-03-10 21:50:44
2670
原创 操作起来 day1
文章目录计算机网络综述传输层:为应用层提供网络支持网络层数据链路层物理层HTTPHTTP基本概念五大类状态码http常见字段leetcode分发饼干使用最小花费爬楼梯不同路径摆动序列 *C++为什么使用智能指针:分类C++中内存分配情况形参与实参形参和实参的区别和联系C++中的指针参数传递和引用参数传递计算机网络综述TCP/IP模型:应用层(用户态)、传输层(内核态)、网络层、数据链路层、物理层传输层:为应用层提供网络支持每个应用对应的端口号不同,例如80端口通常是Web服务器用,22端口是登录
2022-03-09 20:37:40
971
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人