Ubuntu下用QEMU模拟运行OpenBMC

【OpenBMC 系列】1.OpenBMC 开发环境搭建 文档目的:如何搭建OpenBMC开发环境 受众:熟悉 Linux 和 BMC 的程序员 先决条件:当前的 Linux、Mac 或 Windows 系统 概述 OpenBMC 使用Yocto项目作为其底层构建和分发生成框架。主要的 OpenBMCREADME提供了有关使用 Yocto 和 OpenBMC 的信息。有一些机制可以使用此过程来构建您的更改,但对于您的软件的初始调试和验证来说,它可能既缓慢又麻烦。本指南重点介绍如何使用 OpenBMC 软件开发工具包 (SDK) 和QEMU快速测试新更改.. 阅读详情

1、前言

        在调试过程中,安装了很多依赖库,具体没有记录。关于kvm,也没理清具体有什么作用。本文仅记录,用QEMU成功的将OpenBMC跑起来的过程,做备忘,也供大家参考。

2、环境信息

VMware® Workstation 15 Pro

sunny@ubuntu:~$ uname -a
Linux ubuntu 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May 24 00:51:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

3、虚拟化设置

进入虚拟机:

1、查看是否支持虚拟化
   sunny@ubuntu:~$ LC_ALL=C lscpu | grep Virtualization
   Virtualization:      VT-x
   Virtualization type: full

2、查看核心数,应该大于0
   sunny@ubuntu:~$ egrep -c '(vmx|svm)' /proc/cpuinfo
   4

3、安装KVM,已经安装过
   sunny@ubuntu:~$ sudo apt install qemu qemu-kvm virt-manager bridge-utils
   [sudo] password for sunny: 
   Reading package lists... Done
   Building dependency tree       
   Reading state information... Done
   bridge-utils is already the newest version (1.5-15ubuntu1).
   qemu-kvm is already the newest version (1:2.11+dfsg-1ubuntu7.42).
   qemu is already the newest version (1:2.11+dfsg-1ubuntu7.42).
   virt-manager is already the newest version (1:1.5.1-0ubuntu1.2).
   The following packages were automatically installed and are no longer required:
     gir1.2-goa-1.0 gir1.2-snapd-1
   Use 'sudo apt autoremove' to remove them.
     0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

3、重启虚拟机
    sunny@ubuntu:~$ reboot

4、虚拟机起来后,将用户添加到适当的组中,启用并启动libvirt服务
    sunny@ubuntu:~$ sudo useradd -g $USER libvirt
    sunny@ubuntu:~$ sudo useradd -g $USER libvirt-kvm
    sunny@ubuntu:~$ sudo systemctl enable libvirtd.service
    sunny@ubuntu:~$ sudo systemctl start libvirtd.service
      Synchronizing state of libvirtd.service with SysV service script with         
      /lib/systemd/systemd-sysv-install.
      Executing: /lib/systemd/systemd-sysv-install enable libvirtd

4、安装QENU

1、下载源码
   sunny@ubuntu:~$ wget https://download.qemu.org/qemu-6.2.0.tar.xz

2、解压
   sunn
Openbmc系列之自动化测试框架1 Openbmc作为当下BMC固件领域最流行的开源软件,具备从需求计划、开发、调试、测试、版本管理等完整的体系。在测试领域,Openbmc基于python的robotframework框架,实现Openbmc的自动化测试,为高效发布Openbmc版本提供有力支持。本文作为测试系列文档一,介绍Openbmc自动化测试虚拟Openbmc的环境搭建。 阅读详情

相关推荐

OpenBMC开发——qemu添加新设备及设备注册至I2C子系统

Step2:i2cdectect -y 1扫描i2c-1总线下挂载的物理设备,可以看到已经扫描到了0x50的EEPROM、0x52的PCA9548、0x48的emc1413共计三个设备,因为在dts文件中已经配置了三个设备的信息,所以系统启动时自动扫描到了相应的硬件设备,且存在相应的三个设备驱动程序可以匹配并处理这三种设备,并将设备注册到i2c子系统中,故此时扫描出的三个地址都是UU,表明都已经被驱动程序占用;

TheNewMilkyWay的博客 2988

Ubuntu下用QEMU运行OpenBMC的完整实践指南

OpenBMC是一种面向服务器基板管理控制器(BMC)的开源固件平台,其核心是基于Linux的嵌入式系统,依赖ARM64架构、IPMI协议栈与硬件抽象层(HAL)协同工作。理解其启动流程(UEFI→Kernel→systemd→bmcweb)、设备树映射机制及QEMU虚拟化支持原理,对开发调试和Redfish/IPMI协议验证至关重要。在Ubuntu宿主环境中,借助qemu-system-arm模拟virt机器类型,可构建高保真、可调试、可扩展的OpenBMC沙盒环境,支撑固件开发、API自动化测试与生产级

weixin_29176179的博客 243

保姆级教程:用QEMU在Ubuntu上快速启动一个OpenBMC模拟环境(Romulus平台)

