新闻详情

新闻详情

首页 / 资讯中心 / 详情

RetDec v5.0 库化变革全解读:从命令行反编译器到可嵌入库的架构演进与实践

发布时间:2026/9/25 3:19:02来源:尧图网络
RetDec v5.0 库化变革全解读:从命令行反编译器到可嵌入库的架构演进与实践
逆向工程静态分析【免费下载链接】retdecRetDec is a retargetable machine-code decompiler based on LLVM.项目地址https://gitcode.com/gh_mirrors/re/retdec点击查看免费下载导读本文以 CHANGELOG.md 为主线系统梳理 RetDec基于 LLVM 的可重定向机器码反编译器从 v3.0 公开版到 v5.0 及 dev 分支的完整演进路径。重点剖析 v5.0 将 RetDec 重构为可编程库这一里程碑变更并结合仓库源码给出retdec库接口、retdec-decompiler可执行文件、retdec-fileinfoJSON 配置等实际用法帮助读者理解 RetDec 的架构全貌并快速上手二次开发。从 CHANGELOG 看 RetDec 的版本脉络RetDec 的 CHANGELOG.md 记录了项目从v3.02017-12-13初始公开版本到v5.02022-12-08以及当前dev分支的完整发展历程版本时间核心主题v3.02017-12-13初始公开发布v3.12018-06-07二进制→LLVM IR 解码阶段重写、新增retdec-getsig工具v3.22018-08-16脚本全面 Python 化Windows 不再强制 MSYS2、消除 git submodulev3.32019-03-18基础支持 64 位 x86、LLVM IR→BIR 转换器统一v4.02020-04-07支持 64 位 ARM、新增retdec库雏形、C17v5.02022-12-08RetDec 正式成为可嵌入库、GitHub Actions CI、fileinfoJSON 配置化dev进行中Intel MPX 指令支持、gcc-13 编译兼容需要特别说明的是当前仓库 README 明确标注项目处于有限维护模式limited maintenance modePR 会被优先审查Issue 的响应可能延迟至一个季度仅保留基础维护与有限的开发。这一点在使用与二次开发前值得了解。dev 分支的最新动态在最新未发布版本的开发中CHANGELOG 记录了以下两项直接影响可用性的修复Intel MPX 指令支持修复了反编译器对 x86 Memory Protection ExtensionsMPX指令的处理。MPX 是 Intel 引入的用于内存边界检查的指令集扩展早期版本在解码含 MPX 指令的二进制时可能出现问题。gcc-13 编译兼容保证 RetDec 在较新版本的 GCC13.x工具链下可以正常编译。这一点对从源码构建的用户尤其重要——随着发行版工具链升级旧代码库常因头文件、标准库差异而编译失败。v5.0 核心里程碑RetDec 从工具集合变身为可嵌入库v5.0 是 RetDec 历史上影响最深远的架构变更。此前 RetDec 是一组相互调用的独立命令行工具retdec-decompiler.py脚本 retdec-bin2llvmirretdec-llvmir2hll而 v5.0 之后RetDec 成为真正的库retdec library外部 C 项目可以直接链接调用retdec-decompiler.py脚本被移除取代它的是编译期生成的二进制可执行文件retdec-decompilerWindows 下为retdec-decompiler.exeretdec-bin2llvmir、retdec-llvmir2hll等内部组件不再作为独立命令行工具暴露。库的核心接口库的公开接口定义在 include/retdec/retdec/retdec.h只暴露两个核心函数namespace retdec { struct LlvmModuleContextPair { std::unique_ptrllvm::Module module; std::unique_ptrllvm::LLVMContext context; // 析构顺序先销毁 module再销毁 context }; // 反汇编输入文件路径输出函数集合 LLVM IR 模块 LlvmModuleContextPair disassemble( const std::string inputPath, retdec::common::FunctionSet* fs nullptr); // 反编译按 config 配置执行完整反编译 bool decompile( retdec::config::Config config, std::string* outString nullptr); } // namespace retdec这里有几个值得注意的实现细节disassemble()的返回结构LlvmModuleContextPair通过 unique_ptr 持有 LLVM 模块与上下文并在析构时先销毁 module 再销毁 context——这是 LLVM 对象生命周期管理的关键顺序注释明确说明 Order matters: module destructor uses contextdisassemble()内部通过llvm::legacy::PassManager依次运行bin2llvmir::ProviderInitialization与bin2llvmir::Decoder两个 pass完成加载与解码见 src/retdec/retdec.cpp从源码结构看fillFunction()/fillBasicBlock()负责把 LLVM IR 中的函数与基本块映射回结构化 Capstone 反汇编结果包括前驱/后继关系、调用点calls、指令列表instructions并对 MIPS 延迟槽做特殊处理调用地址减 4decompile()会按配置中的llvmPasses列表逐个创建并运行 LLVM pass其中bin2llvmir::ProviderInitialization与llvmir2hll::LlvmIr2Hll两个 pass 需要注入Config对象。官方示例retdectoolCHANGELOG 明确指引开发者阅读 src/retdectool/retdec.cpp 学习库的用法。这是一个极简的演示程序其主流程为retdec::common::FunctionSet fs; retdec::disassemble(po.inputFile, fs); for (auto f : fs) { Log::info() f.getName() f std::endl; // 打印引用该函数的代码引用code refs // 遍历每个基本块preds / succs / calls / instructions for (auto* insn : bb.instructions) { Log::info() insn-address insn-mnemonic insn-op_str std::endl; } }retdectool支持-i inputFile、-h|--help、--version三个参数。它输出的instructions数组中保存的是完整的 Capstone 指令对象源码注释强调 There is a full Capstone representation for every instruction而不仅是文本形式的助记符——这意味着下游工具可以直接消费结构化的指令数据。真实产品实现retdec-decompiler 可执行文件真正的产品级调用链在 src/retdec-decompiler/retdec-decompiler.cpp。它的主流程展示了库化之后完整的反编译流水线加载默认配置从安装目录share/retdec/decompiler-config.json读取默认参数若存在然后解析命令行参数覆盖之Mach-O 抽取若输入是通用二进制universal binary用retdec::macho_extractor::BreakMachOUniversal按--arch指定的架构族抽取对应 slice归档抽取若输入是 AR 归档支持按--ar-index零基索引或--ar-name抽取成员同时会拦截空归档瘦归档thin archive无效格式等错误场景脱壳Unpacking调用retdec::unpackertool::_main()尝试 UPX 等已知壳的自动脱壳成功则用脱壳产物作为后续输入反编译最终调用retdec::decompile(config)执行完整反编译。此外该入口还实现了--timeout超时后线程分离并返回退出码 137、--max-memory/--no-memory-limit默认限制为系统 RAM 一半、--cleanup删除临时文件等进程级控制逻辑。在第三方 CMake 项目中使用 RetDec 库README 给出了库化后的标准 CMake 集成方式。安装后如安装到/usr、/usr/local等标准位置在你的项目里直接find_package(retdec 5.0 REQUIRED COMPONENTS component [...] ) target_link_libraries(your-project PUBLIC retdec::component [...] )若 RetDec 安装在非标准目录则需在find_package()之前帮助 CMake 定位二选一# 方式一加入 CMAKE_PREFIX_PATH list(APPEND CMAKE_PREFIX_PATH ${RETDEC_INSTALL_DIR}) # 方式二显式指定 retdec_DIR set(retdec_DIR ${RETDEC_INSTALL_DIR}/share/retdec/cmake)这一能力来自 v4.0 引入的proper RetDec installation[#648] 相关改动配合各组件自带的*-config.cmake文件如 src/retdec/retdec-retdec-config.cmake、src/fileformat/retdec-fileformat-config.cmake构成了完整的库化分发体系。v5.0 文件格式与样本分析能力增强v5.0 在retdec-fileinfo与fileformat库层面做了大量增强主要围绕恶意样本分析场景ELF 相关telfhash 支持生成 ELF导入符号相关的哈希包括 VirusTotal 兼容的telfhash。其实现位于 src/fileformat/file_format/elf/elf_format.cpp从源码看会收集动态符号telfhashDynsym与节符号isSegmentSymbols过滤段符号后基于 TLSH 算法计算哈希tlsh.getHash(show_version)并封装为retdec-fileinfo输出的telfhash字段见 src/fileinfo/file_information/file_information.cpp。损坏 ELF 检测新增对无法加载unloadable的损坏 ELF 文件的检查避免分析器在畸形输入上崩溃。PE 相关解析多种 PE 时间戳并在 Fileinfo 中呈现改进 .NET 解析使其与 YARA 的解析行为对齐包括整数解码的空数据检查、TypeLib ID 的_Parent relationship_检查、不把嵌入二进制中的 .NET 结构误判为宿主二进制所有数字签名Authenticode增强改用独立的 authenticode-parser 库替代自研实现新增signatureVerified标志subject/issuer 提供单行风格值更严格的签名校验签名须位于镜像之外才算有效新增检测被截断或清零的数字签名的损坏检查Rich Header 增强计算解密后的 PE Rich Header 哈希输出人类可读的产品名与 VS 版本修复 Rich Header 分析算法导入/导出相关导入表哈希与 YARA/pefile 兼容修复导入解析问题、延迟导入解析防止加载垃圾数据、导出序号相对基址正确计算、导入目录条目数上限调整资源与重定位修复 PE 资源解析、资源目录错误处理与 YARA 对齐、损坏重定位导致的运行时/内存问题、资源位于非资源树节的正确解析其他转义 PE 节名中的转义字符、放宽 PE 符号名长度上限、PDB 信息仅在IMAGE_DEBUG_TYPE_CODEVIEW标志置位时接受、ImageLoader::Save()正确保存 Rich Header 与节数据。v5.0retdec-fileinfo 的 JSON 配置化v5.0 新增了--fileinfo-config选项使retdec-fileinfo可以通过 JSON 文件统一配置替代散落的命令行参数。仓库自带的默认配置位于 src/fileinfo/fileinfo-config.json字段含义如下{ // plain|json outputFormat: plain, // exact|similarity|sim-list yaraMatchingType: exact, useInternalSignatureDb: true, useExternalSignatureDb: false, externalMalwareYaraRules: [], externalCryptoYaraRules: [ ./support/generic/yara_patterns/signsrch/signsrch.yara, ./support/generic/yara_patterns/signsrch/signsrch.yarac, ./support/generic/yara_patterns/signsrch/signsrch_regex.yara, ./support/generic/yara_patterns/signsrch/signsrch_regex.yarac ], externalOtherYaraRules: [], loadStrings: false, // default|all|file|verbose noHashes: default, epBytes: 50, verbose: false, explanatory: false, maxMemory: 0, maxMemoryHalf: false, dlls: }结合 src/fileinfo/fileinfo.cpp 的解析逻辑可以补充以下实现级细节相对路径解析配置中的 YARA 规则路径若为相对路径会以配置文件所在目录为基准解析fixRelativePath()不存在的文件会被静默跳过noHashes可选default|all|file|verbose控制跳过全部哈希或仅跳过文件级/详细级哈希对应命令行--no-hashes[all|file|verbose]epBytes从入口点读取的字节数默认 50对应--ep-bytesNmaxMemory/maxMemoryHalf内存限制分别对应--max-memoryN与--max-memory-half-ramdlls从外部文件加载可用 DLL 列表用于导入解析对应--dllsfilename。与之互补的 CLI 选项还包括--strings, -S加载并打印字符串、--verbose, -v、--explanatory, -X纯文本输出中附加解释性注释、--analysis-time输出分析耗时、--configfile, -cfile指定要重新生成的 config 文件。v5.0加壳器/编译器/安装器检测矩阵扩充v5.0 对retdec-fileinfo的启发式与 YARA 签名检测做了大规模扩充新增覆盖了大量加壳器、安装器与脚本编译器主要包括加壳/保护器Armadillo、VMProtect、Petite、Enigma、ASPack、Eziriz、MoleBox、Blizzard Protector、Bero、CExe、Xenocode Application Launcher安装器CreateInstall、FlyStudio、Gentee、Ghost installer、InnoSetup、InstallCreator、Quick Batch、Wise installer、Viseman installer、Setup Factory、SmartInstall Maker、Astrum InstallWizard脚本到 PE 的编译器/运行时PyInstaller、AutoHotKey、AutoIt、BAT to PE-EXE script compilers配套改进启用 RetDec YARA 的 .NET 模块、改进 SHA-512 算法检测规则、YARA 升级先后到 4.0.1 与 4.2.0-rc1、支持 ELF UPX 脱壳 stub 版本 3.93–3.96、MPRESS 脱壳器正确复制资源/导出等非压缩节。这些检测能力沉淀在 src/cpdetect启发式与签名框架与 support/yara_patternsYARA 规则集中。v5.0反编译质量与后端改进在反编译结果质量方面v5.0 修复/改进了多个影响产出的问题动态链接函数原型为无头文件的动态链接函数生成函数原型prototypegcc 32 位 x86 的 PLT 调用正确处理 gcc 生成的 Procedure Linkage Table 调用参数/返回类型修复修正动态调用函数的参数与返回类型[#1085] 相关算术移位修复算术右移不再被转换为有符号除法——两者在负数输入下语义不同[#724] 相关llvmir2hll 复制传播死循环修复 copy-propagation 优化中的无限循环[#876] 相关MIPS 调用约定修正 MIPS 架构的分析——浮点函数返回值使用 F0 寄存器[#656] 相关输出噪音控制改进过滤以更好处理无参函数减少输出噪音[#155] 相关移除--backend-aggressive-opts连同相关代码一并删除[#1016] 相关动态调用新增动态调用函数的参数与返回类型原型支持[#1092] 相关。v5.0构建系统与运行时体验Capstone 升级从 v4 升级到 v5[#1059] 相关OpenSSL 前置化OpenSSL 成为构建前置依赖要求 1.1.1不再由 RetDec 内部构建同时新增 OpenSSL 3.0 支持[#1040] 相关CMake 构建类型全平台支持Debug、Release、RelWithDebInfo、MinSizeRel四种构建类型[#774] 相关Ninja 生成器支持新增对 Ninja CMake generator 的支持[#8] 相关统一日志与--silentstdout/stderr 日志统一管理新增--silent选项关闭详细输出仅当输出为终端时才着色[#791] 相关--version选项所有可执行程序统一支持--version同时写入retdec-fileinfo的 verbose 输出[#926] 相关输出中移除版权横幅[#843] 相关macOS 内存限制调整禁用 macOS 上的内存限制能力当前没有可靠实现方案[#1045] 相关C Filesystem 替代用标准库filesystem替换自研FilesystemPath实现[#806] 相关GitHub Actions CI新增基于 GitHub Actions 的持续集成[#1053] 相关。历史版本演进要点回顾v4.0 / v3.x了解历史版本有助于理解 v5.0 架构决策的来龙去脉v4.02020-04-07的关键铺垫64 位 ARMAArch64反编译支持retdec库雏形新增可同时输出 LLVM IR 模块与结构化 Capstone 反汇编的retdec库当时以retdectool演示这正是 v5.0 库化的前身JSON 输出格式反编译结果可输出为 JSON含附加元信息便于第三方工具消费寄存器局部化将所有寄存器从全局变量转为局部变量平均提速约 20% 并显著减少输出噪音[#652] 相关C14 → C17切换到 C17用标准std::variant替换mpark::variant依赖依赖精简ELFIO、RapidJSON、TinyXML2 移入主仓库deps/Yaracpp、PeLib 移入src/Capstone、YARA 改用上游仓库移除 JsonCpp、Libdwarf、Libelf 依赖demangler 重写[#95] 相关新增 macOS/LinuxUbuntu、Debian、Fedora发布构建Fileinfo 新展示能力节/覆盖区熵、PE 版本信息、PE 线程本地存储目录、PE 缺失依赖、PE 异常anomalies新增损坏检查检测被截断或清零的数字签名[#719] 相关新启发式检测StarForce、SecuROM、SafeDisc、MPRMMGVA、ActiveMark、Petite、RLPack。v3.x 的演进足迹v3.3基础 64 位 x86 支持.NET 二进制导入类型与 TypeRef 哈希Visual Basic 元数据与 P-code 检测PE 图标哈希精确 相似匹配llvmir2hll的 LLVM IR→BIR 转换器成为唯一后端转换器改善代码结构并显著提速fileformat库同时接受std::istream与(data, size)对作为输入v3.2脚本全面 Python 化Windows 不再强制 MSYS2导出表哈希Doxygen 文档自动生成v3.1二进制→LLVM IR 解码阶段完整重写新增retdec-getsig工具创建加壳器/编译器/工具签名--ep-bytes选项默认以系统 RAM 一半为内存上限--no-memory-limit可覆盖消除全部 git submodule第三方依赖改由 CMake ExternalProject 下载构建只保留单一 LLVM 副本。架构支持全景结合 READMERetDec 当前支持的文件格式包括 ELF、PE、Mach-O、COFF、AR归档、Intel HEX 与裸机器码支持的架构为 32 位 Intel x86、ARM、MIPS、PIC32、PowerPC 与 64 位 x86-64、ARM64AArch64——这一能力矩阵正是通过 v3.x 与 v4.0 逐步补齐的。在当前仓库验证这些能力1. 从源码构建并运行反编译器构建依赖 CMake 3.6、支持 C17 的编译器如 GCC 7、Git、OpenSSL 1.1.1、Python 3.4以及 autotools 工具链等完整清单见 README.md。以 Linux 为例git clone https://github.com/avast/retdec cd retdec mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX$HOME/projects/retdec-install make -jN make install常用 CMake 选项见 cmake/options.cmake-DRETDEC_DOCON构建 API 文档需 Doxygen 与 Graphviz默认关-DRETDEC_TESTSON构建测试默认关-DRETDEC_DEV_TOOLSON构建设计开发工具默认关-DRETDEC_COMPILE_YARAOFF关闭安装阶段的 YARA 规则编译默认开-DCMAKE_BUILD_TYPEDebug构建调试版本默认 Release-DRETDEC_ENABLE_componentON仅构建指定组件及其依赖-Ddep_LOCAL_DIRpath用本地依赖仓库副本代替构建时下载dep 可取CAPSTONE、GOOGLETEST、KEYSTONE、LLVM、YARA、YARAMOD。安装后即可反编译$RETDEC_INSTALL_DIR/bin/retdec-decompiler test.exe其默认输出文件命名规则由 src/retdec-decompiler/retdec-decompiler.cpp 的afterLoad()决定INPUT_FILE.cplain 格式或INPUT_FILE.c.jsonjson 格式同时生成.dsm反汇编、.bcLLVM bitcode、.llLLVM IR、.config.json反编译配置等副产物。常用选项速览选项说明-o, --output FILE输出文件默认INPUT_FILE.c或INPUT_FILE.c.json-f, --output-formatplain\|json\|json-human默认 plain-m, --modebin\|raw默认 bin-a, --archmips\|pic32\|arm\|thumb\|arm64\|powerpc\|x86\|x86-64-e, --endianlittle\|big-b, --bit-size16\|32\|64默认 32--select-ranges按地址区间选择性反编译如0x100-0x200,0x300-0x400--select-functions按函数名选择性反编译--raw-section-vma/--raw-entry-pointraw 模式必需的 VMA 与入口点--ar-index/--ar-name从归档中按索引/名称抽取成员--backend-var-renamer变量重命名风格address\|hungarian\|readable\|simple\|unified--backend-emit-cfg/--backend-emit-cg输出 CFG / CG.dot 格式--timeout SECONDS反编译超时--max-memory/--no-memory-limit内存限制覆盖--silent, -s关闭信息性输出--config FILE指定 JSON 反编译配置2. 默认反编译配置默认配置模板位于 src/retdec-decompiler/decompiler-config.json其decompParams涵盖输出格式、后端优化开关、签名路径、类型信息路径与llvmPasses流水线。其中llvmPasses是一个可观察整条反编译流水线的窗口从retdec-provider-init、retdec-decoder开始经过retdec-x86-addr-spaces、retdec-x87-fpu、retdec-main-detection、retdec-inst-opt、retdec-stack、retdec-param-return、retdec-class-hierarchy、retdec-register-localization等一系列 RetDec 专属 pass再进入大量标准 LLVM 优化 passinstcombine、simplifycfg、mem2reg、gvn、loop-*等最终以retdec-write-ll、retdec-write-bc、retdec-llvmir2hll收尾。理解这条流水线是深入 RetDec 二次开发的基础。3. 运行与扩展测试仓库的测试分布在 tests 目录覆盖bin2llvmir、capstone2llvmir各架构指令翻译、common、config、ctypes、demangler、fileformat、loader、serdes、utils等模块可用-DRETDEC_TESTSON构建后由scripts/retdec-tests-runner.py运行是验证上述库接口与格式解析行为的最佳参照。结语CHANGELOG 不仅是版本变更的流水账更是理解 RetDec 架构演进的钥匙v5.0 的库化让 RetDec 从一组脚本二进制进化为可嵌入、可链接、可配置的现代反编译平台retdec库 retdec-decompiler可执行文件 retdec-fileinfoJSON 配置构成了清晰的公共面。对希望集成反编译/静态分析能力的开发者而言v5.0 的库接口include/retdec/retdec/retdec.h与 retdectool 示例是最直接的起点对希望改进检测能力的研究者fileinfo的 JSON 配置与 YARA 规则仓库则提供了低门槛的扩展路径。在有限维护模式的现状下基于库接口的二次开发反而是比依赖脚本工具更稳健的集成方式。赞分享逆向工程静态分析【免费下载链接】retdecRetDec is a retargetable machine-code decompiler based on LLVM.项目地址https://gitcode.com/gh_mirrors/re/retdec点击查看免费下载相关推荐5分钟掌握ShareX免费开源的屏幕捕捉与文件分享神器5分钟掌握ShareX免费开源的屏幕捕捉与文件分享神器 还在为寻找一款功能全面、完全免费的截图工具而烦恼吗ShareX这款开源屏幕捕捉神器能完美解决你的所有桌面应用图像处理音视频OCR基于 LLVM 的 RetDec 可重定向机器码反编译器安装部署、命令行实战与源码构建全指南基于 LLVM 的 RetDec 可重定向机器码反编译器安装部署、命令行实战与源码构建全指南 RetDecRetargetable Decompiler是逆向工程静态分析Wasmer 发布演进全解从 0.3 到 7.4 的编译器后端、WASIX 与运行时架构变迁Wasmer 发布演进全解从 0.3 到 7.4 的编译器后端、WASIX 与运行时架构变迁 本篇文章以仓库根目录 CHANGELOG.md https://语言运行时JIT编译上一篇lax.js与微前端架构大型应用中的动画一致性下一篇AKShare数据平台的终极指南下一代金融数据接口的完整愿景创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

