喜报 | 我院学生团队在全国大学生系统能力大赛操作系统设计赛勇创佳绩!
2022年8月22日,经评审组评审和组委会复核,第二届全国大学生系统能力大赛操作系统设计赛决赛获奖名单正式公布。
本届大赛分为“内核设计”和“功能挑战”两个赛道,自2022年1月启动以来,内核设计赛道共有68所高校的110支队伍报名参赛,功能挑战赛道共有76所高校的242支队伍报名参赛。经过激烈角逐,我院学生团队最终荣获一等奖1项、二等奖1项。
功能挑战赛道获奖名单
内核设计赛道获奖名单
团队项目背景
在“互联网+”时代背景下,云计算催化出大数据在应用领域的“井喷”。支撑云计算服务的操作系统既是解决卡脖子问题的基础软件,也是“东数西算”数字化基建中不可或缺的环节。RISC-V 作为国家大力发展的处理器体系结构,很有希望成为国产云计算的主要载体。但作为一种较新的体系结构,RISC-V上操作系统功能不全,性能不佳。因此,我院两个团队项目应运而生。
功能挑战赛道
一等奖
我院寿黎但老师指导的金角银角与钝角团队获得功能挑战赛道一等奖。
作品介绍
我们在Linux Kernel中搭建了一个16KB粒度的虚拟内存系统,实现了16KB粒度的two stage的内核虚拟化流程,设计并完成了在stage-2阶段的哈希寻址模式。这些工作有效提升了基于RISC-V处理器的Linux系统的性能,为解决服务器的高性能计算需求提出了一个可行的解决方案。
为了进一步提升系统访存性能,我们希望通过优化stage-2页表的页粒度和页表机制来降低TLB压力,提升访存性能,间接地降低进程切换开销。所以做出了以下两点优化:①在RISC-V的仿真器和Hypervisor中实现16KB粒度的页表,从而降低TLB压力,提升TLB命中率,最终提升访存性能;②设计并使用16KB的哈希地址转换模式,减少寻址开销,从而进一步提升访存性能。
我们在LMbench、Redis等测试集上进行了大量的测试实验,验证了所实现的16KB粒度多级页表与哈希页表的功能和性能。
内核设计赛道
二等奖
我院申文博老师指导的caporustos团队获得内核设计赛道二等奖。
作品介绍
我们使用Rust语言实现了能在HiFive RISC-V开发板上运行的操作系统,包含内存管理、进程调度、文件系统三个部分。内存管理部分基本依据 rCore 的实现进行基础架构设计,并在此基础上完成了copy-on-write 以及动态链接的模块;充分利用了 HiFive Unmatched 开发板内存容量更大的优势,但同时也注重避免内存泄漏问题。进程调度部分综合 Windows 操作系统以及 Linux 操作系统的特色,对进程和线程做出了区分。文件系统部分根据经典的教科书式五层文件系统设计。
在拓展部分,我们首先实现了一个简易的shell,可以实现基本的cd,ls等Linux命令,也可以启动运行程序,力图在测试点之外,使得我们的操作系统功能更加完善。作品系统实现了超过100个系统调用,实现了一个功能完整、性能优化、具有一定可扩展性的操作系统。
赛事介绍
全国大学生系统能力大赛操作系统设计赛由系统能力培养研究专家组发起、由全国高校计算机教育研究会主办,是一场面向高校大学生的全国性大赛。作为面向操作系统领域唯一的全国性学科竞赛,其致力于以学科竞赛推动专业建设和计算机领域创新人才培养体系改革,培育我国高端芯片、关键基础软件的后备人才,为高水平计算机人才成长搭建交流、展示、合作的开放平台。
内容来源:计算机系统能力培养公众号、获奖项目组
图文排版及责任编辑:石澜宁