AUTOSAR图解==>AUTOSAR_SWS_V2XGeoNetworking
AUTOSAR V2X GeoNetworking 模块分析
目录
- 1. 概述
- 2. 模块架构分析
- 2.1 AUTOSAR V2X GeoNetworking 在BSW架构中的位置
- 2.1.1 架构层次说明
- 2.1.2 模块间关系
- 2.2 V2X GeoNetworking 模块内部组件结构
- 2.2.1 核心组件
- 2.2.2 接口说明
- 2.1 AUTOSAR V2X GeoNetworking 在BSW架构中的位置
- 3. 消息处理流程
- 3.1 消息传输和接收序列
- 3.1.1 消息发送流程
- 3.1.2 消息接收流程
- 3.1.3 伪名变更处理
- 3.2 消息处理状态图
- 3.2.1 主要状态说明
- 3.2.2 关键处理规则
- 3.1 消息传输和接收序列
- 4. 总结
1. 概述
AUTOSAR (AUTomotive Open System ARchitecture) 是汽车电子软件的开放式标准化架构,用于开发复杂的电子控制单元 (ECU) 软件。本文分析了AUTOSAR标准中的Vehicle-2-X GeoNetworking (V2xGn) 模块,该模块是实现车辆通信技术的关键组件。
V2X(Vehicle-to-Everything)通信是指车辆与周围环境中的实体(其他车辆、基础设施、行人等)之间的信息交换。地理网络(GeoNetworking)是V2X通信的一个关键部分,它使用地理位置信息进行数据路由,支持基于位置的消息传递。
2. 模块架构分析
2.1 AUTOSAR V2X GeoNetworking 在BSW架构中的位置
V2xGn模块是AUTOSAR基础软件(BSW)的一部分,它与其他V2X相关模块共同构成了完整的V2X通信栈。下图展示了V2xGn模块在AUTOSAR软件架构中的位置。
2.1.1 架构层次说明
- 应用层:包含具体的应用程序,如安全警告、交通效率应用等。
- 通信服务层:
- V2xFac (Vehicle-2-X Facilities):提供应用层支持和消息生成功能。
- V2xBtp (Vehicle-2-X Basic Transport):基本传输协议,提供端口管理。
- V2xGn (Vehicle-2-X GeoNetworking):提供基于地理位置的寻址和路由。
- V2xM (Vehicle-2-X Management):管理V2X通信的各个方面,包括安全和配置。
- BSW基础层:
- EthIf (Ethernet Interface):提供以太网通信接口。
- WEth (Wireless Ethernet Driver):无线以太网驱动。
- WEthTrcv (Wireless Ethernet Transceiver Driver):无线以太网收发器驱动。
- DET (Default Error Tracer):错误追踪器。
- EcuM (ECU State Manager):管理ECU状态。
- 硬件层:物理通信接口。
2.1.2 模块间关系
- V2xGn模块接收来自V2xBtp的数据并通过EthIf将其传输出去。
- V2xGn与V2xM交换数据,如位置信息和安全参数。
- 当发生错误时,V2xGn向DET报告。
- EcuM负责V2xGn模块的初始化。
V2xGn模块实现了GeoNetworking协议,该协议支持基于位置的寻址和消息转发,使得车辆能够与特定地理区域内的其他车辆进行通信。
2.2 V2X GeoNetworking 模块内部组件结构
下图展示了V2xGn模块的内部组件结构和与外部模块的接口关系。
2.2.1 核心组件
-
V2xGn主模块:
- 提供初始化和周期性处理功能(
V2xGn_Init
,V2xGn_MainFunction
) - 处理消息传输和接收(
V2xGn_Transmit
,V2xGn_RxIndication
) - 管理伪名更改(
V2xGn_V2xM_PreparePseudonymChange
等)
- 提供初始化和周期性处理功能(
-
位置表管理:
- 维护邻近ITS站点的位置信息
- 定期更新位置表
- 为接收到的数据包生成唯一的
TransactionId
-
消息转发:
- 实现区域转发算法
- 执行距离检查,确保只转发来自6km以内发送方的消息
- 管理DCC配置文件
- 处理不同协议版本的兼容性
-
消息发送:
- 生成GeoNetworking包头
- 设置传输参数
- 配置流量类别
- 支持GBC(GeoBroadcast)数据包的缓存功能
-
消息接收:
- 解码GeoNetworking数据包
- 检测伪名ID碰撞
- 实现重复数据包检测
- 确保与不同协议版本的兼容性
-
地理计算:
- 计算地理距离
- 处理位置精度
- 执行区域检查
2.2.2 接口说明
-
V2xBtp接口:
- 提供
V2xBtp_RxIndication
回调,通知BTP层接收到的消息 - 提供
V2xBtp_TxConfirmation
回调,确认消息传输状态
- 提供
-
EthIf接口:
- 使用
EthIf_ProvideTxBuffer
获取传输缓冲区 - 通过
EthIf_SetBufWTxParams
设置传输参数 - 调用
EthIf_Transmit
发送数据包 - 使用
EthIf_GetBufWRxParams
获取接收参数
- 使用
-
V2xM接口:
- 调用
V2xM_GetPositionAndTime
获取位置和时间信息 - 使用
V2xM_GetGlobalTxParams
和V2xM_SetGlobalRxParams
交换CBR信息 - 通过
V2xM_CalcDistance
计算地理距离
- 调用
-
DET接口:
- 在开发模式下报告错误
通过这些组件和接口,V2xGn模块能够实现基于地理位置的消息路由和转发功能,支持V2X通信中的地理定位服务。
3. 消息处理流程
3.1 消息传输和接收序列
下图详细展示了V2xGn模块中消息传输和接收的序列流程,以及伪名变更处理过程。
3.1.1 消息发送流程
- 应用层请求发送V2X消息
- V2xFac构建应用层消息并传递给V2xBtp
- V2xBtp构建BTP包并调用
V2xGn_Transmit
- V2xGn从V2xM获取位置和时间信息
- V2xGn构建GeoNetworking头部,包括:
- 设置源地址(MID, ST)
- 设置目标地址
- 设置流量类别字段(TC)
- 设置最大跳数限制(MHL=10)
- 设置EtherType值(0x8947)
- V2xGn获取CBR信息
- V2xGn通过EthIf获取传输缓冲区
- V2xGn设置传输参数
- V2xGn调用
EthIf_Transmit
发送数据包 - 传输确认后,如果
V2xGnTxConfirmation
已启用,V2xGn通知上层传输状态
3.1.2 消息接收流程
- WEth接收到数据包并通知EthIf
- EthIf调用
V2xGn_RxIndication
通知V2xGn - V2xGn获取接收参数
- V2xGn处理接收到的数据包:
- 解码GN头部
- 检查协议版本兼容性
- 检查伪名ID碰撞
- 执行重复数据包检测
- 生成唯一
TransactionId
- V2xGn将CBR信息传递给V2xM
- V2xGn计算发送方距离
- 根据需要,V2xGn可能转发数据包:
- 仅转发6km以内的消息
- 使用DCC配置文件DP3
- 执行区域转发算法
- V2xGn通知V2xBtp接收到消息
- 消息向上传递至应用层
3.1.3 伪名变更处理
- V2xM发起伪名变更请求(
V2xGn_V2xM_PreparePseudonymChange
) - V2xGn暂停消息传输并清空缓冲区
- V2xM确认变更(
V2xGn_V2xM_CommitPseudonymChange
) - V2xGn更新GN源地址并恢复消息传输
- 如需中止变更,V2xM调用
V2xGn_V2xM_AbortPseudonymChange
这种精确的消息处理机制确保了V2X通信的可靠性和安全性,同时支持基于地理位置的高效数据路由。
3.2 消息处理状态图
下图展示了V2xGn模块的消息处理状态转换图,描述了模块在不同场景下的状态变化。
3.2.1 主要状态说明
-
初始化状态:
- 模块由EcuM初始化
- 通过
V2xGn_Init()
完成初始化并进入运行状态
-
运行状态:
-
空闲:等待消息发送或接收请求
-
处理发送请求:响应
V2xGn_Transmit()
调用 -
请求传输缓冲区:通过
EthIf_ProvideTxBuffer()
获取缓冲区 -
设置传输参数:通过
EthIf_SetBufWTxParams()
设置参数 -
传输数据包:调用
EthIf_Transmit()
发送数据包 -
处理接收指示:响应
V2xGn_RxIndication()
-
获取接收参数:通过
EthIf_GetBufWRxParams()
获取参数 -
解析GN包头:解析GeoNetworking包头
-
验证包有效性:按照一系列规则检查数据包有效性
-
处理本地接收:处理以本地为目标的数据包
-
判断转发:决定是否需要转发数据包
-
准备转发数据包:准备转发符合条件的数据包
-
-
伪名变更状态:
- 伪名变更准备:暂停消息传输,清空缓冲区
- 伪名变更提交:更新GN源地址,恢复传输
-
错误处理状态:
- 处理各种错误类型:参数错误(
V2XGN_E_PARAM
)、指针错误(V2XGN_E_PARAM_POINTER
)、未初始化错误(V2XGN_E_UNINIT
)、初始化失败(V2XGN_E_INIT_FAILED
)
- 处理各种错误类型:参数错误(
3.2.2 关键处理规则
-
V2xGn_MainFunction
周期性处理:- 定期更新和维护位置表
- 通过
V2xM_GetPositionAndTime
获取最新信息
-
数据包有效性验证规则:
- 仅接收6km距离内的消息
- 支持协议版本0和1
- 检测伪名ID碰撞
- 执行重复数据包检测
-
数据包转发条件:
- 使用区域转发算法(Annex E.3)
- 应用DCC配置文件DP3
- 仅转发6km距离内的消息
- 对GeoBroadcast数据包支持存储-携带-转发机制
这个状态机清晰地展示了V2xGn模块在不同操作阶段的状态转换,有助于理解模块的工作流程和内部逻辑。
4. 总结
AUTOSAR V2X GeoNetworking模块是实现车联网通信的关键组件,它通过地理位置信息实现车辆间的高效通信。本文从多个角度分析了V2xGn模块:
- 架构视角:阐明了V2xGn在AUTOSAR BSW架构中的位置,及其与其他模块的交互关系。
- 组件视角:详细描述了V2xGn内部的组件结构和功能分工。
- 流程视角:展示了消息发送、接收和处理的完整序列。
- 状态视角:说明了模块在不同条件下的状态变化及转换规则。
V2xGn模块实现了ETSI标准定义的GeoNetworking协议,支持以下关键功能:
- 基于地理位置的寻址和路由
- 单跳和多跳通信
- 区域消息转发
- 伪名管理(用于隐私保护)
- 与旧协议版本的兼容性
这些功能共同支持了V2X通信中的安全警告、交通效率提升等关键应用,为智能交通系统提供了坚实的通信基础。
V2xGn模块的设计充分考虑了汽车环境的特殊需求,如:
- 移动性支持(车辆位置变化)
- 隐私保护(伪名机制)
- 有限通信范围(距离限制和转发机制)
- 高可靠性要求(消息确认机制)
通过这些设计,V2xGn模块能够在复杂多变的道路环境中提供稳定可靠的通信服务,促进智能交通系统的广泛应用和发展。
相关文章:
AUTOSAR图解==>AUTOSAR_SWS_V2XGeoNetworking
AUTOSAR V2X GeoNetworking 模块分析 车联网地理网络协议解析与实现 目录 1. 概述2. 模块架构分析 2.1 AUTOSAR V2X GeoNetworking 在BSW架构中的位置 2.1.1 架构层次说明2.1.2 模块间关系 2.2 V2X GeoNetworking 模块内部组件结构 2.2.1 核心组件2.2.2 接口说明 3. 消息处理…...
在 Rocky Linux 上手动安装 zsh
目录 🧩 一、准备:检查是否已经安装Zsh 🛠️ 二、从源码安装 Zsh(推荐方式) 1. 下载 Zsh 源码 2. 解压源码 3. 配置安装路径(到你的 home 目录下) 4. 编译并安装 🧪 三、测试…...
Vector和list
一、Vector和list的区别——从“它们是什么”到“区别在哪儿” 1. 它们是什么? Vector:类似于一排排整齐的书架(数组),存放元素时,元素排成一条线,连续存储。可以很快通过编号(索引…...
人工智能外呼系统:重构智能交互的全维度进化
在数字化浪潮席卷全球的今天,人工智能外呼系统正以其颠覆性的技术革新,重新定义企业与客户的沟通范式。这一融合语音识别、自然语言处理与机器学习的智能系统,不仅实现了从 “机械应答” 到 “智慧交互” 的跨越,更在金融、医疗、…...
嵌入式培训之数据结构学习(三)gdb调试
一、gdb调试 (一)一般调试步骤与命令 1、gcc -g (调试版本,内含调试信息与源码;eg:gcc -g main.c linklist.c) 2、gdb a.out(调试可执行文件,eg:gdb ./a.o…...
元宇宙赛道新势力:成都芯谷产业园创新业务如何重构产业格局
成都芯谷产业园在元宇宙有啥新搞头?看看它的创新业务怎么改变行业! 成都芯谷产业园在元宇宙赛道上的创新业务,核心在于系统性构建一个开放、协同、高效的元宇宙创新生态系统,以此重构产业格局。这并非简单的企业物理聚集…...
Java 日期解析与格式化:从标准格式到自然语言解析
使用 Java 搭配 Apache Commons Lang3 和 Natty 库,实现灵活高效的日期解析与格式化。 一、背景 将不同格式的日期统一成一个格式。日期格式可能有以下几种类型: 标准格式:2024-02-28、14/05/2022、2002年5月6日非英文月份缩写:…...
【windows server脚本每天从网络盘复制到本地】
windows server脚本每天从网络盘复制到本地 调试模板 echo off :: 显示详细操作 echo echo 执行批处理文件:文件复制任务 echo :: 配置参数 set sourcePath\\network_drive\shared_folder :: 网络盘路径 set destinationPathC:\LocalBackup :: 本地保…...
GraphPad Prism简介、安装与工作界面
GraphPad Prism图表可视化与统计数据分析(视频教学版) - 商品搜索 - 京东 1.1 GraphPad Prism简介 GraphPad Prism 将科学绘图、综合曲线拟合(包括非线性回归)、易于理解的统计分析以及数据管理功能集于一身,帮助用…...
尚硅谷阳哥JVM
文章目录 第01章 JVM快速入门1、什么是JVM2、主流虚拟机有哪些?3、结构图3、执行引擎Execution Engine4、本地方法接口Native Interface5、Native Method Stack6、PC寄存器(程序计数器) 第02章 类加载器ClassLoader1、 类的加载过程2、类加载器的作用3、类加载器分类…...
spark的Standalone模式介绍
Apache Spark 的 Standalone 模式是其自带的集群管理模式,无需依赖外部资源管理器(如 YARN 或 Mesos),可快速部署和运行 Spark 集群。以下是对 Standalone 模式的详细介绍: 1. 核心组件 Master 节点 集群的主控制器…...
自营交易考试中,怎么用“黄昏之星”形态做出漂亮反转单?
在自营交易考试中,如何在复杂的市场波动中抓住关键的趋势反转点,常常决定了一笔交易的成败。尤其是在规则清晰、交易明确的交易考试中,具备对K线形态的敏感度,是不少EagleTrader交易员在晋级过程中总结出的实用经验。今天…...
【算法】版本号排序
对版本号数组进行排序,比如:[0.1.2.3,1.2.1.0,4.2.1.0,0.1.2.0] 核心思路 将版本号拆分为数字数组,逐个比较每个子版本段。具体步骤: 拆分版本号:将每个版本字符串按 . 分割成数字数…...
wordcount程序
### 在 IntelliJ IDEA 中编写和运行 Spark WordCount 程序 要使用 IntelliJ IDEA 编写并运行 Spark 的 WordCount 程序,需按照以下流程逐步完成环境配置、代码编写以及任务提交。 --- #### 1. **安装与配置 IntelliJ IDEA** 确保已正确安装 IntelliJ IDEA&#x…...
MySQL Explain 中 Type 与 Extra 字段详解
引言 在数据库性能调优过程中,理解执行计划(EXPLAIN)的输出信息至关重要。MySQL 的 EXPLAIN 命令能够帮助开发者分析查询的执行路径和效率,其中 Type 和 Extra 字段提供了关键的执行细节。Type 字段表示访问类型,反映…...
代码随想录算法训练营第60期第三十六天打卡
大家好!今天我们就会正式进入动态规划的章节,以前我们相继学完了回溯算法,贪心算法,今天的动态规划应该是相当重要同时也是相当难的章节,那我们废话不多说直接进入我们今天的章节。 第一部分 动态规划理论基础 那究竟…...
Python操作MySQL 连接加入缓存层完整方案
更多内容请见: python3案例和总结-专栏介绍和目录 文章目录 1、整体架构设计2、MySQL 连接方案2.1 使用连接池 (推荐)2.2 使用 SQLAlchemy (ORM方案)3、缓存层实现方案3.1 Redis 缓存实现3.2 Memcached 缓存实现4、完整集成方案4.1 带缓存的数据库访问层4.2 使用装饰器实现缓存…...
PyTorch深度神经网络(前馈、卷积神经网络)
文章目录 神经网络概述神经元模型多层感知机前馈神经网络网络拓扑结构数学表示基本传播公式符号说明整体函数视角 卷积神经网络卷积神经网络发展简史第一代(1943-1980)第二代(1985-2006)第三代(2006-至今)快…...
现代垃圾收集器
大家好,我是你们的花姐。 话说java的长期支持版本已经发展到了JDK21,大部分同学对jvm中的垃圾收集器还停留在java8之前的CMS和G1。对java11之后引入的低延迟垃圾收集器shenandoah和zgc几乎是一无所知,甚至有同学是连这两个名字也没有听过呀,…...
Android学习总结之类LiveData与ViewModel关系篇
1. ViewModel 和 LiveData 的强依赖关系 ViewModel 和 LiveData 虽非强依赖,但在 Android 架构中常紧密协作,这基于它们的设计理念和优势互补: 数据与 UI 分离:ViewModel 的主要职责是存储和管理与 UI 相关的数据,而…...
GaussDB 实例 gsql 连接方式详解
GaussDB 实例 gsql 连接方式详解 GaussDB 是华为云推出的分布式关系型数据库服务,支持多种数据库引擎(如 MySQL、PostgreSQL、SQL Server 等)。gsql 是 GaussDB 提供的命令行客户端工具,用于连接和管理数据库实例。本文将详细介绍…...
智能体制作学习笔记2——情感客服
02 案例1-情感客服_哔哩哔哩_bilibili 目录 一、AI对视频内容总结 二、选择可代替视频总结的方案 三、豆包AI插件安装 四、通义 五、情感客服智能体制作 (一)注册 (二)进入工作空间 (三)创建智能体 (…...
部署GraphRAG配置Neo4j实现知识图谱可视化【踩坑经历】
文章目录 概要部署graphrag(一)使用conda创建虚拟环境(前提已经安装好anaconda)(二)部署graphrag 部署neo4jgraphrag生成的知识图谱导入neo4j踩坑经历1.graphrag执行graphrag index --root ./ragtest命令报错2.neo4j没有Relationship types 概要 在本地部署GraphRag࿰…...
跨域的几种方案
因为浏览器出于安全考虑,有同源策略。也就是说,如果协议、域名、端口有一个不同就是跨域,Ajax 请求会失败。 我们可以通过以下几种常用方法解决跨域的问题 JSONP JSONP 的原理很简单,就是利用 <script> 标签没有跨域限制…...
5 WPF中的application对象介绍
WPF Application 类提供了一系列生命周期事件,了解它们的触发顺序对于应用程序开发非常重要。以下是主要事件的触发顺序 1. 主要事件顺序 Startup - 应用程序启动时触发 这是第一个触发的事件 适合在此处初始化应用程序级资源 可以在此取消启动(通过设置e.Cancel = true) Act…...
Nexus首次亮相迪拜 TOKEN2049:以“手机 + 钱包 + 公链 + RWA”生态系统引领未来区块链基建
迪拜,2025年5月—— 全球 Web3 基础设施创新平台 Nexus,在本年度迪拜 TOKEN2049 全球峰会 上完成了其主网与全生态系统的首次国际公开亮相。此次参会不仅展示了 Nexus 的国际生态布局,更标志着其迈出了全球化战略关键一步。凭借对现实世界资产…...
C++ 套接字函数详细介绍
目录 头文件1. 套接字创建与配置2. 绑定地址与端口3. 连接建立4. 数据传输5. 套接字选项6. 地址转换7. 套接字关闭8. 其他实用函数 C 套接字函数详细介绍 套接字(Socket)是网络通信的基本端点,C中通常使用BSD套接字API进行网络编程。以下是主要的套接字相关函数及其…...
WordPress 和 GPL – 您需要了解的一切
如果您使用 WordPress,GPL 对您来说应该很重要,您也应该了解它。查看有关 WordPress 和 GPL 的最全面指南。 您可能听说过 GPL(通常被称为 WordPress 的权利法案),但很可能并不完全了解它。这是有道理的–这是一个复杂…...
机器人示教操作
机器人基础操作 **ES机器人试教操作知识** **1. 视角移动** **1.1 基础模式** - 关节轴控制:通过关节1至关节6实现单轴正反转移动 - 直线移动:通过X/Y/Z坐标轴沿指定方向直线移动 - 旋转移动:通过RX/RY/RZ坐标轴绕指定轴旋转 **1.2 步进模式…...
【python】UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xb2
报错 C:\Users\zhangbin\AppData\Local\Programs\Python\Python310\python.exe D:\XTRANS\cuda\03-graph-db\04-cmkg\pdf2zh-v1.9.9-with-assets-win64\pdf2zh\gui.py Traceback (most recent call last): File “D:\XTRANS\cuda\03-graph-db\04-cmkg\pdf2zh-v1.9.9-with-asset…...
[python] python静态方法,类方法,实例方法实现及其区别
一 静态方法 格式: 使用 staticmethmod 装饰器修饰 应用: 某个方法既不需要使用实例属性也不需要使用类属性时,就可以考虑使用静态方法 注意: 静态方法与类无关,可以被转换成函数使用,属于类本身 1.1 经典示例 创建一个与日期相关的辅助函数,这些函数不需要访问或修改类的…...
Kite AI 自动机器人部署教程
最近比较火的AI赛道,每日自动对话训练AI,赚积分 一个个用于 Kite AI 平台的自动交互机器人,支持多钱包和代理。 登记 注册链接 🌟 功能 多钱包支持(手动输入或基于文件) 代理支持(HTTP/HTTP…...
50. Pow(x, n)
50. Pow(x, n) 分治法的基本思想是将一个大问题分解成若干个相同或相似的小问题,递归地解决这些小问题,然后将这些小问题的解合并起来得到原问题的解。 class Solution:def myPow(self, x: float, n: int) -> float:# 内部定义了一个嵌套的辅助函数…...
Go 语言 sqlx 库使用:对 MySQL 增删改查
MySQL 作为目前最流行的开源关系型数据库,其 SQL 语法体系已形成行业标准,相关知识体系庞大且成熟,本文不再对 SQL 基础进行详细展开,建议尚未掌握的读者先行系统学习。本文聚焦于如何使用 Go 语言进行 MySQL 数据库操作ÿ…...
反射, 注解, 动态代理
文章目录 单元测试什么是单元测试咱们之前是如何进行单元测试的? 有啥问题 ?现在使用方法进行测试优点Junit单元测试的使用步骤删除不需要的jar包总结 反射认识反射、获取类什么是反射反射具体学什么?反射第一步:或者Class对象 获…...
继续预训练 LLM ——数据筛选的思路
GPT生成数据微调qwen-2.5多模态模型实战项目 作者:柠檬养乐多 原文地址:https://zhuanlan.zhihu.com/p/30645776656 qwen2.5-vl是阿里通义实验室推出的qwen系列最新多模态大模型,在许多指标上已经超过或接近了gpt-4o。更为方便的是࿰…...
深入解析 PostgreSQL 外部数据封装器(FDW)的 SELECT 查询执行机制
引言 PostgreSQL 中的外部数据封装器(Foreign Data Wrapper, FDW)是一种扩展,允许您像访问 PostgreSQL 数据库中的表一样,访问和操作存储在外部数据源中的数据。FDW 使 PostgreSQL 能够与多种数据存储系统(包括关系型…...
数据库系统概论|第六章:关系数据理论—课程笔记2
前言 前文我们介绍了规划化的基本概念,同时引入了关于规范化的相关定义与基本概念,低一级范式的关系模式,通过模式分解,可以转换为若干个高一级范式的关系模式的集合,这种过程就叫规范化。本文将围绕范式展开讨论&…...
package-lock.json能否直接删除?
package-lock.json能否直接删除? package-lock.json 生成工具:由 npm 自动生成。 触发条件:当运行 npm install 时,如果不存在 package-lock.json,npm 会创建它;如果已存在,npm 会根据它精确安…...
Ubuntu磁盘空间分析:du命令及常用组合
1、du命令的作用 du(Disk Usage)是 Ubuntu 系统中用于查看目录或文件磁盘使用情况的命令,主要用于分析磁盘空间占用。 2、语法 du [选项] [目录/文件路径]常用选项 2.1、-h 以 KB、MB、GB 等人性化可读格式(Human-readable&am…...
《数据库原理》部分习题解析1
《数据库原理》部分习题解析1 1. 名词解释 (1)关系(2)属性(3)域(4)元组(5)码(6)分量(7)关系模式 ࿰…...
汇川Easy系列PLC数据值改变功能块(随动增益改变判断)
PLC值改变事件 值改变触发功能块 PLC值改变事件 值改变触发功能块(SCL ST完整源代码)-CSDN博客文章浏览阅读1.1k次。本文介绍了在PLC中处理值改变事件的方法,包括值改变触发功能块的实现,详细讲解了FB接口定义、ST代码,并提供了在博途平台上的实现。此外,还分享了如何利用…...
数据清洗的艺术:如何为AI模型准备高质量数据集?
数据清洗的艺术:如何为AI模型准备高质量数据集? 引言 在人工智能和机器学习领域,我们常常听到"垃圾进,垃圾出"(Garbage in, garbage out)这句格言。无论你的模型架构多么精妙,算法多么先进,如果…...
怎么查看当前vue项目,要求的node.js版本
怎么查看当前vue项目,要求的node.js版本 找到 package.json package-lock.json 搜索 node...
游戏引擎学习第278天:将实体存储移入世界区块
总结并为今天的内容做好铺垫 今天的内容是关于开发一个完整的实体系统,目标是让这个系统更加实际和有效。之前讨论了如何通过一个模拟区域来处理无限大的世界。最初,使用浮动点数而不是双精度浮点数来避免潜在的精度问题,因为一些平台&#…...
计算机组成与体系结构:缓存设计概述(Cache Design Overview)
目录 Block Placement(块放置) Block Identification(块识别) Block Replacement(块替换) Write Strategy(写策略) 总结: 高速缓存设计包括四个基础核心概念…...
在Linux中如何使用Kill(),向进程发送发送信号
kill()函数 #include <sys/types.h> #include <signal.h> int kill(pid_t pid, int sig); 函数参数和返回值含义如下: pid:参数 pid 为正数的情况下,用于指定接收此信号的进程 pid;除此之外,参数 pid 也可设置为 0 或-1 以及小于-1 等不同值,稍后给说明。 …...
ElasticSearch重启之后shard未分配问题的解决
以下是Elasticsearch重启后分片未分配问题的完整解决方案,结合典型故障场景与最新实践: 一、快速诊断定位 检查集群状态 GET /_cluster/health?pretty # status为red/yellow时需关注unassigned_shards字段值 2.查看未分配分片详情 …...
基于 Spring Boot 瑞吉外卖系统开发(十四)
基于 Spring Boot 瑞吉外卖系统开发(十四) 查询订单 在管理端的首页,单击左侧菜单栏中的“订单明细”,会在右侧打开订单明细页面。 请求路径:/order/page 请求方法:GET 参数:page pageSize …...
【软件测试】第二章·软件测试的基本概念
🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏:🏀软件测试与软件项目管理_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 …...