软件学报杂志

软件学报杂志2026年第6期

  • BinDec: 面向RISC-V的LLM与符号执行协同反编译方法
    李玉璋,张熙,徐涛
    反编译是软件逆向工程中的基础技术, 其目标是从面向硬件的二进制代码中恢复出高级语言代码, 以支持人工阅读、分析或重工程任务. 尽管该技术已得到广泛研究, 但传统基于规则的反编译器所生成的反编译代码往往可读性较差, 且难以复用. 此外, 由于传统反编译器的开发周期较长, 其对RISC-V等新兴指令集架构的支持通常较为滞后. 在当前大语言模型(large language model, LLM)技术广泛应用于自动化软件工程任务并取得显著成效的背景下, 面向RISC-V架构的反编译需求, 提出了一种结合LLM与符号执行的反编译方法BinDec. 该方法通过LLM生成与符号执行验证的交替迭代, 充分利用LLM的代码理解与生成能力, 以产生更易于理解与重用的反编译代码; 同时借助符号执行的代码分析与验证能力, 确保生成结果的可靠性. 通过一系列实验对BinDec的有效性进行了评估, 实验结果表明, 该方法在达到与传统反编译器相近的语义准确性的同时显著提升了代码的可读性.
  • 面向RISC-V指令集多样性的兼容性感知多层级构建方法
    屈晟,苏运强,林哲远,燕言言,冯洋,赵琛
    RISC-V指令集架构凭借其开放性与模块化设计, 推动了芯片架构实现创新与定制化, 但与此同时也引发了严重的软件生态碎片化问题. 传统的跨平台软件构建机制(如现场编译、IFUNC与Multilib)在RISC-V生态中面临兼容性差、维护成本高与优化粒度不足等显著挑战, 亟需新的解决方案. 提出了一种面向RISC-V平台的兼容性感知多层级编译方法——RuyiBuild工具链, 以LLVM IR为中间表示, 结合非侵入式编译流程拦截机制, 实现了对现有软件构建系统的透明适配, 使构建生成的操作系统软件包既具备面向不同RISC-V扩展指令集的兼容性, 又可以面向最终运行平台进行基于扩展指令集的自适应优化, 有效解决了RISC-V指令集多样性背景下, 多指令扩展组合与平台差异下二进制高性能优化与广泛兼容性的双目标统筹实现问题. RuyiBuild工具链围绕LLVM IR的提取与部署、转换与优化设计了一套完整的跨平台软件分发与精细化优化框架, 主要包含4个核心机制: 透明化双路径编译与LLVM IR提取机制、动态链接库LLVM IR合并与链接转换机制、LLVM IR文件部署与发行版RPM自动化集成机制以及客户端与云端LLVM IR动态转换与资源自适应调度机制. 在技术实现方面, RuyiBuild工具链通过封装编译工具与系统命令, 在不修改源码与构建系统的前提下实现LLVM IR的全路径提取与分发, 并在部署阶段支持LLVM IR与传统二进制的同步发布. 同时, 为支持多种目标设备和微架构的性能优化, RuyiBuild支持客户端资源感知的延迟转换、云端面向多架构的适配与LLVM IR动态转换. 实验结果表明, RuyiBuild能够面向多种RISC-V指令集扩展与微架构组合实现对目标程序的部署, 并在性能、兼容性、构建开销与部署复杂度方面取得较好平衡, 解决了硬件兼容性与硬件性能充分发挥之间的矛盾. 为RISC-V生态中的软件构建、部署与适配提供了新的解决思路, 具备良好的学术价值与实践推广潜力.
  • MARC: 基于多智能体协同的硬件安全缺陷早期检测方法
    芮志清,凌祥,曹方泽,罗天悦,吴敬征
    随着开源RISC-V架构的迅猛发展, 其开放与模块化的特性在催生繁荣硬件生态的同时, 也给硬件电路的安全性保障带来巨大挑战. 在硬件设计流程的前期进行安全缺陷早期检测, 能够以最低成本在缺陷固化于物理芯片前将其消除. 尽管静态分析已用于硬件安全缺陷早期检测, 但由于规约知识未充分利用以及代码上下文语义理解不足, 现有检测方法存在高漏报率和高误报率的问题. 针对这些问题, 提出MARC, 一种基于大语言模型多智能体协同的硬件安全缺陷早期检测方法. 该方法通过构建设计依赖分析、文档分析、安全缺陷检测、安全缺陷确认这4类智能体及协同工作框架, 从补充跨模块上下文、结构化模块文档知识、快速初筛安全缺陷、深度推理安全缺陷风险分析等多维度协同作用, 有效降低硬件电路设计阶段早期安全缺陷检测的误报率, 提升检测准确性. 实验结果显示, MARC方法在工业级数据集上将早期缺陷检测的漏报率和误报率分别降低至0.3829和0.3695, 相较于基准方法分别降低了约18.2%和19.1%. 上述实验结果充分表明, MARC 有效缓解了硬件安全缺陷早期检测中的误报问题, 提升了安全缺陷检测的准确性与效率, 为硬件安全提供了更可靠的技术支撑. 另外, 还支撑作者团队夺得HACK@DATE 2025硬件漏洞挖掘竞赛全球冠军, 成功挖掘了1个获CVE编号的硬件漏洞, 在真实世界中验证了其有效性.
  • 面向RISC-V架构的深度学习算子测试
    刘佳玮,高岩,张犬俊,尚也,房春荣,陈振宇
    随着边缘计算和端侧智能软件的发展, RISC-V 架构因其开源、模块化及低成本优势在学术界和产业界受到广泛关注. 然而, 将智能软件部署到RISC-V架构上面临诸多挑战. 智能软件的运行依赖于执行卷积、矩阵乘法、归一化等基本张量运算的深度学习算子, 一旦算子出现问题, 将直接影响上层大量智能软件的执行效率、准确性和可靠性, 因此算子质量的评估至关重要. 现有算子测试方法主要针对 x86 架构, 难以刻画不同计算复杂度对 RISC-V 架构下受限内存、功耗与系统资源使用行为的影响差异. 为此, 提出 RIVdoo, 一种面向 RISC-V 架构的深度学习算子质量评估方法. RIVdoo 通过基于算子输入空间复杂度的分组策略系统性地覆盖不同计算负载, 结合多维度指标评估精度、执行效率、内存占用及系统开销, 并引入复杂度放大系数的差分测试机制, 有效识别性能异常及架构适配问题. 在覆盖计算密集型、内存密集型和轻量型的47个算子的实验中, RIVdoo揭示了不同算子库和优化策略在 RISC-V 架构下呈现出的显著性能权衡与适配差异: TFLite以1.5–2倍内存开销换取30%–50%速度提升的策略在资源受限场景下面临内存瓶颈; TVM的动态存储调度因RISC-V有限的TLB和缓存容量导致缺页率比TFLite高60%–150%; RVV向量化在部分算子和低复杂度场景下因软件模拟和启动开销导致性能劣化, 说明现有优化策略缺乏对RISC-V平台特性的针对性设计. 实验结果表明, 不同算子实现和优化策略在 RISC-V 架构下的运行行为具有明显的复杂度相关特征, 仅依赖输出正确性验证难以全面反映其真实部署表现. RIVdoo为面向 RISC-V 架构的算子适配性分析与优化提供了一种系统化的评估手段.
软件学报封面

中文名称:软件学报

杂志社官网:https://www.jos.org.cn/

英文名称:Journal of Software

语言:中文

类别:自动化技术、计算机技术

主 编:赵琛

创刊时间:1990

出版周期:月刊

国内刊号:11-2560/TP

国际刊号:1000-9825

出版地:北京市

咨询工作人员

联系我们

  • 地址:北京8718信箱
  • 电话:010-62562563
  • E-mail:jos (a) iscas. ac. cn