当前位置: 首页 > news >正文

是德科技 | PCIe 7.0 互连— PCIe的尽头会是光吗?

伴随大语言模型和相关训练系统迅猛增长、对非结构化数据处理的需求急剧上升,市场对算力的需求也是呈指数级增加。PCIe作为计算机和服务器中使用广泛的高速数据传输技术发展迅猛,今年4月份PCI-SIG已经批准 Draft 0.5版基础规范,目前0.7版本基础规范正在审核中,预计2025年敲定最终发行版本。PCIe 7.0 规范包括以下功能目标:

  • 通过 x16 配置提供 128 GT/s 原始比特率和高达 512 GB/s 的双向比特率。
  • 利用 PAM4信令, 以实现更高效的信号传输和更高的数据吞吐量。
  • 关注通道参数和覆盖面, 以优化数据传输的质量和距离。
  • 持续实现低时延和高可靠性的目标。
  • 提高电源效率。
  • 保持与所有前几代 PCIe 技术的向后兼容性。

PART. 01

传输技术的挑战

PCIe技术历经Gen1-Gen6,已经发展到单 Lane 128G的传输速率,超高速的传输速率带来了巨大挑战,协会不得不加入越来越多、越来越复杂的辅助机制,控制信号和数据完整性。接下来探讨未来PCIe 7.0 光传输技术的必要性及其挑战。

1

计算资源限制

面向超大集群、超轻边缘的两极分化的数据中心新场景,未来计算将突破冯诺依曼架构瓶颈,计算、存储和通信等模块通过统一总线对等互联,而PCIe作为数据中心服务器间互联的主力,承担着高速数据传输的重任。数据中心中的计算密集型任务,对内存带宽和利用率提出了更高要求。当前,大部分数据中心仍依赖本地内存,这不仅限制了数据处理的速度,还导致内存资源的利用效率低下。光传输方案则可以实现计算资源实现分散化,通过使处理单元能够访问更多分布在不同服务器单元或机架中的内存单元(跨服务器,跨机架访问),进而释放高度本地化且经常未使用的本地内存,使数据中心能够更高效地配置资源。

2

电信号传输距离受限

大语言模型的快速迭代离不开海量GPU集群的强劲支持。目前而言,这个海量已经来到了千卡万卡级别,集群之间的互连通常是基于GPU上原生的PCIe接口。就PCIe 技术而言,PCIe 1.0时,铜缆传输距离为10米,而发展到PCIe 5.0时,这一距离缩短至1-2米;当速率进一步提高到64 GT/s和128 GT/s,也即PCIe 6.0和未来的PCIe 7.0,铜缆传输距离将进一步缩短至几十厘米,几乎无法通过PCIe标准的铜缆实现机架间数十米的传输要求。再加上PCIe技术需考虑到重定时器的使用,其技术复杂、昂贵又耗电。且随着PCIe技术升级,传输距离缩短,所需要的retimer的数量也会越来越多,还会引入更多的功耗和时延。而光连接通过光纤传输信号,可以在极高带宽下保持信号的完整性和稳定性。不仅可以显著提升数据传输速度,还能降低数据传输的延迟。

3

成本衡量

带宽的提升将致使链路中retimer数量上升,在相同的传输距离下,如果采用光传输技术,所需的retimer和SCU(信号调节单元)会更少。此外,光组件的设计制造工艺较为成熟,成本也会变得更加可控,加上光纤所占空间明显小于铜缆,也有机会提升数据中心的整体密度,实现系统成本的降低。

另一方面,单 Lane 128G的传输速率将直接对PCIe 布线层面发起挑战。在Gen5/Gen6布线标准中提供了使用铜电缆在系统内部和系统之间传输 PCIe 的选项。铜电缆比 PCB 走线具有更少的信号损失,能克服高频通信的直接缺点,技术的升级将使得PCIe 7.0采用较粗的铜缆来克服高频通信,相较于前一代技术势必会带来成本的增加。PCIe 7.0技术升级也会对相应的服务器PCB工艺带来挑战,随着信号速率的飙升,PCB产品层数增加,BGA间距缩小,板厚显著增加,厚径比提升明显。这些变化也将导致材料成本和加工工艺难度的大幅增加。

如下图所示,PCIe 7.0 Rev 0.5版本定义的理论损耗和分配,在7.0的奈奎斯特频率点(32GHz),Pad到Pad的损耗要求为-36dB,与6.0和5.0相比,在相同频点(16GHz)的损耗大大收紧。