gsd-core ADR-457 迁移第三批次:10 个运行时模块转向严格 TypeScript 源码与 Build-at-Publish 构建流程 2026/9/25 6:55:24

gsd-core ADR-457 迁移第三批次:10 个运行时模块转向严格 TypeScript 源码与 Build-at-Publish 构建流程

【免费下载链接】gsd-core Git. Ship. Done - Core 项目地址: https://gitcode.com/gh_mirrors/ge/gsd-core 点击查看 免费下载 本文为 gsd-core(GSD Core,一个面向 AI 编码代理的元提示与上下文工程系统)的运行时类型化工程实践…

阅读更多 →
内网流媒体安全:浏览器访问模式的四大优势与落地配置 2026/9/25 6:55:24

内网流媒体安全:浏览器访问模式的四大优势与落地配置

折腾内网流媒体的朋友,应该都经历过这种场景:家里NAS跑着Jellyfin或者Emby,手机、电视、电脑上各装一个客户端,家人用起来确实方便。但时间一长,你总会发现不对劲——客户端在后台做了什么你根本不知道,它有…

阅读更多 →
Atlas 300V 24G加速卡部署YOLO实战:从硬件规格到多路视频流优化 2026/9/25 6:55:24

Atlas 300V 24G加速卡部署YOLO实战:从硬件规格到多路视频流优化