本文提供了一份详细的保姆级教程,指导用户如何在Ubuntu上使用QEMU快速启动OpenBMC模拟环境(Romulus平台)。通过预编译镜像和精简配置方案,用户可以在10分钟内搭建完整的OpenBMC环境,无需物理设备,适合学生、开发者和运维工程师学习和测试BMC相关功能。

weixin_29189003的博客 140

QEMU模拟AST2500跑OpenBMC:无真实硬件的BMC固件开发与验证指南

嵌入式Linux开发常常依赖实体硬件,但基板管理控制器(BMC)固件的调试不一定非要有真实服务器主板。BMC本质上是独立管理主机电源、传感器与远程访问的微型电脑,传统开发流程受限于昂贵且稀缺的硬件资源。借助QEMU这款优秀的开源模拟器,配合ASPEED AST2500的机器模型,开发者能在纯虚拟环境中完整运行OpenBMC固件——从U-Boot引导到systemd初始化,再到Redfish和IPMI服务全部可观察、可操作。这一方案的底层逻辑基于Yocto项目构建整个嵌入式Linux系统,镜像直接映射为虚拟F

weixin_31815843的博客 240

OpenBMC 开发环境的快速搭建与实战构建

本文详细介绍了OpenBMC开发环境的快速搭建与实战构建方法,特别针对编译和构建过程中的常见问题提供了优化方案。通过预构建缓存加速、QEMU模拟运行等技巧,帮助开发者将传统4-6小时的构建时间缩短至1小时以内,大幅提升开发效率。

weixin_30693683的博客 391

Ubuntu下用QEMU仿真AST2600运行OpenBMC实战指南

OpenBMC是面向服务器硬件的嵌入式基板管理控制器固件,其核心依赖ARM架构的BMC SoC(如ASPEED AST2600)与底层硬件寄存器交互。QEMU作为开源系统级模拟器,通过精准建模AST2600的SPI Flash、I2C、UART及GIC中断控制器等关键外设,实现对OpenBMC完整启动流程(u-boot→kernel→rootfs)和IPMI/Redfish协议栈的高保真仿真。该方案规避了Docker无法模拟裸机寄存器、VMware不支持ARM架构等技术限制,在Ubuntu 22.04 LT

weixin_29189363的博客 230

Ubuntu 18.04下OpenBMC开发环境搭建全攻略(含QEMU配置避坑指南)

本文详细介绍了在Ubuntu 18.04系统上搭建OpenBMC开发环境的完整流程,重点涵盖源码获取、交叉编译工具链配置以及使用QEMU进行系统模拟。文章特别提供了QEMU网络端口映射的详细配置与常见避坑指南,旨在帮助嵌入式与服务器管理开发者快速构建高效、稳定的BMC固件开发与测试沙盒环境。

c6d7e8f9g的博客 825

OpenBMC 开发实战:从源码编译到QEMU模拟部署

本文详细介绍了OpenBMC开发实战,从源码编译到QEMU模拟部署的全过程。涵盖开发环境搭建、源码获取、镜像构建、QEMU配置及调试技巧,帮助开发者快速掌握OpenBMC定制化开发,提升服务器硬件管理效率。

weixin_29191081的博客 402

OpenBMC开发环境搭建:从VirtualBox到QEMU的完整流程(Romulus平台实测)

本文详细介绍了OpenBMC开发环境搭建的完整流程,特别针对Romulus平台,从VirtualBox虚拟机配置到QEMU仿真环境部署。涵盖硬件资源评估、Ubuntu系统优化、OpenBMC源码获取与初始化,以及QEMU定制版本安装和启动配置,帮助开发者快速搭建高效的OpenBMC开发环境。

weixin_29189377的博客 409

在Windows 11上用WSL2和QEMU模拟器,5分钟启动一个OpenBMC开发环境(避坑指南)

本文详细介绍了如何在Windows 11上利用WSL2和QEMU模拟器快速搭建OpenBMC开发环境,无需专用硬件。从环境准备、源码获取、镜像构建到网络配置和Web界面定制,提供了完整的避坑指南和实用技巧,帮助开发者高效进行BMC固件开发和测试。

weixin_30381317的博客 292

OpenBMC:通过qemu-system-arm运行编译好的image

将openbmc/build/romulus/tmp/deploy/images/romulus/obmc-phosphor-image-romulus.static.mtd拷贝到qemu-system-arm的同级目录。完成编译后可以通过qemu-system-arm进行模拟加载,以便在没有BMC硬件的情况下进行调试。退出qemu-system-arm通过:ctrl+a然后再按x。3.通过qemu-system-arm加载。1.下载qemu-system-arm。在openbmc的上级目录上执行。

风静如云的博客 756

qenu关键函数分析

qenu关键函数分析,内存分析,很仔细,介绍了函数的实现过程和极其功能

bmcweb:适用于OpenBMC的Redfish,KVM,GUI和DBus Web服务器的所有操作