PART. 02

光传输技术的可实现性

PCI-SIG于去年8月宣布组建PCIe光学工作组,并计划采用多种技术来支持 PCIe,包括可插拔光收发器、板载光学器件、共封装光学器件和光学 I/O。而我们也在今年看到了不同产业链的厂商在开展基于PCIe的光学产品研究,较为实际的例子是某服务器厂商基于PCIe Gen5的光互连方案将信号的传输距离从1.4米扩展到20米。该方案成功体现了光传输的优越性。

然而,短期内实现光传输技术的过渡却是较为困难,最初PCIe的接口并没有考虑过光传输的可能性,这就意味着现有的PCIe技术的架构几乎是基于电信号传输设计。首先我们需要考虑光传输与电气层兼容问题,其次是与PCIe 协议层的适配性,再者是如何通过光纤传输PCIe 信号以及基于光纤的PCIe 外形标准如何制定 、FEC标准如何制定等等问题,小编相信伴随协会的技术完善以及越来越多厂商的加入,我们将能看到更清晰的基于PCIe光传输技术应用的前景。

PART. 03

是德科技PCIe 7.0测试解决方案

在年初的展会上是德科技也与各厂商联合展出了基于Gen7的测试方案预研。下面,我们就一起来看看Gen7基于光电技术测试方案详情。

1

传统电气层解决方案

是德科技联合 ALPHAWAVE SEMI于2024年1月30日-2月1日举办的DesignCon 2024展会上联合展示了128G Gen7 收发端解决方案。

该解决方案由PCI-SIG协会主席Rick Eads演示,方案主要由 UXR系列实时示波器及高性能误码仪M8050A组成。

2

光传输技术解决方案初探究

是德科技于2024年3月24-28日举办的OFC2024展会上展示了低功耗 PCIe 7.0 光互连技术,支持新兴的大型语言模型对更高效信号传输的需求。

该解决方案包括M8050A 高性能误码仪(120G baud)、DCA-M N1092A(光通道)、N7736C光开关和800G DR8 LPO产品。

内容来源:是德科技

相关文章:

是德科技 | PCIe 7.0 互连— PCIe的尽头会是光吗?

伴随大语言模型和相关训练系统迅猛增长、对非结构化数据处理的需求急剧上升,市场对算力的需求也是呈指数级增加。PCIe作为计算机和服务器中使用广泛的高速数据传输技术发展迅猛,今年4月份PCI-SIG已经批准 Draft 0.5版基础规范,目前0.7版本基础…...

Aitken 逐次线性插值

Aitken 逐次线性插值 用 Lagrange 插值多项式 L n ( x ) L_n(x) Ln​(x)计算函数近似值时,如需增加插值节点,那么原来算出的数据均不能利用,必须重新计算。为克服这个缺点,可用逐次线性插值方法求得高次插值。 令 I i 1 , i 2…...

Orange 开源项目介绍

Orange 开源项目 项目兼容单体架构与微服务架构两种模式,集成了包括部门管理、用户管理、菜单配置、角色分配、字典维护以及日志记录在内的多种系统管理功能。 项目体验 Orange 官网: http://hengzq.cn在线体验: http://tiny.hengzq.cn项目文档: http://hengzq.cn/…...

【高级架构师】多线程和高并发编程(三):锁(下)深入ReentrantReadWriteLock

文章目录 4、深入ReentrantReadWriteLock4.1 为什么要出现读写锁4.2 读写锁的实现原理4.3 写锁分析4.3.1 写锁加锁流程概述4.3.2 写锁加锁源码分析4.3.3 写锁释放锁流程概述&释放锁源码 4.4 读锁分析4.4.1 读锁加锁流程概述4.4.1.1 基础读锁流程4.4.1.2 读锁重入流程4.4.1.…...

如何在Node.js中使用中间件处理请求

Node.js作为一种基于事件驱动、非阻塞I/O模型的运行环境,广泛用于构建高性能的Web应用。在Node.js中,处理中间件是处理HTTP请求和响应的一个常见方式,特别是在使用Express框架时,中间件扮演着至关重要的角色。本文将介绍如何在Nod…...

Kotlin 2.1.0 入门教程(十三)异常、Nothing

