26考研 | 王道 | 计网 | 网络层 | 第三部分 | 不同网段之间通信
王道计网 | 网络层 | 第三部分 |...
26考研 | 王道 | 计网 | 网络层 | 第二部分| 同网段内通信
王道计网 | 网络层 | 第二部分| 同网段内通信 0.ARP协议 ARP请求和响应报文中各关键字段的差异,是掌握网络通信基础的关键。下面这个表格清晰地对比了它们在两种报文中的不同。 字段 ARP请求报文 ARP响应报文 操作类型 (Operation Code) 1 (表示请求) 2 (表示响应) 源MAC地址 (Sender MAC) 请求主机的MAC地址 被请求主机的MAC地址 目的MAC地址 (Target MAC) 全0 (00:00:00:00:00:00) 请求主机的MAC地址 源IP地址 (Sender IP) 请求主机的IP地址 被请求主机的IP地址 目的IP地址 (Target IP) 要解析的目标主机的IP地址 请求主机的IP地址 以太网目的地址 (帧头部) 广播地址 (FF:FF:FF:FF:FF:FF) 请求主机的MAC地址(单播) 深入理解ARP工作过程ARP(地址解析协议)的核心任务是根据IP地址查询对应的MAC地址...
26考研 | 王道 | 计网 | 网络层 | 第一部分 | IP相关
王道计网 | 网络层 | 第一部分 |...
26考研 | 王道 | HTTP和TCP的数据传输过程(易错点)
HTTP和TCP的数据传输过程(易错点) 特性 HTTP/1.0 HTTP/1.1 (默认) 连接模式 默认非持久连接。每个请求/响应对都需要建立和关闭一个独立的 TCP 连接。 默认持久连接。一个 TCP 连接可以处理多个请求。 性能影响 连接建立和关闭的“三次握手、四次挥手”开销大,严重影响性能,尤其是加载包含多个资源的网页时。 大幅减少延迟和开销。复用连接避免了反复建立连接的成本,是性能优化的基础。 明确关闭 如果需要保持连接,必须使用 Connection: keep-alive 头部。 如果需要关闭连接,必须使用 Connection: close 头部。 特性 HTTP/1.0 HTTP/1.1 默认连接方式 非持久连接。每个请求后连接关闭。 持久连接。连接默认保持打开以供重用。 流水线支持 不支持。必须收到上一个响应,才能发下一个请求。 在协议标准中支持流水线(RFC 2616定义)。允许在未收到响应时发送后续请求。 现实应用情况 无流水线。要模拟持久连接需用非标准头...
26考研 | 王道 | 数据结构 | 408数据结构算法题笔记
408数据结构算法题笔记1.顺序表1.快排部分 1.快排代码 2.快排的划分思想空间:O(1) 时间:O(n) 划分实战 其实就是把数组分成两半,那就直接找第n/2小的元素就好了 3.快排实战 2.归并排序归并排序的合并两个数组 2.链表 1.按位序查找 123456789//这样找中间结点更好记一点 如果是1 2 3 4 5,那么l就是3,如果是1 2 3 4 5 6,那l就是4l = head;r = head;//1.找中间节点while (r->next && r->next->next){ l = l->next; r = r->next->next;} 也可以用两个指针,让第一个指针先移动K步 先获得长度,然后长的减去短的,让长的先移动这个长度,然后一起往后移动 2.双指针...
26考研 | 王道 | 数据结构 | 卡特兰数在数据结构中的应用
卡特兰数在数据结构中的应用
26考研 | 计算机组成原理 | 关于五段式指令流水线译码阶段取操作数可以去主存中拿吗
关于五段式指令流水线译码阶段取操作数可以去主存中拿吗1.可以从主存拿吗答:在标准的五段流水线中,“译码/读寄存器”阶段的操作数来源特指从寄存器文件(Register File)中读取。 它不会从主存中取操作数。 下面是详细的解释: 译码阶段(ID)的主要任务 译码阶段通常完成以下两件核心工作: 指令译码: 解析指令的操作码,确定指令的类型(是加法、加载还是存储等)和所需的操作数。 读寄存器: 根据指令中指定的寄存器地址(例如 add R4, R5, R3中的 R5 和 R3),从寄存器文件中读出这两个寄存器的当前值。 所以,图片中表格将这一阶段标注为“译码/读寄存器”是非常准确的,明确了操作数的来源是寄存器。 操作数的不同来源 一条指令的操作数可以来自三个地方,对应不同的流水线阶段: 操作数来源 对应的流水线阶段 指令示例 解释 寄存器 译码阶段 add R1, R2, R3 操作数 R2 和 R3 的值在 ID 阶段从寄存器文件读出。 立即数 译码阶段 addi R1, R2, #10 操作数一个是寄存器...
26考研 | 计算机组成原理 | 单周期CPU和多周期CPU的总线结构的适用情况
单周期CPU和多周期CPU的总线结构的适用情况在一条指令的执行过程中,单周期CPU的每个控制信号保持不变,每个部件只能使用一次。多周期CPU的控制信号可能发生改变,同一个部件可以使用多次 关于这句话的具体解释 特性 单周期CPU 多周期CPU 指令执行方式 所有操作在一个长时钟周期内完成 指令被分解为多个阶段,每个阶段占用一个较短的时钟周期 控制信号 恒定不变:周期开始时生成,整个周期内保持稳定 动态变化:每个周期(阶段)根据当前步骤重新生成一组信号 部件使用 一次使用:每个功能部件(如ALU、存储器)在一个指令周期内通常只工作一次 多次复用:同一部件(如ALU)可在不同阶段被同一条或不同指令多次使用 指令间关系 串行执行:下一条指令必须等当前指令完全执行完毕后才开始 串行执行:下一条指令仍需等待当前指令的所有步骤完成后方可开始 使用什么总线结构 不能使用单总线结构,只能使用多总线或者专用数据通路结构 单、多、专用都可以 ...
26考研 | 计算机组成原理 | 计算机组成原理关于指令流水线数据冒险解决方案的困惑以及梳理
计算机组成原理关于指令流水线数据冒险解决方案的困惑以及梳理笔者是在做这道题的时候产生的困惑以及解决 附上答案 1.阻塞方式把I3指令的ID阶段阻塞到时钟6去执行。因为ID阶段是读寄存器的,必须要在I2的WB阶段结束之后,也就是时钟6,一共阻塞3个时钟 2.数据通路方式解决这个问题我的困惑: 假如A与B指令有数据冲突,数据通路的方式解决的话,那是不是只要在A执行阶段我把结果算出来之后,存到A指令执行阶段的锁存器,然后B指令的执行阶段就可以拿走直接用?还是说B指令的译码阶段取操作数这个操作要等到A指令的EX阶段执行完以后,然后数据通路把A指令的EX段锁存器的内容给到B指令,B指令才去进行EX阶段? 答案是在A指令的执行(EX)阶段结束后,结果被存入EX/MEM流水线锁存器。随后,在B指令的EX阶段开始时,转发逻辑可以直接从这个锁存器中取出数据供B指令使用。 简单来说就是:B指令的译码解决还是会拿到错误的值,但是数据通路会在B指令进去EX阶段之前把错误的值用正确的值给覆盖掉。而其实ID阶段拿到错误的值也没事,毕竟也没执行。 转发机制(Data...
操作系统 | 进程的内存映像
操作系统 | 进程的内存映像 不同于存放在硬盘上的可执行程序文件,当一个程序调入内存运行时,就构成了进程的内存映像。一个进程的内存映像一般有几个要素: 代码段:即程序的二进制代码,代码段是只读的,可以被多个进程共享。 数据段:即程序运行时加工处理的对象,包括全局变量和静态变量。 进程控制块(PCB):存放在系统区。操作系统通过PCB来控制和管理进程。 堆:用来存放动态分配的变量。通过调用malloc...