OpenBMC Web服务器 该组件试图成为openbmc的“执行所有操作”嵌入式Web服务器。 能力 此时,Web服务器实现了一些接口: 身份验证中间件,它支持基于cookie和令牌的身份验证,以及由Linux PAM身份验证凭据支持的CSRF防护。 (不完全)尝试在C ++中复制phosphor-dbus-rest接口。 现在,一些端点定义可以按预期工作,但是仍然有很多工作要做。 界面的功能部分被设计为可以正确地用于荧光粉webui,但可能还不完整。 复制rest-dbus后端接口,以允许bmc调试登录用户。 首次尝试使用只读的redfish接口。 当前,redfish接口针对ServiceRoot,SessionService,AccountService,Role和ManagersService。 填充了此处的某些功能以使开发成为可能。 例如,仅存在一个用户角色。 在运行

PCIe Crosslink

PCIe Crosslink(交叉连接)是一种特殊的PCIe链路连接方式,允许两个PCIe设备(通常是Root Complex或Endpoint)是指两个PCIe设备(如两个CPU、两个FPGA或两个GPU)通过PCIe链路直接连接,形成点对点(P2P)通信通道。:两个Intel/AMD CPU通过PCIe Crosslink直接通信(替代UPI/Infinity Fabric)。:主板需提供PCIe Crosslink连接(如特定插槽支持x16/x8 Crosslink)。

zly8865372的博客 1631

外贸英文函电第三版张梅英课后习题答案解析

我参加了一些外贸模拟竞赛,将所学知识运用到实际工作中,取得了不错的成绩。此外,我还积极参与了一些外贸实践活动,如参加实习、担任志愿者等,从中积累更多的经验。在这个过程中,我逐渐摸索出了一套适合自己的学习方法,不仅提高了学习效果,还增强了自信心。通过学习这本书,我们可以提高自己在外贸领域的沟通能力,更好地应对未来的工作挑战。在学习这本书的过程中,我遇到了一些困难,比如对某些专业术语的理解不够透彻,对信件的结构和格式掌握不够熟练。出版社: 高等教育出版社。上传者: ʚ河西撒手没ɞ。

weixin_58833001的博客 1420

在ROS中使用行为树

在ROS中使用行为树 我提供的工程示例文件: demo链接 文章目录在ROS中使用行为树0、 学习本教程的前提1、 behaviorTree 库安装(ROS使用下的安装方式)2、 处理 behaviortree 库并准备好 service 和 ros action2.1 对ROS 的 service 和 action 进行封装,使其在 behaviortree 上使用更加方便。2.2 创建一个 service 和一个 action2.3 创建与决策树相关的数据类型2.4 修改`package.xml`文件2

qq_37416258的博客 6373

ROS2 DDS中间件(图文并茂+超详细)

DDS 的目标场景在端上,致力于使端上的应用可以更容易的进行通信,由于它的完全分布式架构,可以方便的将端上的应用拆分为多进程架构,从而提高端的容错能力。从产品定位角度来讲,它和 Chromium 中的 mojo 都是端上的通信中间件,只不过 mojo 不强调分布式,内部集成了更多的特定于端上的机制,比如句柄的传输,消息的缓存等。但由于 mojo 生于 Chromium,目前官方并没有把它独立出来,所以用起来比较不方便。而 DDS 或许可以在简单的场景下作为 mojo 的替代品。

weixin_39939185的博客 5272

【Power Compiler手册】13.UPF多电压设计实现(2)

在这个场景中,在约束传播期间,工具会比较BLOCK中的原子电源域与TOP设计中的原子电源域,并且确认所有属性都匹配。因此,域合并成功,工具会丢弃来自BLOCK的域。在这个场景中,在约束传播期间,工具会比较BLOCK中的原子电源域与TOP设计中的非原子电源域,发现电源域不匹配。在这个场景中,在约束传播期间,工具会比较BLOCK中的非原子电源域与TOP设计中的原子电源域,发现电源域不匹配。在这个场景中,在约束传播期间,工具会比较BLOCK中的原子电源域与TOP设计中的原子电源域,发现它们的一些属性不匹配。

QRBQ 746

海康视觉算法平台VisionMaster 4.3.0 C# 二次开发01 加载方案并获取结果

第一次使用海康视觉算法平台VisionMaster 4.3.0,项目中要使用这个平台进行视觉处理并获取结果。

StevenChen的博客 7846

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

Keras中神经网络可视化模块keras.utils.visualize_util安装配置方法

jacke121的专栏 2753

8.2 发展趋

分子泵技术正处在一个快速变革的时代,面对日益增长的应用需求和不断涌现的技术挑战,其发展呈现出多元化、智能化和高度集成化的趋势。这些发展趋势不仅代表着技术创新的方向,也预示着分子泵在未来工业体系中将要扮演的更加重要的角色。

技术工作者 109

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

上一篇: BMC知识框图
下一篇: Debian10系统安装,磁盘分区和扩容
拥抱藍天
博客等级 码龄12年 72粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拥抱藍天

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值