创建自定义异常 可以通过创建继承内置 Exception 类来定义自定义异常。这允许你创建更符合应用程序需求的特定错误类型。 要创建一个自定义异常,可以定义一个继承 Exception 的类: class MyException : Exception("My message")在这个例子中…...

Unity 打造游戏资源加密解密系统详解

在游戏开发中,保护游戏资源不被轻易破解和盗用至关重要。本文将详细介绍如何在 Unity 中打造一个游戏资源加密解密系统,并提供技术详解和代码实现。 一、加密方案选择 1.1 对称加密 优点: 加密解密速度快,适合加密大量数据。 缺点: 密钥管…...

HarmonyOS Next 方舟字节码文件格式介绍

在开发中,可读的编程语言要编译成二进制的字节码格式才能被机器识别。在HarmonyOS Next开发中,arkts会编译成方舟字节码。方舟字节码长什么样呢?我们以一个demo编译出的abc文件: 二进制就是长这样,怎么去理解呢&…...

二层、三层小总结

一、网络隔离 1、物理隔离。搭建两套完全独立的网络,这也是最土豪最安全的做法。 2、二层隔离。使用Vlan隔离,使用不同Vlan或者Pvlan等。 3、三层隔离。路由隔离。 4、设备特性隔离。比如端口隔离swichport protected,或者ACL等。 5、安全…...

Window系统通过Docker本地安装ollama和deepseek

在 Windows 系统上安装 Ollama 和 DeepSeek 的步骤如下: 安装 Ollama 安装 WSL(Windows Subsystem for Linux): 如果还没有安装 过WSL的(安装过的你直接跳过就行了),可以按照以下步骤进行安装&…...

云原生后端|实践?

云原生(Cloud Native)是一种构建和运行应用程序的方法,它充分利用云计算的优势,包括弹性、可扩展性、高可用性和自动化运维。云原生后端开发通常涉及微服务架构、容器化、持续集成/持续部署(CI/CD)、服务网…...

1.1 Spring生态全景解读

1.1 Spring生态全景解读 1.1.1 Spring Framework发展历程与技术演进(深度解析版) 技术演进路线图与里程碑事件: 2003.10 - Spring 1.0 发布→ 核心特性:XML Bean配置、AOP基础支持→ 企业痛点:解决EJB复杂性问题&am…...

跨境商家系统搭建||反向海淘系统的搭建

反向海淘系统的搭建主要涉及以下几个方面的工作: 一、需求分析 在搭建反向海淘系统之前,首先需要进行需求分析。这包括明确系统的目标用户群体,了解他们的购物习惯、需求和期望。同时,还需要分析市场上的竞争对手,了…...

LeetCode数学相关算法题(1)【C语言版】

2520. 统计能整除数字的位数 给你一个整数 num ,返回 num 中能整除 num 的数位的数目。 如果满足 nums % val 0 ,则认为整数 val 可以整除 nums 。 示例 1: 输入:num 7 输出:1 解释:7 被自己整除&…...

云消息队列 ApsaraMQ Serverless 演进:高弹性低成本、更稳定更安全、智能化免运维

如今,消息队列已成为分布式架构中不可或缺的关键服务,为电商、物联网、游戏和教育等行业,提供了异步解耦、集成、高性能和高可靠的核心价值。 过去一年,我们发布了云消息队列 ApsaraMQ 全系列产品 Serverless 化,面向…...

github - 使用

注册账户以及创建仓库 要想使用github第一步当然是注册github账号了, github官网地址:https://github.com/。 之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。 Git…...

cmos晶体管

CMOS晶体管 一、PMOS和NMOS介绍 PN结: P-type和N-type组合在一起,变成一个PN结(二极管)。在P端给高电压,N端给低电压时,可以导通。否则不导通。 NMOS:有四个端口:gate、source、…...

pip3命令全解析:Python3包管理工具的详细使用指南

pip3命令全解析:Python3包管理工具的详细使用指南 一、基本使用二、升级和更新三、其他常用命令四、换源操作五、注意事项六、帮助信息pip3命令使用说明 pip3 是 Python 3 的包管理工具,用于安装、升级和卸载 Python 3 的包。以下是 pip3 的常用命令及详细说明: 一、基本使…...

统计 product 表中 detail 字段包含 xxx 的产品数量

