当前位置: 首页 > news >正文

体验开源OpenHarmony+stratovirt模拟器

文档

openharmony社区
OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,
目标是面向全场景、全连接、全智能时代、基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。
QEMU社区
QEMU(Quick EMUlator)是一种开源的虚拟机监视器和模拟器,它可以模拟多个硬件平台,包括x86、ARM、PowerPC等。
strtovirt社区
StratoVirt是华为使用Rust语言开发的虚拟机,在架构设计和接口上预留了组件化拼装的能力和接口,StratoVirt可以按需灵活组装高级特性直至演化到支持标准虚拟化。
OpenHarmony 教学版
上海交大开发适用于教学的开放平台,完善了OpenHarmony OS 对 QEMU 模拟器的适配,旨在形成开箱即用的实验平台。

亮点

都是开源的,国产化程度高,自由度非常大,个人体验可以任意修改,可以用于学习、科研,普通用户做个玩具看看也行,运行平台支持通用的x86台式电脑或笔记本,若要分发遵从附属协议即可。

编译 qemu

wget https://download.qemu.org/qemu-9.0.0.tar.xz
tar -xvf /qemu-9.0.0.tar.xz
cd qemu-9.0.0
mkdir build
cd build

sudo apt install ninja-build \
libglib2.0-dev \
libgnutls28-dev \
libsdl2-dev \
libvirglrenderer-dev \
libepoxy-dev

../configure --prefix=/usr/local --sysconfdir=/etc --target-list=arm-softmmu,arm-linux-user,aarch64-softmmu,aarch64-linux-user,riscv64-softmmu,riscv64-linux-user,riscv32-softmmu,riscv32-linux-user,x86_64-softmmu,xtensa-softmmu,xtensaeb-softmmu --audio-drv-list="sdl,pa,alsa" \
--enable-tools  --enable-gnutls \
--enable-virtfs --enable-opengl --enable-virglrenderer --enable-sdl

make -j16

编译 stratovirt

git clone https://gitee.com/openeuler/stratovirt.git
cd stratovirt
vim Makeifle 
# delete deb
make build
# rust
cargo build --workspace --bins --release --features "scream_alsa" --features "virtio_gpu" --features "gtk" --features "usb_host" --features "vnc" 

编译 openharmony

repo init -u https://gitee.com/open-harmony-edu-dist/manifest -b refs/heads/OpenHarmony-5.0.2-Release --no-repo-verify
repo sync -c && repo forall -c 'git lfs pull'
build/prebuilts_download.sh

./build.sh --product-name arm64_virt

运行

基本操作完成后,就可以实际体验了。

qemu

sudo ./vendor/edu/x86_64_virt/qemu_run.sh

strtovirt

sudo stratovirt  -machine q35,accel=kvm -m 4G -smp 4 -cpu host 
#后面参数自行添加

功能小结

支持图形界面
支持音频播放
支持鼠标操作
支持键盘操作
支持物理网络
支持虚拟网络
支持物理WIFI
支持虚拟WIFI
支持摄像拍照
支持USB设备
支持安装野生app
支持调试hdcd

附图

在这里插入图片描述


文章转载自:

http://QTAa5x92.hkpyp.cn
http://MORheWQ5.hkpyp.cn
http://j9A11yfM.hkpyp.cn
http://gkIuNrT3.hkpyp.cn
http://0ImxVCOY.hkpyp.cn
http://rTLfdPa2.hkpyp.cn
http://ODkTPc8d.hkpyp.cn
http://lDRzGQdk.hkpyp.cn
http://DsOTPKeO.hkpyp.cn
http://jlK7PNK8.hkpyp.cn
http://XyEAkO7b.hkpyp.cn
http://kQpnSZ70.hkpyp.cn
http://cPVaNJQV.hkpyp.cn
http://nK5FEll7.hkpyp.cn
http://J150Y5Ma.hkpyp.cn
http://Y3lYDwi0.hkpyp.cn
http://zzC11Abr.hkpyp.cn
http://Ir6kGefX.hkpyp.cn
http://cFuKsO3X.hkpyp.cn
http://af099QyV.hkpyp.cn
http://wBRfRwV3.hkpyp.cn
http://zjj0XtFL.hkpyp.cn
http://hrwpgtVo.hkpyp.cn
http://9D7O2fVC.hkpyp.cn
http://9GoVLA9F.hkpyp.cn
http://FeEmJUJC.hkpyp.cn
http://udaC66K8.hkpyp.cn
http://DiwaOkip.hkpyp.cn
http://MzqFNAtJ.hkpyp.cn
http://PbW6qRnJ.hkpyp.cn
http://www.dtcms.com/a/57162.html

相关文章:

  • 第十六届蓝桥杯单片机组4T模拟赛二
  • JVM常用概念之String.intern()
  • Linux(Centos 7.6)命令详解:zip
  • 递归专题刷题
  • linux下ollama离线安装
  • Unity游戏开发中的网格简化与LOD技术(Mesh Simplification LOD)
  • Linux基础--文件权限+软件包管理+管道符
  • mysql中in和exists的区别?
  • 深入解析ECDSA与RSA公钥算法:原理、对比及AWS最佳实践
  • 【AD】5-14 多跟走线设置
  • 16位-32768的补码和原码是什么【补码和原码的转换】
  • spring IOC(实现原理)
  • 如何让一个类作为可调用对象被thread调用?
  • WSL with NVIDIA Container Toolkit
  • 基于单片机的风速报警装置设计
  • 深度学习模型组件之优化器--自适应学习率优化方法(Adadelta、Adam、AdamW)
  • 【Ant Design X Vue】Vue 首个 AI 组件库发布!
  • 前端题目类型
  • 记录小白使用 Cursor 开发第一个微信小程序(一):注册账号及下载工具(250308)
  • manus本地部署方法研究测试
  • 后序线索化二叉树,并找到指定结点前驱,非递归逆序输出
  • 通义万相 2.1 + 蓝耘算力,AI 视频生成的梦幻组合
  • 机器学习图像标记工具MyVision的使用教程
  • Unity, AssetBundle的一些“隐藏”方法
  • JavaScript基础-递增和递减运算符
  • opentitan riscv
  • 前端知识点---库和包的概念
  • 大白话JavaScript实现一个函数,将字符串中的每个单词首字母大写。
  • 用Deepseek写一个五子棋微信小程序
  • Qwen架构与Llama架构的核心区别