CN113360249A - 一种基于ARM64的qemu虚拟机运行方法 - Google Patents

一种基于ARM64的qemu虚拟机运行方法 Download PDF

Info

Publication number
CN113360249A
CN113360249A CN202110753540.7A CN202110753540A CN113360249A CN 113360249 A CN113360249 A CN 113360249A CN 202110753540 A CN202110753540 A CN 202110753540A CN 113360249 A CN113360249 A CN 113360249A
Authority
CN
China
Prior art keywords
virtual machine
qemu
arm64
method based
steps
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110753540.7A
Other languages
English (en)
Inventor
蓝振志
赖如金
李宏明
林鹏程
林涛睿
刘毅
郭昊
邓亚军
吕亚堂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen compuchip Information Technology Co.,Ltd.
Original Assignee
Shenzhen Vclusters Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Vclusters Information Technology Co ltd filed Critical Shenzhen Vclusters Information Technology Co ltd
Priority to CN202110753540.7A priority Critical patent/CN113360249A/zh
Publication of CN113360249A publication Critical patent/CN113360249A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种基于ARM64的qemu虚拟机运行方法,包括如下步骤:S1,确定现有硬件;S2,qemu‑kvm移植开发;S3,开发云手机业务。本发明技术方案基于现有的qemu虚拟化技术,采用qemu+kvm组件,使得多个android虚拟机运行在同一个硬件上面成为可能,省去了芯片选型、硬件设计及软硬件调试开发等步骤,大大缩短了开发周期,节约硬件成本,同时,一个硬件可以运行多个android系统,提高了硬件使用率。

Description