您可以使用以下 SQL 查询语句来统计 product 表中 detail 字段包含 oss.kxlist.com 的产品数量: SELECT COUNT(*) FROM product WHERE INSTR(detail, oss.kxlist.com) > 0;mysql> SELECT COUNT(*)-> FROM product-> WHERE INSTR(detail, oss.kxlist.co…...

Kafka 集群原来是使用ZK管理,现在新版本是怎么管理的?

目录 基于 ZooKeeper 的管理模式 基于 KRaft 的管理模式 迁移到 KRaft 模式的优势 迁移步骤 Kafka 早期依赖 ZooKeeper(ZK)进行元数据管理、集群协调等工作,但在新版本(Kafka 2.8.0 及之后)引入了 KRaft 模式来替代 ZooKeeper 进行管理。下面详细介绍这两种管理模式以…...

【Java并发编程之什么是指令重排序?如何避免指令重排序?】

Java并发编程之什么是指令重排序? 1.1 指令重排序的原因1.2 指令重排序的示例1.3 指令重排序的影响1.4 如何避免指令重排序带来的问题?1.5 使用原子类1.6 使用 final 关键字1.7 内存屏障(Memory Barrier)1.8 总结在Java中,指令重排序是指编译器和处理器为了提高程序执行效…...

渲影医析Lab学术版

渲影医析 Lab 是武汉渲影软件研发的框架式、模块化、流程化的影像组学分析设计软件,尤其适合处理多模态脑影像数据。通过将影像分析流程细分为可视化节点,并以节点连接的方式构建数据流程,赋予了临床医学研究者、生物医药科研工作者自主设计多…...

利用Minio实现大文件分片上传、断点续传、秒传

利用Minio实现大文件分片上传、断点续传、秒传 demo来自B站蜗牛哥,gitee仓库:minio-upload: 使用vue3 elementplus minio springboot 实现大文件的分片上传、断点续传、秒传的功能demo - Gitee.com 后端暴露端口方法 获取上传进度,identifier…...

查出 product 表中所有 detail 字段包含 xxx 的完整记录

您可以使用以下 SQL 查询语句来查出 product 表中所有 detail 字段包含 oss.kxlist.com 的完整记录&#xff1a; SELECT * FROM product WHERE INSTR(detail, oss.kxlist.com) > 0;下面是detail字段包含的完整内容 <p><img style"max-width:100%;" src…...

Linux系统编程之信号基础知识

概述 信号是Linux系统中用于进程间通信的一种机制&#xff0c;允许一个进程通知另一个进程发生了某些特定事件。信号可以来自硬件中断、用户输入&#xff0c;也可以来自其他进程或者内核本身。信号是一种异步通知机制&#xff0c;当某个事件发生时&#xff0c;操作系统会向目标…...

【C语言标准库函数】标准输入输出函数详解[4]:二进制文件读写函数

目录 一、fread() 函数 1.1. 函数简介 1.2. fread 使用场景 1.3. 注意事项 1.4. 示例 二、fwrite() 函数 2.1. 函数简介 2.2. fwrite 使用场景 2.3. 注意事项 2.4. 示例 三、总结 在 C 语言中&#xff0c;二进制文件读写函数允许以二进制形式对文件进行读写操作&…...

图像锐化(QT)

如果不使用OpenCV&#xff0c;我们可以直接使用Qt的QImage类对图像进行像素级操作来实现锐化。锐化算法的核心是通过卷积核&#xff08;如拉普拉斯核&#xff09;对图像进行处理&#xff0c;增强图像的边缘和细节。 以下是一个完整的Qt应用程序示例&#xff0c;展示如何使用Qt…...

Apache Kafka 消息清理之道

前言 消息的清理是 MQ 中间件的基本能力&#xff0c;可以避免 MQ 的存储占用空间无序增长。与其他消息产品不同&#xff0c;Apache Kafka(以下简称 Kafka) 中 topic 上的消息被消费后不会被马上清除&#xff0c;而是由 topic 级别的清理策略来控制。本文将简要介绍 Kafka 中的…...

JVM ①-类加载 || 内存区域

这里是Themberfue 终于结束了网络层的学习&#xff0c;当然&#xff0c;我们学习的知识也只是冰山一角&#xff0c;想要了解更多的知识&#xff0c;还请大家养成主动探索的习惯~~~接下来我们将对 JVM 的一些机制进行简单的讲解&#xff0c;对于 Java程序员来说&#xff0c;本身…...

物理信息机器学习(PIML)的基础探讨及技术实现

在传统机器学习方法迅速发展并在图像识别、语音处理、自然语言处理等领域取得显著突破的同时,科学计算、工程设计以及自然系统建模等领域常常面临数据不足、噪声干扰以及模型泛化能力弱的问题。单纯依赖数据驱动的“黑箱”模型在处理物理问题时,往往难以兼顾数据拟合与物理解…...

【浏览器多开】Google Chrome 谷歌浏览器分身术

谷歌浏览器分身术&#xff08;多开&#xff09;&#xff1a; 复制已有谷歌浏览器图标—>右键–>属性的目标栏中&#xff0c;添加 --user-data-dir自定义文件夹路径 参数。 例如&#xff1a; C:\MySpace\02Installed\Chrome\Chrome-bin\99.0.4844.51\chrome.exe –user-d…...

《量化绿皮书》Chapter 3 Calculus and Linear Algebra 微积分与线性代数(二)

《A Practical Guide To Quantitative Finance Interviews》&#xff0c;被称为量化绿皮书&#xff0c;是经典的量化求职刷题书籍之一&#xff0c;包含以下七章&#xff1a; Chapter 1 General Principles 通用技巧 Chapter 2 Brain Teasers 脑筋急转弯 Chapter 3 Calculus and…...

单片机成长之路(51基础篇) - 008 C51 的标示符和关键字

标准 C 语言定义了 32 个关键字&#xff0c;如下表(ANSI C的32个关键字)&#xff1a; C51在此基础上针对单片机功能进行了扩展&#xff0c;详情见下表(C51编译器扩充关键字)&#xff1a; C 51的数据类型 51单片机使用的C语言的存储器类型分为以下几种&#xff1a;...

嵌入式AI革命:DeepSeek开源如何终结GPU霸权,开启单片机智能新时代?

2025年&#xff0c;全球AI领域最震撼的突破并非来自算力堆叠的超级模型&#xff0c;而是中国团队DeepSeek通过开源策略&#xff0c;推动大模型向微型化、低功耗场景的跨越。相对于当人们还在讨论千亿参数模型的训练成本被压缩到600万美金而言&#xff0c;被称作“核弹级别”的操…...

Deno vs Node.js:性能对比深度解析

1. 引言 Deno 和 Node.js 都是基于 V8 引擎的 JavaScript 运行时环境&#xff0c;然而它们在架构、模块管理、安全性和性能方面存在显著差异。Deno 由 Node.js 的原始作者 Ryan Dahl 开发&#xff0c;旨在解决 Node.js 设计上的一些问题&#xff0c;比如包管理、安全模型和 Ty…...

【R】Dijkstra算法求最短路径

使用R语言实现Dijkstra算法求最短路径 求点2、3、4、5、6、7到点1的最短距离和路径 1.设置data&#xff0c;存放有向图信息 data中每个点所在的行序号为起始点序号&#xff0c;列为终点序号。 比如&#xff1a;值4的坐标为(1,2)即点1到点2距离为4&#xff1b;值8的坐标为(6,7)…...

网络安全治理架构图 网络安全管理架构

网站安全攻防战 XSS攻击 防御手段&#xff1a; - 消毒。 因为恶意脚本中有一些特殊字符&#xff0c;可以通过转义的方式来进行防范 - HttpOnly 对cookie添加httpOnly属性则脚本不能修改cookie。就能防止恶意脚本篡改cookie 注入攻击 SQL注入攻击需要攻击者对数据库结构有所…...

@emotion/styled / styled-components创建带有样式的 React 组件

一、安装依赖 npm install emotion/styled styled-components 二、使用 import styled from emotion/styled; import styled from styled-components;// 创建一个带样式的按钮 const StyledButton styled.buttonbackground-color: #4caf50;color: white;padding: 10px 20px…...

Gemini 2.0模型更新:谷歌最新AI大模型全面开启智能时代

引言 2025年2月5日&#xff0c;谷歌人工智能实验室&#xff08;Google DeepMind&#xff09;发布了最新的Gemini 2.0模型系列更新&#xff0c;包括2.0 Flash、Flash-Lite和Pro实验版本。这些AI大模型的发布标志着人工智能技术在性能、效率和多模态能力上的进一步突破&#xff…...

MySQL 主从复制原理及其工作过程

一、MySQL主从复制原理 MySQL 主从同步是一种数据库复制技术&#xff0c;它通过将主服务器上的数据更改复制到一个或多个从服务器&#xff0c;实现数据的自动同步。 主从同步的核心原理是将主服务器上的二进制日志复制到从服务器&#xff0c;并在从服务器上执行这些日志…...

详解在Pytest中忽略测试目录的三种方法

关注开源优测不迷路 大数据测试过程、策略及挑战 测试框架原理&#xff0c;构建成功的基石 在自动化测试工作之前&#xff0c;你应该知道的10条建议 在自动化测试中&#xff0c;重要的不是工具 你是否曾因无关或过时的代码导致测试失败&#xff1f; 这可能会增加调试和故障排除…...

ZoneMinder index.php存在SQL注入漏洞(CVE-2024-43360)

免责声明: 本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在…...

【DeepSeek】DeepSeek概述 | 本地部署deepseek

目录 1 -> 概述 1.1 -> 技术特点 1.2 -> 模型发布 1.3 -> 应用领域 1.4 -> 优势与影响 2 -> 本地部署 2.1 -> 安装ollama 2.2 -> 部署deepseek-r1模型 1 -> 概述 DeepSeek是由中国的深度求索公司开发的一系列人工智能模型&#xff0c;以其…...

webGL

WebGL&#xff1a;3D图形的网络标准 WebGL&#xff08;Web Graphics Library&#xff09;是一种3D绘图协议&#xff0c;它允许开发者在不需要任何插件的情况下&#xff0c;在网页浏览器中创建交互式2D和3D效果。WebGL是基于OpenGL ES的JavaScript API&#xff0c;它可以为HTML5…...

电脑远程控制vivo手机,切换按钮就能让vivo仅投屏、不受控制!

Linux系统在全球的市场份额并不高&#xff0c;继而很多便捷的软件都没有Linux的版本。如果想要用Linux远程控制安卓手机&#xff0c;找软件会比较麻烦&#xff0c;但是AirDroid网页版可以做到。 以vivo手机为例子&#xff0c;接下来讲解Linux系统电脑要远程控制安卓手机时&…...

MS17-010(永恒之蓝1.0)漏洞远程控制win7系统操作实战小白通俗易懂

1.准备环境win7操作系统&#xff08;被攻击机&#xff09;以及kali系统&#xff08;攻击机&#xff09;&#xff0c;kali使用msf工具进行攻击。 2.打开kali终端&#xff0c;进入msf&#xff0c;输入msfconsole然后等待启动。 ┌──(root㉿kali-chifan)-[~] └─# msfconsole…...

【Java计算机毕业设计】基于Springboot+Vue社区志愿者管理系统【源代码+数据库+LW文档+开题报告+答辩稿+部署教程+代码讲解】

源代码数据库LW文档&#xff08;1万字以上&#xff09;开题报告答辩稿 部署教程代码讲解代码时间修改教程 一、开发工具、运行环境、开发技术 开发工具 1、操作系统&#xff1a;Window操作系统 2、开发工具&#xff1a;IntelliJ IDEA或者Eclipse 3、数据库存储&#xff1a…...

三次握手,四次挥手,服务器模型(多进程并发,线程),基于套接字的UDP通信

三次握手&#xff1a; 第一次握手&#xff1a;客户端向服务器发送SYN待确认数据x, 客户端进入SYN_SEND状态​ 第二次握手&#xff1a;服务器向客户端回传一条ACK应答数据x1, 同时发送一条SYN待确认数据y&#xff0c;服务器进入SYN_RECV状态​ 第三次握手&#xff1a;客户端向服…...

通讯录管理小程序

通讯录管理系统 是对c基础语法的巩固&#xff0c;比较简单的一个小程序&#xff0c;重点在于养成良好的c代码习惯。 通讯录是一个可以记录亲人、好友信息的工具。 本教程主要利用C来实现一个通讯录管理系统 下面是一些需要实现的功能&#xff1a; 1. 添加联系人 功能描述&…...

[ESP32:Vscode+PlatformIO]添加第三方库 开源库 与Arduino导入第三方库的区别

前言 PlatformIO与Arduino在添加第三方库方面的原理存在显著差异 在PlatformIO中&#xff0c;第三方库的使用是基于项目&#xff08;工程&#xff09;的。具体而言&#xff0c;只有当你为一个特定的项目添加了某个第三方库后&#xff0c;该项目才能使用该库。这些第三方库的文…...