Gartner发布软件供应链安全市场指南:软件供应链安全工具的8个强制功能、9个通用功能及全球29家供应商
攻击者的目标是由开源和商业软件依赖项、第三方 API 和 DevOps 工具链组成的软件供应链。软件工程领导者可以使用软件供应链安全工具来保护他们的软件免受这些攻击的连锁影响。
主要发现
-
越来越多的软件工程团队现在负责解决软件供应链安全 (SSCS) 需求。
-
软件工件、开发人员身份、开发工具和交付管道之间相互依赖的碎片化网络造成了软件供应链中的可见性差距。
-
不正确的工件完整性验证允许攻击者毒害软件交付管道并危害正在交付的软件。
-
缺乏自动化工具来执行安全策略和检测错误配置,削弱了软件交付过程的安全态势。
建议
负责保护软件供应链安全的软件工程领导者应该:
-
根据 SSCS 工具在整个软件开发生命周期 (SDLC) 中满足三个关键用例的能力(提高可见性、保护完整性和增强安全态势)对其进行评估。
-
通过使用 SSCS 工具通过软件成分分析和软件物料清单 (SBOM) 以及 SDLC 中所有管道活动和交互的审计跟踪来管理第三方风险,从而减少软件供应链中的可见性差距。
-
通过签署和验证构建工件,确保来源数据到位并防止使用不合规的工件,在整个软件交付过程中保护软件的完整性。
-
通过使用 SSCS 工具自动执行 SDLC 中的策略以及检测和解决 DevOps 工具中的配置错误,改善软件交付过程的安全态势。
战略规划假设
到 2028 年,大型企业中 85% 的软件工程团队将部署软件供应链安全工具,而 2025 年这一比例为 60%。
市场定义
Gartner 将软件供应链安全 (SSCS) 工具定义为那些通过在开发和交付过程中防止受到攻击来构建安全软件的工具。这些保护措施扩展到源代码、开发人员身份、开发工具、交付管道和部署后补丁。SSCS 工具通过基于策略的依赖项管理、软件组合分析 (SCA) 和软件物料清单 (SBOM) 检查来降低第三方风险。它们在通过开发和交付管道时通过签名和验证来确保工件的出处和可追溯性。SSCS 工具支持 SaaS 和混合部署模型,并补充 DevOps 平台以提高组织的 DevSecOps 成熟度。
软件供应链超越组织边界,由外部实体和内部系统组成。内部系统包括软件交付管道、软件依赖项和软件开发环境。外部实体包括合作伙伴、开源软件 (OSS) 和供应商。组织对内部系统有更大的控制权,而对外部实体几乎没有控制权。SSCS 工具可保护组织免受内部威胁和受感染的外部实体的侵害。
软件工程团队还可以使用这些工具,通过自动执行安全和合规政策以及自动认证来满足监管和政府要求。政府认识到软件是当今最关键的基础设施。因此,如果对软件的开发方、开发方式和组成部分缺乏了解,不仅会对企业构成危险,还会对整个社会构成危险。
SSCS 工具可帮助组织实现以下切实成果:
-
识别并减轻因广泛使用开源软件而产生的安全和合规风险。
-
减少由于对用于软件开发、交付和运行时的工具、环境、管道和基础设施的攻击而导致的开发人员摩擦和生产力损失。
-
保护组织免受上游软件依赖项的攻击以及下游软件用户的受损产品的攻击。
-
保护组织的知识产权,这些知识产权越来越多地存在于软件中。
-
通过使软件交付基础设施可审计以及自动执行应用程序安全策略来满足治理和监管要求。
强制功能
该市场的强制性特征包括:
开发
-
使用SCA识别已知漏洞、软件许可证和运营风险(例如嵌入式 OSS 的可行性、可信度和可维护性),从而降低第三方风险。
-
通过扫描内部开发的代码中的秘密和潜在的安全漏洞来降低第一方风险。
-
支持生成、管理和处理软件开发过程中生成和使用的工件的 SBOM。
交付管道
-
通过签署和验证构建工件、源代码提交和可部署二进制文件来保护持续集成/持续交付(CI/CD )管道中的软件完整性。
-
提供准确、完整的开发工具、开发人员身份和软件工件清单,以全面了解从开发到交付的路径。
-
通过检测和修复 DevOps 工具(例如源代码存储库和工件注册表)中的错误配置以及启用或防止使用不合规的工件,自动化策略实施以增强交付管道的安全态势。
部署后
-
启用受影响模块和组件的追溯能力以返回其原始来源。
-
监控部署后暴露的新风险和漏洞,并提供活动审计跟踪以检测和从供应链攻击中恢复。
通用功能
该市场的通用功能包括:
-
通过应用安全策略和许可证过滤器来支持开源组件的管理,确保仅使用经过批准和审查的开源组件。
-
支持生成机器可读文档(例如 VEX、CSAF),以便有效披露漏洞并确定影响交付软件的常见漏洞和暴露(CVE)的优先级。
-
支持可达性分析,通过识别应用程序是否依赖于易受攻击的代码片段和/或受影响的依赖项来分析和确定风险的优先级。
-
扫描容器镜像来检测安全漏洞并识别违反政策的行为。
-
支持二进制SCA ,无需访问源代码即可识别和扫描开源和专有组件(例如供应商工件)中的漏洞和/或恶意代码。生成的组件库存通过 SBOM 报告。
-
支持 SBOM 生命周期管理功能,实现多个供应商和消费者通过公共交换点发现、访问和安全交换 SBOM。
-
检测并防止人类和机器身份对 SDLC 工具和环境的未经授权的访问。
-
支持提取威胁情报以告知依赖性扫描和使用政策。
-
触发工作流以替换在构建和部署期间或之后被篡改或受漏洞影响的工件。此工作流可能涉及自动创建用户案例来跟踪升级,并进行相应的升级影响分析。
市场描述
现代软件应用程序很少完全从头开始构建;相反,它们依赖于第三方组件,包括商业和开源软件、API、库、插件和日益生成的 AI 模型。这些依赖关系共同构成了软件的“供应链”。SSCS 涉及减轻与此依赖链相关的风险。
软件供应链还包括用于开发、交付和运营软件的自动化工具、开发环境、开发人员身份和交付管道。这些实体及其交互和关系都带来了另一种风险。请注意,交付管道是臭名昭著的针对tj-actions 、SolarWinds和Ultralytics 的软件供应链攻击中的攻击媒介。
为了确保供应链安全,软件工程团队必须了解 SDLC 管道、存储库和工件,保护其完整性并改善应用程序安全态势。SSCS 工具可帮助软件工程团队实现这些成果(见图1 )。
图 1:软件供应链安全工具功能
SSCS 并非新兴需求,因为自从开发人员不再依赖自己的源代码和工具以来,软件供应链就一直存在。组织通常使用一组不同的工具和实践来减轻相关风险,例如软件成分分析、应用程序安全测试 (SAST/DAST) 和应用程序安全态势管理。然而,一些问题仍然很大程度上未得到解决,需要专门的能力。例如:
-
软件完整性——确保组件与其声明相符且未被篡改。
-
出处——确定软件组件的来源。
-
可见性——提供 SDLC 中的资产清单和访问权限的全面视图。
-
可追溯性——在产品流向生产过程时对其进行识别、追踪和追溯。
SSCS 工具通过统一的界面将这些功能整合在一起,该界面与用于软件开发和交付的 DevOps 工具集成。参见图 2,了解 SSCS 工具功能如何满足开发、交付和部署后场景中的安全需求。
图 2:SSCS 工具在开发、交付和部署后保护软件的功能
确保软件交付管道的安全是确保交付软件安全的先决条件。
市场方向
大多数软件工程领导者将应用程序安全技能评为“高度重要”。在 2025 年 Gartner 软件工程调查中,近三分之二的受访者认为应用程序安全对于交付满足业务需求的软件非常重要(见图3 )。1这对 SSCS 工具来说是个好兆头,因为它们解决了应用程序安全中的一个关键挑战——保护软件供应链。
图 3:大多数软件工程领导者认为应用程序安全技能非常重要
软件供应链的日益复杂以及由此产生的组织与其技术生态系统之间的相互依赖关系也将扩大和加速对 SSCS 工具的需求。根据世界经济论坛的《2025 年全球网络安全展望报告》,软件供应链漏洞正成为生态系统中最大的网络风险。当被问及“复杂性的哪个方面给您的组织带来最大的挑战或担忧”时,复杂供应链相互依赖关系中的漏洞成为最大的挑战。
竞争态势、购买者行为和影响市场的外部力量
-
市场细分之间的重叠度不断增加:建立软件供应链的信任需要整个 SDLC 的可见性、完整性和态势管理。这会导致与相邻市场(如应用程序安全态势管理 (ASPM)、应用程序安全测试和云原生应用程序保护平台 (CNAPP))重叠。
-
增加内部采购:由于数字产品为组织提供了竞争优势,组织正在将部分软件开发外包。这不可避免地需要投资于 DevOps 相关工具,以及确保完整 SDLC 的工具。软件工程团队将寻求了解其软件供应链并监督其供应商和开源软件的安全级别。
-
分担安全责任:向 CISO 报告的应用程序安全团队传统上是应用程序安全所有方面(包括SSCS)的唯一托管人。近年来,这种情况发生了变化,软件工程团队和平台工程团队与App S ec 团队共同承担应用程序安全的责任。因此,SSCS 工具承担双重责任,成为跨用户角色的共享事实来源,同时为每个用户角色提供量身定制的功能。
-
国家支持的攻击:许多开源软件很容易受到国家恶意行为者的渗透。因此针对全球各个行业国家支持的软件供应链攻击变得越来越复杂和普遍。这些攻击要么利用了软件本身的漏洞(如Kaseya的情况),要么破坏了 SDLC(如SolarWinds和NotPetya攻击的情况)。SSCS 工具对于降低这些风险至关重要。
-
开放式 AI 模型的使用:开放式大型语言模型 (LLM) 易于访问且将其集成到应用程序中的门槛较低,这为软件供应链风险增加了新的维度。2025年 Gartner 软件工程调查显示,47% 的受访者将 LLM 集成到现有应用程序中。买家将期望SSCS工具能够发现 LLM 的使用情况、扫描模型中的风险并实施政策以防止使用未经批准的 LLM。风险示例包括模型来源薄弱、不受支持的模型以及阻碍模型使用的地缘政治障碍。Gartner预测,到 2025 年,对软件供应链和基础设施技术堆栈的毒害将占企业使用的 AI 恶意攻击的 70% 以上。开源模型和数据科学软件(如Jupyter Notebook或Python库)是新的 AI 攻击媒介。因此,更多的人工智能模型市场将包括对下载的第三方和开源模型的安全模型扫描。
-
合规和政府授权:世界各地的政府、政策制定者和监管机构都在强制要求进行第三方供应商评估、持续漏洞扫描和 SBOM,以构建可信的软件供应链。强制性法规的例子包括美国政府网络安全行政命令 14144 、欧盟网络弹性法案、欧盟 NIS2 指令和联邦食品、药品和化妆品法案 (FD&C 法案) 。
SSCS 监管合规工具
组织将使用 SSCS 工具作为主要机制,以确保安全软件开发实践符合法规要求。涉及 SBOM(由 VEX 丰富)和 SLSA 证明的 SSCS 功能使卖方和买方都能遵守政府和法规要求。
市场分析
根据Gartner 2025 年大型企业技术采用路线图调查,60% 的软件工程领导者表示他们已经部署或正在部署 SSCS,另有 12% 正在试用,13% 处于规划阶段。我们的调查显示,与强化 DevOps 管道相比,部署 SSCS 的组织更有可能从代码扫描、机密扫描、软件成分分析和 SBOM 管理开始。
通过工件完整性验证和自动策略实施来强化 DevOps 管道的功能的采用率相对较低。这是因为开发人员在持续集成/持续交付 ( CI/CD ) 管道中与签名和验证工作流相关的经验一直很差。DevOps 管道中工具的异构性加剧了创建工件证明和确保管道完整性的挑战。
市场规模和细分
Gartner 估计 SSCS 工具的市场规模约为 12 亿美元。该市场由几家知名的软件组合分析、DevOps 平台和云原生应用程序保护平台提供商代表,这些提供商提供捆绑功能以及大量一流的 SSCS 专业提供商。
SSCS 工具市场可以根据其专业功能进行细分:
-
确保开源软件(OSS)的使用安全
-
解决 CI/CD 安全风险
确保开源软件的使用安全
目前,OSS 占所有软件包的 70% 到 90% 。然而,只有 15% 的组织对其 OSS 管理实践非常有信心;大多数组织都有顾虑。因此,一部分提供商专门致力于确保安全使用开源软件包和第三方依赖项。这些功能包括:
-
用于识别漏洞和进步的基本软件成分分析,例如可达性分析、升级影响分析和二进制分析(无需访问源代码)。
-
支持策略驱动的软件包管理,以确保开发人员只使用经过批准和审查的开源组件。
-
SBOM 可以深入了解其软件的组件和依赖关系。此功能与 SCA 和 ASPM 相结合,可通过识别软件供应链中的漏洞来更好地进行风险管理。
我们看到三种市场力量推动着这些功能的快速采用:
-
越来越依赖开源软件需要在工具和技术上进行相应的投资以管理和确保其使用。
-
加速采用开源组件、工具和编程语言(例如Python ),这在很大程度上受到生成式 AI 用例的推动。
-
强制使用 SBOM 的监管和合规要求。
解决 CI/CD 安全风险
第二部分 SSCS 工具提供商专门确保软件组件的来源和完整性。这一直是应用程序安全领域的一个长期安全漏洞,需要通过签名提交、工件证明和配置漂移检测等技术来强化 CI/CD 管道。
多个开源基金会和政府机构已发布指南和框架来弥补这一 CI/CD 安全漏洞。这部分提供商专门实施这些指南和框架,而不会引入开发摩擦。软件工程领导者可以使用这些参考资料作为方便的清单来评估 SSCS 工具功能并验证供应商的声明:
-
OWASP 十大 CI-CD 安全风险,十大OWASP 基金会项目
-
软件工件的供应链级别,或 SLSA(“salsa”),是作为开放源代码安全基金会的一部分发起的一项合作努力。
-
DevSecOps CI/CD 管道中软件供应链安全的集成策略,NIST 特别出版物 800-204D。
-
安全软件开发框架 (SSDF) 版本 1.1 ,NIST 特别出版物 800-218。
-
CIS 软件供应链安全指南、互联网安全中心指南。
-
保护软件供应链 — 开发人员推荐实践指南、持久安全框架软件供应链工作小组。
代表供应商
Gartner 估计,市场上有大约 35 家供应商满足本指南中概述的四项关键能力中的三项。对于此处列出的 29 家供应商,Gartner 能够通过两个公开来源验证,这些供应商的当前产品已在市场上销售至少一年,并且解决了 CI/CD 安全风险以及第三方依赖风险。代表性 SSCS 供应商包括具有以下特征的商业供应商组合:
1. 提供独立 SSCS 功能的供应商
2. 包含 SSCS 功能的 ASPM 供应商
3. 提供 SSCS 功能的 CNAPP 供应商
4. 添加了 SSCS 功能的 AST 和/或 SCA 供应商
5. 包含 SSCS 功能的 DevOps 平台
请参阅表 1-5 以获取代表性供应商及其产品、服务或解决方案的相应列表。
表1 :提供独立 SSCS 功能的代表性供应商
供应商 | 产品、服务或解决方案名称 |
ActiveState | ActiveState |
BlueFlag Security | BlueFlag Security |
Endor Labs | Endor Labs 软件供应链安全平台 |
Lineaje | Lineaje SBOM360 |
ReversingLabs | Spectra Assure |
Xygeni Security | Xygeni CI/CD 安全 |
来源:Gartner(2025 年 4 月)
表2 :具有 SSCS 功能的代表性 ASPM 供应商
供应商 | 产品、服务或解决方案名称 |
Apiiro | Apiiro |
Arnica | Arnica |
BoostSecurity | BoostSecurity |
Cycode | Cycode |
Jit | Jit ASPM 平台 |
Legit Security | Legit Security |
OpsMx | OpsMx Delivery Shield |
OX Security | OX 软件供应链安全 |
Scribe | Scribe |
来源:Gartner(2025 年 4 月)
表3 :提供 SSCS 功能的代表性 CNAPP 供应商
供应商 | 产品、服务或解决方案名称 |
Aqua Security | Aqua Security |
Palo Alto | Prisma Cloud |
Wiz | Wiz Code |
来源:Gartner(2025 年 4 月)
表4 :具有附加 SSCS 功能的代表性 AST 和/或 SCA 供应商
供应商 | 产品、服务或解决方案名称 |
Anchore | Anchore平台 |
FOSSA | FOSSA |
Checkmarx | Checkmarx One |
Snyk | Snyk |
Sonatype | Sonatype |
Veracode | Veracode |
来源:Gartner(2025 年 4 月)
表5 :包含 SSCS 功能的代表性 DevOps 平台
供应商 | 产品、服务或解决方案名称 |
GitHub | GitHub 高级安全 |
GitLab | GitLab DevSecOps 平台 |
Harness | Harness供应链安全 |
JFrog | JFrog软件供应链平台 |
Red Hat | Red Hat Trust 应用程序管道 |
来源:Gartner(2025 年 4 月)
市场建议
-
通过使用 SSCS 工具来提高可见性、保护完整性并增强整个 SDLC 的安全态势,从而缩小信任差距。
-
通过将 SSCS 功能集成到 DevOps 管道中以遵守行业认可的准则(例如 SSDF 和 SLSA),推进安全软件开发实践。与应用程序安全团队合作,定义组织的 SSCS 策略,并与平台工程团队合作,在内部 DevOps 工具链中创建安全默认值。
-
通过选择能够与现有的 DevSecOps 工具集成并支持我们市场定义中概述的强制和可选功能的供应商来合理化工具。SSCS 工具供应商从不同的优势地位进入市场,包括 SCA、SBOM 和 SLSA 合规性。
相关文章:
Gartner发布软件供应链安全市场指南:软件供应链安全工具的8个强制功能、9个通用功能及全球29家供应商
攻击者的目标是由开源和商业软件依赖项、第三方 API 和 DevOps 工具链组成的软件供应链。软件工程领导者可以使用软件供应链安全工具来保护他们的软件免受这些攻击的连锁影响。 主要发现 越来越多的软件工程团队现在负责解决软件供应链安全 (SSCS) 需求。 软件工件、开发人员身…...
(四十三)Dart 中的空安全与 `required` 关键字
Dart 中的空安全与 required 关键字 空安全(Null Safety) 空安全(Null Safety)是 Dart 语言的一项重要特性,旨在帮助开发者避免空指针异常(NullPointerException)。空安全通过在编译时检查变量…...
《解锁分布式软总线:构建智能设备统一管理平台》
智能设备的数量呈爆发式增长,从智能家居里的各类电器,到智能办公中的电脑、打印机,再到工业领域的各种自动化设备,不一而足。如何对这些纷繁复杂的智能设备进行有效管理,成为摆在我们面前的一道难题。分布式软总线技术…...
【android bluetooth 协议分析 01】【HCI 层介绍 1】【hci_packets.pdl 介绍】
在 AOSP 的蓝牙协议栈 (Gabeldorsche) 中,hci_packets.pdl 是一个 协议描述语言文件,用于定义 HCI (Host Controller Interface) 层的数据包结构和通信协议。以下是详细解析: 1. 文件作用 system/gd/hci/hci_packets.pdl 协议自动化生成&…...
远程升级组件设计
----------------------- | 主应用程序 | ---------------------- | 通信接口(使用本地socket通信发送给远程升级模块进程或者线程 | (如何启动进程程execl或execv函数),启动线程用std::sthread。 v ---------------------- 远程升级模块 ----------…...
Kubernetes集群环境搭建与初始化
1.Kubernetes简介: Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。 在Kubernetes中,我…...
Compose 适配 - 响应式排版 自适应布局
一、概念 基于可用空间而非设备类型来设计自适应布局,实现设备无关性和动态适配性,避免硬编码,以不同形态布局更好的展示内容。 二、区分可用空间 WindowSizeClasses 传统根据屏幕大小和方向做适配的方式已不再适用,APP的显示方式…...
5G_WiFi_CE_DFS
目录 一、规范要求 1、法规目录 2、定义 3、运行模式 4、主/从设备相关的运行行为及具体的动态频率选择(DFS)要求 5、产品角色确定测试项目 6、测试项目 测试项1:信道可用性检查(Channel Availability Check) …...
Lalamove基于Flink实时湖仓演进之路
摘要:本文投稿自货拉拉国际化技术部 资深数据仓库工程师林海亮老师。内容分为以下几个部分: 1、业务简介 2、Flink 在业务中的应用与挑战 3、实时数仓架构的 Flink 驱动演进 4、未来展望 一、业务简介 Lalamove 于2013年在香港成立,是货拉拉的…...
【含文档+PPT+源码】基于微信小程序的卫生院预约挂号管理系统的设计与实现
项目视频介绍: 毕业作品基于微信小程序的卫生院预约挂号管理系统的设计与实现 课程简介: 本课程演示的是一款基于微信小程序的卫生院预约挂号管理系统的设计与实现,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的 Java 学习…...
人工智能100问☞第2问:机器学习的核心原理是什么?
目录 一、通俗解释 二、专业解析 三、权威参考 机器学习的核心原理是通过数据训练模型,使计算机自动发现数据中的内在规律或模式,并利用这些规律对新数据做出预测或决策。这一过程强调数据驱动(从经验中学习)、模型优化(通过损失函数和参数调整提升性能)以及泛…...
【深度学习基础】——机器的神经元:感知机
感知机模型的原理之前已经讲过(【感知机模型 - CSDN App】https://blog.csdn.net/2401_88885149/article/details/145563837?sharetypeblog&shareId145563837&sharereferAPP&sharesource2401_88885149&sharefromlink)但主要是从数学和机…...
OpenCV 图形API(29)图像滤波-----GMat类
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 cv::GMat 是 OpenCV 的 G-API 模块中的一个核心类,用于定义计算图中的数据节点。G-API 是 OpenCV 中的一个模块,旨在通过…...
spark的堆外内存,是在jvm内还是操作系统内存内?
在 Apache Spark 中,堆外内存(Off-Heap Memory)是直接分配在操作系统的物理内存中,而非 JVM 堆内内存。以下是详细的解释: 1. 堆外内存的本质 操作系统管理 Spark 的堆外内存直接通过操作系统分配(例如使用…...
AD9253 LVDS 高速ADC驱动开发
1、查阅AD9253器件手册 2、查阅Xilinx xapp524手册 3、该款ADC工作在125Msps下,14bit - 2Lane - 1frame 模式。 对应:data clock时钟为500M DDR mode。data line rate:1Gbps。frame clock:1/4 data clock 具体内容:…...
swift菜鸟教程14(闭包)
一个朴实无华的目录 今日学习内容:1.Swift 闭包1.1闭包定义1.2闭包实例1.3闭包表达式1.3.1sorted 方法:据您提供的用于排序的闭包函数将已知类型数组中的值进行排序。1.3.2参数名称缩写:直接通过$0,$1,$2来顺序调用闭包的参数。1.3.3运算符函…...
【HarmonyOS NEXT+AI】问答02:有一点编程基础,可以学不?
在“HarmonyOS NEXTAI大模型打造智能助手APP(仓颉版)”课程里面,有学员问,有一点编程基础,可以学不? 这里统一做下回复。 学习本课程只需要掌握任一编程语言即可,拥有JavaScript、TypeScript、ArkTS或Java语言基础更佳…...
maven 依赖的优先级
最短路径优先 工程中依赖了a、b两个jar包, 在a jar包内引用了b jar包版本为1.0,路径为:Project > a > b(1.0) 工程中直接依赖的b jar包版本为2.0,路径为:Project > b(2.0) 由于b(2.0)路径最短࿰…...
Java实现音频录音播放机功能
Java实现一个简单的音频录音和播放功能,使用Swing创建图形用户界面,利用Java Sound API进行音频处理。下面是对此程序的详细剖析: 一、程序结构 程序主要由以下几个部分组成: RecorderFrm类:主框架类,继承自…...
OpenCV 图形API(26)图像滤波-----方框滤波函数boxFilter()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 使用方框滤波器模糊图像。 该函数使用以下内核来平滑图像: K α [ 1 1 … 1 1 1 … 1 ⋮ ⋮ ⋱ ⋮ 1 1 … 1 ] K \alpha \begin{b…...
oracle 表空间(Tablespace)
在 Oracle 11g 中,表空间(Tablespace) 是数据库存储架构的核心逻辑单元,其原理基于 逻辑存储与物理存储的分离,通过分层管理数据文件、段(Segment)、区(Extent)和数据块&…...
Git 高级操作
Git不仅是代码管理的基石工具,更是开发者提升效率的瑞士军刀。掌握基础操作只是起点,真正的高手都在使用进阶技巧优化工作流。本文将深入解析Git四大高阶操作,助你轻松应对复杂开发场景! 一、交互式暂存:精准控制提交粒…...
Go:程序结构
文章目录 名称声明变量短变量声明指针new 函数变量的生命周期 赋值多重赋值可赋值性 类型声明包和文件导入包初始化 作用域 名称 命名规则: 通用规则:函数、变量、常量、类型、语句标签和包的名称,开头须是字母(Unicode 字符 &a…...
sqlserver2017 分离附加数据库
分离数据库 分离数据库是指将数据库从 SQL Server 实例中移除,但会完整保留数据库及其数据文件和事务日志文件。 然后可以使用这些文件将数据库附加到任何 SQL Server 实例,包括分离该数据库的服务器。 如果存在下列任何情况,则不能分离数据…...
QuarkPi-CA2 RK3588S卡片电脑:6.0Tops NPU+8K视频编解码+接口丰富,高性能嵌入式开发!
QuarkPi-CA2 RK3588S卡片电脑:6.0Tops NPU8K视频编解码接口丰富,高性能嵌入式开发! 芯片框架 视频介绍 https://www.bilibili.com/video/BV1btdbYkEjY 开发板介绍 核心升级,产品炸裂 QuarkPi-CA2卡片电脑搭载瑞芯微RK3588S芯片…...
对称加密与非对称加密与消息摘要算法保证https的数据交互的完整性和保密性
一、对称加密与非对称加密的作用 1. 对称加密 作用: 保密性:对称加密使用相同的密钥对数据进行加密和解密,确保数据在传输过程中不被窃听。效率:对称加密算法(如AES)计算速度快,适合加密大量数…...
Lab Cloud FPGA 硬件在线实验云平台介绍
友晶科技依托其在FPGA技术领域的深厚积累,成功研发出了一套完整的FPGA云平台解决方案(即FPGA 硬件在线实验云,简称LabCloud )。LabCloud 是一个高效、实用的学习平台,目前已在多个学校成功部署。 LabCloud 是通过 B/S …...
相机回调函数为静态函数原因
在注册相机SDK的回调函数时,是否需要设置为静态函数取决于具体SDK的设计要求,但通常需要遵循以下原则: 1. 必须使用静态函数的情况 当相机SDK是C语言接口或要求普通函数指针时,回调必须声明为静态成员函数或全局函数:…...
实验室纯水器实验室超纯水机(常见类型、选型建议、维护保养)
不同实验室用水级别有何差异? 实验室用水级别由ASTM或ISO 3696等质量标准定义,有助于特定应用选择适合的水质。这些标准也考虑了生产成本,如1级(Type 1)超纯水的生产成本远高于2级(Type 2)或3级(Type 3)纯水。 1级超纯水 不含离子ÿ…...
腾讯云COS与ZKmall 开源商城的存储集成方案
ZKmall 开源商城与腾讯云对象存储(COS)的集成,可通过云端资源托管、自动化数据同步、高性能存储架构实现本地存储负载降低与访问效率提升。以下是基于搜索结果的集成路径与核心优化点: 一、存储架构升级:本地与云端协同…...
Python 深度学习实战 第3章 Keras和TensorFlowKeras 训练和评估模型实例
Python 深度学习实战 第3章 Keras和TensorFlow&Keras 训练和评估模型实例 内容概要 第3章介绍了Keras和TensorFlow的基本概念及其关系,并指导如何设置深度学习工作区。本章还概述了核心深度学习概念如何转化为Keras和TensorFlow API。通过本章,读者…...
基于SpringBoot的动物救助中心系统(源码+数据库)
500基于SpringBoot的动物救助中心系统,本系统共分为2个角色:系统管理员、用户,主要功能如下 【管理员】: 1. 登录:管理员可以通过登录系统来管理各种功能。 2. 用户管理:管理员可以查看用户列表࿰…...
【多模态大模型】《Qwen2.5-Omni》 论文解读
《Qwen2.5-Omni:重新定义端到端全模态大模型的技术范式》 论文解读 论文: https://arxiv.org/abs/2503.20215 (2025.03.26)代码: https://github.com/QwenLM/Qwen2.5-OmniNews: https://mp.weixin.qq.com/…...
go 通过汇编分析函数传参与返回值机制
文章目录 概要一、前置知识二、汇编分析2.1、示例2.2、汇编2.2.1、 寄存器传值的汇编2.2.2、 栈内存传值的汇编 三、拓展3.1 了解go中的Duff’s Device3.2 go tool compile3.2 call 0x46dc70 & call 0x46dfda 概要 在上一篇文章中,我们研究了go函数调用时的栈布…...
蓝桥杯C/C++省赛/国赛注意事项及运行环境配置
大佬的蓝桥杯考前急救指南 对拍(手动生成测试数据)代码: #include <bits/stdc.h> // 包含所有标准库的头文件 using namespace std; // 使用标准命名空间int main() {srand(time(0)); // 设置随机数种子为当前时间,确保每次…...
CSS高度坍塌?如何解决?
一、什么是高度坍塌? 高度坍塌(Collapsing Margins)是指当父元素没有设置边框(border)、内边距(padding)、内容(content)或清除浮动时,其子元素的 margin 会…...
redis的基本使用
简介 redis,Remote Dictionary Server,远程字典服务,一个基于内存的、存储键值对的数据库。redis是开源的,使用C语言编写。因为redis的数据是存储在内存中的,所以redis通常被用来做数据库的缓存 优点: re…...
【蓝桥杯】单片机设计与开发,第十二届
/*头文件声明区*/ #include <STC15F2K60S2.H>//单片机寄存器头文件 #include <init.h>//初始化底层驱动头文件 #include <led.h>//led,蜂鸣器,继电器底层驱动头文件 #include <key.h>//按键底层驱动头文件 #include <seg.h>//数码管底层驱动头…...
主流时序数据库深度对比:TDengine、InfluxDB与IoTDB的技术特性、性能及选型考量
目录 引言 一、 核心架构与技术特性对比 1.1、 TDengine:面向物联网的特定优化 1.2. InfluxDB:成熟的通用时序平台 1.3. Apache IoTDB:面向工业场景的精细化设计 二、 核心性能指标对比分析 2.1、写入性能 2.2、查询性能 三、 关键技…...
使用人工智能大模型腾讯元宝,如何免费快速做高质量的新闻稿?
今天我们学习使用人工智能大模型腾讯元宝,如何免费快速做高质量的新闻稿? 手把手学习视频地址:https://edu.csdn.net/learn/40402/666431 第一步在腾讯元宝对话框中输入如何协助老师做新闻稿,通过提问,我们了解了老师…...
国产Linux系统统信安装redis教程步骤
系统环境 uname -a Linux FlencherHU-PC 6.12.9-amd64-desktop-rolling #23.01.01.18 SMP PREEMPT_DYNAMIC Fri Jan 10 18:29:31 CST 2025 x86_64 GNU/Linux官网下载源码包并解压 下载链接 https://download.redis.io/releases/redis-7.0.15.tar.gz?_gl11h424d3_gcl_au*ODQ5…...
leetcode590 N叉树的后序遍历
前序遍历 的顺序是:根 → 子节点1 → 子节点2 → ... → 子节点N 后序遍历 的顺序是:子节点1 → 子节点2 → ... → 子节点N → 根 首先一个办法就是前序遍历结果进行翻转 在 迭代法 实现 后序遍历 时,如果采用 前序遍历 反转 的方式&…...
docker desktop 的安装和使用
一、Docker Desktop 是什么? Docker Desktop 是一款专为开发者设计的工具,可以在本地计算机(Windows/macOS)上快速运行和管理容器(Container)环境。以下是核心功能: 核心特点说明容器化开发基于…...
QCustomPlot频谱图
使用QCutomPlot做的读取txt文件显示频谱图的demo,帮助大家了解QCustomPlot的基本使用 1.运行结果 demo比较简单,用于文件读取,鼠标放大缩小,右键截图等基础功能. 2.绘图详解 绘图核心是将类提升为QCustomPlot之后进行重绘,重绘之前设计图表曲线,图标标题,坐标轴,坐标轴范围,背…...
Python 和 JavaScript两种语言的相似部分-由DeepSeek产生
Python 和 JavaScript 作为两种流行的编程语言,虽然在设计目标和应用场景上有差异(Python 偏向后端和脚本,JavaScript 偏向前端和动态交互),但它们的语法存在许多相似之处。以下是两者在语法上的主要共同点及对比&…...
记一次 .NET某云HIS系统 CPU爆高分析
一:背景 1. 讲故事 年前有位朋友找到我,说他们的系统会偶发性的CPU爆高,有时候是爆高几十秒,有时候高达一分多钟,自己有一点分析基础,但还是没找到原因,让我帮忙看下怎么回事? 二&…...
ESP32开发入门:基于VSCode+PlatformIO环境搭建指南
前言 ESP32作为一款功能强大的物联网开发芯片,结合PlatformIO这一现代化嵌入式开发平台,可以大幅提升开发效率。本文将详细介绍如何在VSCode中搭建ESP32开发环境,并分享实用开发技巧。 一、环境安装(Windows/macOS/Linux…...
在 macOS 上设置来电自启动
在 macOS 中,系统本身并不支持直接通过“接上电源适配器”自动开机(此功能涉及硬件底层控制)。但针对 Intel 处理器的 Mac 机型,可以通过以下方法间接实现类似效果。对于 Apple Silicon(M1/M2/M3)芯片的 Ma…...
【技术】Ruby 生态概念速查表,通过对比nodejs生态(入门)
以下是 Ruby 生态 对应概念的速查表,并使用与 Node.js 生态 对比的方式来参照,涵盖名称、作用(或解释)、简单用法、可能的替代方案,以及 Node.js 中最相似或可类比的工具(如果有的话)。有些工具…...
入门级宏基因组数据分析教程,从实验到分析与应用
宏基因组学彻底改变了研究人员对微生物群落的认识,微生物组不仅是环境组分,更作为共生体深刻影响着宿主的健康与功能。 鉴于微生物群落固有的复杂性及其所处环境的多样性,研究者进行一些宏基因组学研究时必须精心设计以获取能真实反映目标群体…...