一种基于ARM64的qemu虚拟机运行方法
技术领域
本发明涉及虚拟机技术领域,具体涉及一种基于ARM64的qemu虚拟机运行方法。
背景技术
随着5G时代的到来,云手机将成为5G时代重要的业务,云手机使得以后我们的APP运行在云端成为了可能。
目前的云手机方案如下:
1)评估现有的芯片厂商,选择合适的芯片作为云手机的物理硬件平台;
2)硬件评估设计原理图,PCB,待工厂打样回板;
3)软硬件开发调试,准备试量产;
4)每个物理硬件安装对应版本的android操作系统;
5)开发云手机相关的各个业务模块;
上述方案,主要是以真实的arm64架构的物理硬件为主,此种方式,硬件资源消耗较大,成本较高,硬件利用率低。
因此,现有技术存在缺陷,需要进一步改进。
发明内容
针对现有技术存在的问题,本发明提供一种基于ARM64的qemu虚拟机运行方法。
为实现上述目的,本发明的具体方案如下:
本发明提供一种基于ARM64的qemu虚拟机运行方法,包括如下步骤:
S1,确定现有硬件;
S2,qemu-kvm移植开发;
S3,开发云手机业务。
进一步地,步骤S2具体包括如下步骤:
S21,安装并创建虚拟机;
S22,设置虚拟机使用网桥bridge模式;
S23,设置虚拟机图形模式;
S24,启动虚拟机。
进一步地,步骤S21具体包括如下步骤:
S211,安装qemu-kvm软件;
S212,创建虚拟机磁盘文件,磁盘文件用qcow2格式;
S213,使用镜像安装虚拟机,具体,使用debian镜像安装虚拟机,order=dc优先使用CD-ROW(d),后使用硬盘(c),内存默认128m,使用-m 512指定。
进一步地,步骤S22具体包括如下步骤:
S221,宿主机中执行,qemu-bridge-helper增加当前用户可执行权限,用来自动添加网络后端tap设备;
S222,宿主机中执行,-net nic为虚拟机创建nic网卡(网络前端),-net bridge指定宿主机中使用网桥(网络后端);
S223,虚拟机中执行,编辑/etc/network/interfaces,设置静态IP;
S224,虚拟机中执行,编辑/etc/resolv.conf,设置DNS。
进一步地,步骤S23具体包括如下步骤:
S231,虚拟机中执行,编辑/etc/default/grub文件,添加console=ttyS0启动参数;
S232,虚拟机中执行,更新grub配置,并重启;
S233,宿主机中执行,添加-nographic参数创建虚拟机,当前shell前台创建虚拟机;
S234,宿主机中执行,添加-display none-daemonize参数创建虚拟机,当前shell后台创建虚拟机。
进一步地,步骤S24具体包括如下步骤:
S241,创建一个快照,用qemu-img命令创建一个原始镜像的快照;
S242,使用快照文件启动虚拟机;
S243,使用临时快照,原理:创建一个临时快照,虚拟机启动之后,自动删除快照文件。
采用本发明的技术方案,具有以下有益效果:
本发明提供一种基于ARM64的qemu虚拟机运行方法,包括步骤:S1,确定现有硬件;S2,qemu-kvm移植开发;S3,开发云手机业务。本发明技术方案基于现有的qemu虚拟化技术,采用qemu+kvm组件,使得多个android虚拟机运行在同一个硬件上面成为可能,省去了芯片选型,硬件设计及软硬件调试开发等步骤,大大缩短了开发周期,节约硬件成本,同时,一个硬件可以运行多个android系统,提高了硬件使用率。
附图说明
图1是本发明具体实施方式的整体流程图;
图2是本发明具体实施方式的qemu-kvm移植开发流程图;
图3是本发明具体实施方式的安装并创建虚拟机流程图;
图4是本发明具体实施方式的设置虚拟机使用网桥bridge模式流程图;
图5是本发明具体实施方式的设置虚拟机图形模式流程图;
图6是本发明具体实施方式的启动虚拟机流程图。
具体实施方式
以下结合附图和具体实施例,对本发明进一步说明。
结合图1-图6对本发明进行具体说明
本发明提供一种基于ARM64的qemu虚拟机运行方法,包括如下步骤:
S1,确定现有硬件;
S2,qemu-kvm移植开发;
S3,开发云手机业务。
qemu-kvm移植开发具体操作如下:
1.QEMU、KVM、QEMU-KVM
QEMU提供一系列的硬件模拟设备(CPU,网卡,磁盘等),客户机指令都需要QEMU翻译,因而性能较差。KVM是linux内核提供的虚拟化,可以用来进行vCPU的创建与运行,虚拟内存的地址空间分配,指令执行效率较高,但缺少IO设备的虚拟化。QEMU-KVM就是KVM与QEMU的结合,KVM负责CPU虚拟化+内存虚拟化,QEMU模拟其它IO设备。
2.安装并创建虚拟机
安装qemu-kvm软件,
faramita2016@linux-l9e6:~>zypper install qemu-kvm//Ubuntu系统使用apt-get install qemu-kvm,
创建qcow2格式虚拟机磁盘文件,
faramita2016@linux-l9e6:~>qemu-img create-f qcow2 vdisk.img 5G//磁盘大小5G
使用debian镜像安装虚拟机,order=dc优先使用CD-ROW(d),后使用硬盘(c),内存默认128m,使用-m 512指定,
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-cdrom debian-9.4.0.iso-hda vdisk.img-boot order=dc
3.设置虚拟机使用网桥bridge模式
宿主机中执行,qemu-bridge-helper增加当前用户可执行权限,用来自动添加网络后端tap设备,
faramita2016@linux-l9e6:~>sudo chmod o+x/usr/lib/qemu-bridge-helper
宿主机中执行,-net nic为虚拟机创建nic网卡(网络前端),-net bridge指定宿主机中使用网桥(网络后端),
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-hda vdisk.img-net nic-net bridge,br=br0//指定网桥br0
虚拟机中执行,编辑/etc/network/interfaces,设置静态IP,
root@debian:~#vi/etc/network/interfaces
#The primary network interface
allow-hotplug ens3
#iface ens3 inet dhcp
iface ens3 inet static
address 10.0.0.8
netmask 255.0.0.0
gateway 10.0.0.1
hwaddress ether 52:54:00:12:34:56//设置mac地址,前3组不变
root@debian:~#ifup ens3//打开ens3网络接口,ifdown关闭网络接口
root@debian:~#/etc/init.d/networking restart//重启网络服务
虚拟机中执行,编辑/etc/resolv.conf,设置DNS
root@debian:~#vi/etc/resolv.conf
nameserver 8.8.8.8//Google DNS
4.设置虚拟机为非图形模式
虚拟机中执行,编辑/etc/default/grub文件,添加console=ttyS0启动参数,
root@debian:~#vi/etc/default/grub
GRUB_DEFAULT=0//默认启动项
GRUB_TIMEOUT=0//默认菜单项停留时间
GRUB_DISTRIBUTOR=`lsb_release-i-s 2>/dev/null||echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"//默认内核启动参数
GRUB_CMDLINE_LINUX="console=ttyS0"//手动添加内核启动参数,添加console=ttyS0
虚拟机中执行,更新grub配置,并重启,
root@debian:~#update-grub
root@debian:~#shutdown-h now
a.宿主机中执行,添加-nographic参数创建虚拟机,当前shell前台创建虚拟机,
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-hda vdisk.img-net nic-net bridge,br=br0-nographic
b.宿主机中执行,添加-display none-daemonize参数创建虚拟机,当前shell后台创建虚拟机,
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-hda vdisk.img-net nic-net bridge,br=br0-display none-daemonize
5.以只读方式启动虚拟机
a.创建一个快照,
用qemu-img命令创建一个原始镜像的快照,
faramita2016@linux-l9e6:~>qemu-img create-f qcow2-b vdisk.imgsnapshot.img
使用快照文件启动虚拟机,
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-hda snapshot.img-netnic-net bridge,br=br0-nographic
b.使用临时快照,
原理:创建一个临时快照,虚拟机启动之后,自动删除快照文件,
faramita2016@linux-l9e6:~>qemu-kvm-cpu host-hda vdisk.img-net nic-net bridge,br=br0-snapshot-nogr。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的保护范围内。

Claims (6)

1.一种基于ARM64的qemu虚拟机运行方法,其特征在于包括如下步骤:
S1,确定现有硬件;
S2,qemu-kvm移植开发;
S3,开发云手机业务。
2.根据权利要求1所述的基于ARM64的qemu虚拟机运行方法,其特征在于,
步骤S2具体包括如下步骤:
S21,安装并创建虚拟机;
S22,设置虚拟机使用网桥bridge模式;
S23,设置虚拟机图形模式;
S24,启动虚拟机。
3.根据权利要求2所述的基于ARM64的qemu虚拟机运行方法,其特征在于,
步骤S21具体包括如下步骤:
S211,安装qemu-kvm软件;
S212,创建虚拟机磁盘文件;
S213,使用镜像安装虚拟机。
4.根据权利要求2所述的基于ARM64的qemu虚拟机运行方法,其特征在于,
步骤S22具体包括如下步骤:
S221,增加当前用户可执行权限,自动添加网络后端tap设备;
S222,为虚拟机创建nic网卡并指定宿主机中使用网桥;
S223,设置静态IP;
S224,设置DNS。
5.根据权利要求2所述的基于ARM64的qemu虚拟机运行方法,其特征在于,
步骤S23具体包括如下步骤:
S231,编辑/etc/default/grub文件,添加console=ttyS0启动参数;
S232,更新grub配置,并重启;
S233,添加-nographic参数创建虚拟机,当前shell前台创建虚拟机;
S234,添加-display none-daemonize参数创建虚拟机,当前shell后台创建虚拟机。
6.根据权利要求2所述的基于ARM64的qemu虚拟机运行方法,其特征在于,
步骤S24具体包括如下步骤:
S241,创建一个原始镜像的快照;
S242,使用快照文件启动虚拟机;
S243,创建一个临时快照,虚拟机启动之后,自动删除快照文件。
CN202110753540.7A 2021-07-02 2021-07-02 一种基于ARM64的qemu虚拟机运行方法 Pending CN113360249A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110753540.7A CN113360249A (zh) 2021-07-02 2021-07-02 一种基于ARM64的qemu虚拟机运行方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110753540.7A CN113360249A (zh) 2021-07-02 2021-07-02 一种基于ARM64的qemu虚拟机运行方法

Publications (1)

Publication Number Publication Date
CN113360249A true CN113360249A (zh) 2021-09-07

Family

ID=77538052

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110753540.7A Pending CN113360249A (zh) 2021-07-02 2021-07-02 一种基于ARM64的qemu虚拟机运行方法

Country Status (1)

Country Link
CN (1) CN113360249A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500718A (zh) * 2021-12-27 2022-05-13 天翼云科技有限公司 一种云手机管理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020425A (ja) * 2011-07-11 2013-01-31 Hitachi Solutions Ltd オープンソースソフトウェアを利用したハードウェア・ソフトウェア協調検証方法
CN103812948A (zh) * 2014-03-04 2014-05-21 湘潭大学 智能手机操作系统云端交互定制系统与方法
CN106775943A (zh) * 2016-12-09 2017-05-31 郑州云海信息技术有限公司 基于OpenPower架构上Ubuntu系统创建KVM虚拟机方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020425A (ja) * 2011-07-11 2013-01-31 Hitachi Solutions Ltd オープンソースソフトウェアを利用したハードウェア・ソフトウェア協調検証方法
CN103812948A (zh) * 2014-03-04 2014-05-21 湘潭大学 智能手机操作系统云端交互定制系统与方法
CN106775943A (zh) * 2016-12-09 2017-05-31 郑州云海信息技术有限公司 基于OpenPower架构上Ubuntu系统创建KVM虚拟机方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FARAMITA2016: "虚拟化技术QEMU-KVM入门", pages 1 - 5, Retrieved from the Internet <URL:https://www.cnblogs.com/faramita2016/p/9200648.html> *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500718A (zh) * 2021-12-27 2022-05-13 天翼云科技有限公司 一种云手机管理方法及装置
CN114500718B (zh) * 2021-12-27 2023-11-03 天翼云科技有限公司 一种云手机管理方法及装置

Similar Documents

Publication Publication Date Title
JP5681465B2 (ja) 情報処理システム、情報処理装置、準備方法、プログラムおよび記録媒体
US8417796B2 (en) System and method for transferring a computing environment between computers of dissimilar configurations
CN107463388B (zh) 一种uefi无盘启动方法
US11875174B2 (en) Method and apparatus for virtual machine emulator upgrading virtualization emulator
CN110737512A (zh) 跨平台虚拟机在线迁移方法及相关组件
CN109002346B (zh) 一种Windows虚拟机引导程序的转换方法
US20200059507A1 (en) Adding and removing virtual disks remotely to a streaming machine
CN106648827A (zh) 一种在线添加虚拟机资源的方法
CN105183528A (zh) 一种升级服务器bios的方法及系统
CN111475172B (zh) 一种裸机部署方法及装置
CN111679889A (zh) 一种虚拟机的转换迁移方法和系统
CN113360249A (zh) 一种基于ARM64的qemu虚拟机运行方法
CN111459606A (zh) 一种虚拟化下快速创建虚拟机的方法及服务器
CN111913753A (zh) 一种windows系统云迁移中启动方式的变更方法及系统
CN116069400A (zh) 一种VOI架构下启动Linux操作系统的方法及终端
CN105335194A (zh) 一种基于tftp32制作PXE启动WinPE服务器的搭建方法
CN114860393A (zh) 跨平台虚拟机迁移方法、装置和设备
CN106557354B (zh) 设置私有镜像的属性参数的方法及计算机设备
CN114995888A (zh) 一种智能网卡部署方法、装置及介质
CN114296810A (zh) 一种操作系统迁移方法、装置、服务器与存储介质
CN112231013B (zh) 实现嵌入式VxWorks系统更改IP地址后建立target server的方法
CN113918179A (zh) 一种Linux下主机和智能网卡协同自动安装OS的方法及系统
CN116662078B (zh) 一种基于微内核实现的操作系统批量恢复方法及系统
CN115509590B (zh) 持续部署方法及计算机设备
CN115700465B (zh) 一种可移动电子设备及其应用方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20211215

Address after: 518000 B901, Shenzhen national engineering laboratory building, No. 20, Gaoxin South seventh Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen, Guangdong

Applicant after: Shenzhen compuchip Information Technology Co.,Ltd.

Address before: 518000 Building 201, No. 1, Qianwan Road, Qianhai Shenzhen-Hong Kong Cooperation Zone, Shenzhen, Guangdong Province (Admitted to Shenzhen Qianhai Business Secretary Co., Ltd.)

Applicant before: SHENZHEN VCLUSTERS INFORMATION TECHNOLOGY Co.,Ltd.