RISC-V技术及生态专题前言①
2022-11-17武延军邢明杰
武延军, 宋 威, 张 科, 邢明杰
1(中国科学院 软件研究所, 北京 100190)
2(中国科学院 信息工程研究所, 北京 100093)
3(中国科学院 计算技术研究所, 北京 100190)
4(中国科学院大学, 北京 100049)
从RISC-V指令集的诞生到现在已经历了10多个年头. 国内的企业和科研机构也已从最开始的观望逐渐转变为主动接纳和积极推动这一新的开放体系架构.秉承去年第一届专题的初衷, 今年我们再一次组织RISC-V技术及生态的研讨, 记录、探讨和推广国内产业和学术界在RISC-V相关问题上的最新进展和贡献.
今年的专题完全采取了自由投稿的方式, 收到8篇投稿, 在篇数上和去年持平. 其中7篇通过了形式审查. 特约编辑先后邀请了10多位相关领域专家参与审稿工作, 每篇投稿至少邀请2位专家进行评审. 稿件经初审、多轮复审、终审, 并在RISC-V技术及生态研讨会上进行报告, 最终有6篇论文入选本专题. 这些论文涵盖了RISC-V平台的性能优化、基础软件改进、架构安全测试和嵌入式系统教学等诸多方面的内容.
Kubernetes作为集群容器编排管理平台, 已广泛应用于各种容器化服务场景. 论文“基于Kubernetes的RISC-V异构集群云任务调度系统”针对当前Kubernetes不能调度RISC-V指令集架构的计算任务, 尤其是现有调度算法无法利用RISC-V用户自定义扩展指令集架构特性提供高性能可靠服务的问题, 提出一种基于Kubernetes异构指令集感知的集群调度系统, 可以提高集群调度正确性和资源利用率.
QEMU作为在硬件平台就绪之前开发内核和驱动的标准虚拟环境, 对RISC-V生态的发展有着重要作用. 论文“基于地址空间标识符的QEMU动态跳转优化”针对QEMU现有的两级翻译块缓存存在翻译效率低下的问题, 提出了通过引入空间标识符来记录内存页的版本信息, 实现了内存页映射的动态监测并减少了页表的运行时查询频次, 最终降低了基本块地址翻译的性能开销.
二进制程序体积偏大是限制RISC-V架构被用于(超)小内存嵌入式系统的一个根本障碍. 在现有压缩指令集扩展(RVC)的基础上, 最新的Zce子扩展有望进一步压缩程序体积. 论文“基于链接器的RISC-V字加载指令优化”将Zce子扩展实现在了LLVM的链接器LLD中, 并发现现有的Zce扩展方式未能发挥其最大的指令压缩能力, 为社区进一步优化二进制程序体积指明了很好的前进方向.
调试器是软件开发过程中的一个重要部件, 而现有的RISC-V调试方案存在性能低、部署成本高以及二次开发难度大等问题. 在论文“基于轻量化远程过程调用的RISC-V调试协议栈方案”中, 作为国产RISC-V处理器的先行者, 芯来科技提出了基于异步I/O、模块化和轻量级RPC的调试协议栈方案, 显著提高了调试器的性能, 并降低了开发、维护和测试成本.
内存安全是计算机安全的一个重要组成部分, 然而处理器的内存安全评估一直是一个难解的问题. 论文“跨平台内存安全测试集设计”设计了一个兼具综合性和可移植性的内存安全测试框架, 并开源了含有160项测例的初始测试集, 覆盖了内存的时空安全性、访问控制、指针和控制流完整性等方面, 并在 x86-64和RISC-V两个架构上完成了测试.
随着RISC-V架构在嵌入式系统中的快速发展, 针对RISC-V的系统教学成为了一个亟待解决的问题. 论文“基于RISC-V处理器内核微控制器的智能教学平台”在沁恒微电子RISC-V架构CH32V307微控制器所支持的通用嵌入式计算机生态系统的基础上, 针对高等学校嵌入式系统的教学和技术培训的现实需求,设计实现了一套嵌入式系统智能教学平台并编写了大量的教学实验, 这对嵌入式系统教育教学领域具有借鉴意义.
本专题主要面向RISC-V软硬件相关的研究人员和工程人员, 内容涵盖了体系结构、安全、编译器、自动化测试、嵌入式应用等领域, 反映了我国学者在相关领域的最新研究进展. 感谢《计算机系统应用》编委会对专题工作的指导和帮助, 感谢专题全体评审专家及时、耐心、细致的评审工作, 感谢踊跃投稿的所有作者. 希望本专题能够对RISC-V相关领域的研究工作有所促进.