【创新项目探索】Linux内核验证套件(LKVS)

LKVS 介绍

Linux内核验证套件(LKVS)是英特尔内核组开发的一款面向Linux内核测试的综合测试工具集。目前已在openEuler社区开源它汇聚了英特尔内核开发和验证团队多年积累的专业知识,具有专业性轻量级、低耦合、高覆盖三大特点,可广泛应用于Linux系统开发和验证的多个场景。

高覆盖测试内容

● 全面测试范围

LKVS集成了600余项测试用例,覆盖Linux内核的20余项关键特性,测试领域涉及CPU特性、电源管理和安全特性等方面。具体来说包括这些英特尔平台的功能:

CET(Control flow Enhancement Technology),cstate,Intel_TH(Trace Hub),Intel_PT,UMIP(User-Mode Instruction Prevention),xsave,IFS(In Field Scan),FRED (in progress),guest-test,IFS,ISST,PMU,RAPL,SDSI,splitlock,tdx-compliance,thermal,CPU topology,UFS,AMX。

● 深入测试覆盖

测试内容高度专业,紧跟英特尔当下开发中的新平台、新功能,能够有效覆盖到关键内核路径和硬件集成细节,挖掘异常并提高稳定性。

● 持续扩展测试

LKVS套件从上线开始,就不断在迭代更新中。通过涵盖广泛的专业测试内容,LKVS能够有效保证Linux环境在英特尔平台上的健壮性,发现新的或者留存的隐患和异常。

灵活解耦的测试框架

● 解耦组件设计

LKVS是从大量内部功能测试、回滚测试框架中解耦并独立出来的测试用例。最大程度降低了测试用例的耦合度,使得测试用例更易于移植和扩展。可以方便地集成至各类基础设施比如openEuler社区的EulerPipeLine(CI/CD)系统。

● 多语言测试脚本

测试套件支持C语言、bash、python等语言编写测试用例。因为各个功能测试之间相互独立,使得各个不同的功能测试之间零耦合,使其对开发者更友好,易于贡献测试用例。

通过这种可扩展可定制的低耦合架构,有利于LKVS的长期演进。

丰富的场景应用

LKVS可广泛服务于以下关键场景:

● CI/CD集成检验

自动化测试减少集成风险,提高质量管控水平;

● 基线功能验证

充分覆盖基线功能,成熟度评估;

● 硬件兼容性

验证最新硬件特性,避免兼容性问题;

● 安全审计

主动发掘和减轻安全隐患;

● 回归测试

定位修补程序和版本升级可能引入的问题。

后续规划

本项目已开源在openEuler社区,并且已经集成到EulerPipeLine系统中,计划中的开发:

支持将要发布的新平台的新功能。

支持新的内核特性。

进一步完善框架本身,提高测试用例的可扩展性和可移植性。

完善虚拟机测试场景,多虚拟机测试场景。

LKVS是结合Linux Kernel专业知识而产出的工程化测试集,可广泛应用于Linux系统开发和验证的多个场景。其专业性、低耦合和高覆盖等特点为生态中的众多参与方创造了价值。

欢迎访问和使用:

gitee.com/openeuler/i...

相关推荐
云计算磊哥@7 分钟前
运维开发宝典026-MySQL02数据库表操作
运维·数据库·运维开发
weixin_5231853212 分钟前
Collections.unmodifiableMap详解:真的不可修改吗?
java·linux·前端
天天进步201538 分钟前
Tunnelto 源码解析 #9:控制服务器设计:Warp、WebSocket、Ping/Pong 与连接保活
运维·服务器·websocket
凡人叶枫1 小时前
Effective C++ 条款04:确定对象被使用前已先被初始化
java·linux·开发语言·c++·嵌入式开发
云栖梦泽1 小时前
玩转RK3506SDK
linux·嵌入式硬件
极客先躯1 小时前
高级java每日一道面试题-2026年02月01日-实战篇[Docker]-Docker Volume 的生命周期管理是怎样的?
java·运维·docker·容器·持久化·架构图·容器卷
Java面试题总结2 小时前
Linux-Ubantu-贴士-apt的地盘
linux·运维·服务器
志栋智能2 小时前
超自动化巡检:提升MTTR,缩短业务影响时间
运维·自动化
kong@react2 小时前
Rocky Linux 10.2 全面解析:企业级 CentOS 替代方案及保姆级docker安装
java·linux·运维·docker
凡人叶枫3 小时前
Effective C++ 条款07:为多态基类声明 virtual 析构函数
linux·c语言·开发语言·c++