做边缘AI部署的,今年绕不开的一个词就是Atlas。尤其是Atlas 300V Pro 24G这张卡,在智慧园区、工业质检、安防视频分析这些场景里出镜率非常高。后台经常有人问:Atlas 300V 24G是运算加速卡吗?能跑YOLO吗?单卡到底能扛几…

阅读更多 →
VisiData 剪贴板完全指南:行/单元格/列的内外部复制粘贴与系统剪贴板对接 2026/9/25 6:55:18

VisiData 剪贴板完全指南:行/单元格/列的内外部复制粘贴与系统剪贴板对接

数据分析CLI数据可视化 【免费下载链接】visidata A terminal spreadsheet multitool for discovering and arranging data 项目地址: https://gitcode.com/gh_mirrors/vi/visidata 点击查看 免费下载 VisiData 是一款在终端中浏览与整理数据的“电子表格多面手”&…

阅读更多 →
Hypothesis 复杂输入生成全指南:从 `from_type` 到 `composite` 与 `data` 策略 2026/9/25 6:55:18

Hypothesis 复杂输入生成全指南:从 `from_type` 到 `composite` 与 `data` 策略

测试开发工具 【免费下载链接】hypothesis The property-based testing library for Python 项目地址: https://gitcode.com/gh_mirrors/hy/hypothesis 点击查看 免费下载 属性测试(property-based testing)入门之后,往往会遇到两…

阅读更多 →
Atlas 300V 24G部署YOLOv5全流程实战:驱动、模型转换到多路视频推理 2026/9/25 6:55:18

Atlas 300V 24G部署YOLOv5全流程实战:驱动、模型转换到多路视频推理

如果你也在搜“atlas 部署 yolo”的案例,或者被“atlas 300v 24g 是运算加速卡吗”这个问题纠结过,那这篇内容应该能帮你省下不少时间。我手上正好有一张 Atlas 300V 24G,前后折腾了快三个月,从驱动装不上、模型转换报错&#xff…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