项目简介
Mu2eER是一个基于C++的软件项目,运行于Mu2e慢提取调节器ARM SoC上。该软件具有设备驱动、状态管理等功能,借助ACNET协议与硬件通信,同时提供命令行工具方便用户交互,并且支持多种测试。
项目的主要特性和功能
- 设备驱动与控制:通过驱动程序控制和管理Mu2e慢提取调节器ARM SoC上的设备。
- 状态管理:对设备的启动、运行、故障等状态进行管理和监控。
- 命令行交互:利用命令行工具,用户可发送命令、获取状态信息和处理故障。
- ACNET协议支持:借助ACNET协议与硬件设备通信,完成设备的控制与管理。
- 测试支持:提供单元测试和验收测试套件,可对设备进行全面测试。
安装使用步骤
编译
下载项目源码文件后,进入src/目录,运行make命令,可编译出mu2eerd、ACNET接口和命令行工具mu2eercli,二进制文件会生成在bin/目录下(分为主机和目标环境)。
测试
- 单元测试:进入src/目录,运行make tests,测试成功后会生成覆盖率报告。
- 验收测试:进入根目录,运行cucumber。可使用标签控制测试范围,如cucumber --tags @acnet仅运行ACNET接口测试;在无ACNET和ACL的adlinux上,使用cucumber --tags 'not @acnet'运行除ACNET接口外的测试;也可组合标签,如cucumber --tags '@acnet and not @long'。
部署
- 项目的defconfig在ees - buildroot项目(2015.08.x分支)中,Jenkins任务Mu2eER Buildroot会在Mu2eER或Achilles Baseline构建成功时构建此defconfig。
- 运行src/deploy.sh脚本,将目标镜像复制到chablis的/fecode - bdNFS共享目录下以Jenkins构建号命名的文件夹中。
- 运行src/build_select.sh脚本,为指定环境(测试或生产)启用构建。
操作
- 启动/停止守护进程:启动mu2eerd使用/etc/init.d/S78mu2eerd start;停止使用/etc/init.d/S78mu2eerd stop。
- 命令行工具使用- pid命令:- $ mu2eerd pid,显示- mu2eerd守护进程的PID。
- show命令:- $ mu2eerd show,显示- mu2eerd的诊断信息。
- shutdown命令:- $ mu2eerd shutdown,请求- mu2eerd守护进程关闭。
 
ACNET设备数据库脚本
若要执行db/目录下的DABBEL脚本,需在有acl和dabbel命令的开发主机(如clx节点)上操作。
- 提交测试环境脚本:make db_test。
- 仅进行语法检查:make db_test_check。
- 同步数据库脚本:make db_sync。
- 查看脚本差异:make db_diff。
- 查看db/Makefile目标摘要:make help。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】