【QEMU中文文档】1.1 支持的构建平台

本文由 AI 翻译(ChatGPT-4)完成,并由作者进行人工校对。如有任何问题或建议,欢迎联系我。联系方式:jelin-sh@outlook.com。

原文:Supported build platforms — QEMU documentation

QEMU 旨在支持在多个主机操作系统平台上构建和运行。本附录概述了主要的构建目标平台。这些平台决定了 QEMU 所依赖的第三方软件的最低要求版本。支持的平台是 QEMU 项目在提交补丁进行审查时执行自动化测试的目标,并在合并前后进行测试。

如果某个平台没有在这里列出,这并不意味着 QEMU 无法在该平台上运行。如果未列出的平台的软件版本与列出平台的相当,那么预期它是可以运行的。欢迎报告在未列出平台上遇到的问题,除非它们的软件版本明显比这里描述的更旧。

请注意,在考虑支持的发行版提供的软件版本时,QEMU 只考虑版本号,并假定该发行版中的功能与具有相同版本的上游发布相匹配。换句话说,如果发行版将额外功能移植到其软件中,QEMU 上游代码不会为这些移植添加显式支持,除非这些功能以一种对上游发布也适用的方式进行自动检测。

Repology 网站是一个有用的资源,可以识别各种操作系统中当前已发布的软件版本,尽管它并未涵盖下面列出的所有发行版。

支持的主机架构

这些主机架构得到官方支持,并配备了各种加速器:

CPU 架构加速器
ArmKVM(仅限 64 位),TCG,Xen
MIPS(仅支持小端)KVM,TCG
PPCKVM,TCG
RISC-VKVM,TCG
s390xKVM,TCG
SPARCTCG
x86HVF(仅限 64 位),KVM,NVMM,TCG,WHPX(仅限 64 位),Xen

其他主机架构不受支持。可以使用 --enable-tcg-interpreter 选项在不受支持的主机架构上构建 QEMU 系统仿真,以启用 TCI 支持,但请注意这会非常慢,不建议正常使用。QEMU 用户模式仿真需要主机特定的信号处理支持,因此在不受支持的主机架构上不会有 TCI 的帮助。

不支持的架构可能会在弃用过程后被移除。

Linux 操作系统,macOS,FreeBSD,NetBSD,OpenBSD

该项目旨在在初始发布后的五年内始终支持最新的主要版本。在发布新的主要版本后的两年内,将停止支持先前的主要版本,或者在供应商自身停止支持时停止支持,以先到者为准。在这种情况下,不考虑第三方努力延长发行版寿命,即使它们得到供应商的认可(例如 Debian LTS);包含从后续版本中回溯的软件包的存储库也是如此(例如 Debian backports)。在每个主要版本中,只考虑最新的次要版本。

为了确定在 Linux 上可用的支持软件版本,该项目将查看 CentOS、Debian、Fedora、openSUSE、RHEL、SLES 和 Ubuntu LTS。其他发行版将被假定为提供类似的软件版本。

对于 FreeBSD 和 OpenBSD,决策将基于各自端口存储库的内容,而 NetBSD 将使用 pkgsrc 存储库。

对于 macOS,将使用 Homebrew,尽管预计 MacPorts 将携带类似版本。

一些构建依赖可能遵循较不保守的规则:

  • Python 运行时:长期支持的发行版通常提供多个版本的 Python 运行时。QEMU 最初将支持发行版的默认运行时,但随后可能将最低版本提高到供应商提供的更新的 Python 版本。在这种情况下,将需要使用 configure 脚本的 --python 命令行选项将 QEMU 指向支持的 Python 运行时版本。截至 QEMU 9.0.50 版本,支持的最低 Python 版本为 3.7。
  • Python 构建依赖:QEMU 的一些构建依赖项是用 Python 编写的。通常,这些依赖项只有默认 Python 运行时的发行版才会打包。如果 QEMU 提高了其最低 Python 版本,并且需要非默认运行时,则可能需要通过 pip 从 Python 软件包索引(PyPI)获取这些 Python 模块,以构建 QEMU。
  • 可选构建依赖:一些构建组件的缺失不会影响 QEMU 的构建能力。这些组件可能在发行版中不可用,或者对 QEMU 的要求过旧。例如,Avocado 测试框架或各种 linter 都是用 Python 编写的,可以使用 pip 安装。另一个例子是交叉编译器;在这种情况下,可以从 EPEL 等存储库中下载它们,使用 Docker 或 Podman 进行基于容器的交叉编译,或者使用与 QEMU 一起分发的预构建二进制文件。

Windows

该项目旨在支持供应商仍在支持的最新两个 Windows 版本。当前最低支持的 Windows API 是“Windows 8”,因此理论上 QEMU 二进制文件仍然可以在旧版本的 Windows 上运行。然而,这些旧版本的 Windows 不再进行测试,因此建议改用最新的 Windows 版本。

该项目支持使用当前版本的 MinGW 工具链在 Linux(Debian/Fedora)上构建 QEMU,或者在 Windows 上通过 MSYS2 构建。始终推荐使用较新的 Windows 版本,因为这样更不容易在通过 MSYS2 构建时出现问题。QEMU 的构建过程涉及一些调用 os.symlink() 的 Python 脚本,需要特别注意构建过程才能成功完成。在较新的 Windows 10 版本中,如果启用了开发人员模式,非特权帐户可以创建符号链接。如果无法使用或启用开发人员模式,则需要 SeCreateSymbolicLinkPrivilege 特权,或者进程必须以管理员身份运行。

仅支持 64 位 Windows。


© Copyright 2024, The QEMU Project Developers. This documentation is for QEMU version 9.0.50.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/20745.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基础—SQL—DCL(数据控制语言)小结

一、总结 在SQL分类中的DCL语句部分,主要讲到了两个部分的知识。 1、用户管理 用户管理,主要是管理哪些用户可以访问当前 mysql 数据库。 包括:创建用户、修改用户密码以及删除用户 2、权限控制 权限管理,主要是控制我们当前用户…

vue前端Echars

<template><div :class"className" :style"{height:height,width:width}" /> </template><script> import * as echarts from echarts require(echarts/theme/macarons) // echarts theme 柱状图 import resize from ./mixins/re…

禁用USB端口的办法,哪一种禁用USB端口的方法好

禁用USB端口的办法&#xff0c;哪一种禁用USB端口的方法好 禁用USB端口是保护公司数据安全的一种常见做法&#xff0c;旨在防止未经授权的数据传输和潜在的恶意软件传播。以下是几种常见的禁用USB端口方法及其效果评价。 1、硬件方法&#xff1a; BIOS设置&#xff1a;通过BIO…

混合动力电动汽车介绍(一)

电动汽车发展的技术背景主要包含环境问题和能源问题两大方面。环境问题的表现形式为空气污染&#xff0c;而能源问题的表现形式为现有能源供应体系对化石燃料的过分依赖。《新能源汽车产业发展规划&#xff08;2021-2035&#xff09;》中明确我国新能源汽车技术研发的“三纵”、…

软件架构设计属性之5:可维护性属性分析与应用

文章目录 引言一、可维护性定义和重要性1.1 定义1.2 重要性 二、可维护性关键要素2.1 模块化2.2 单一职责2.3 低耦合2.4 高内聚2.5 抽象和封装2.6 实践建议 三、设计原则3.1 开闭原则3.2 依赖倒置原则3.3 评估方法3.4 挑战与解决方案 四、实战应用总结 引言 在当今数字化飞速发…

一文了解JVM面试篇(上)

Java内存区域 1、如何解释 Java 堆空间及 GC? 当通过 Java 命令启动 Java 进程的时候,会为它分配内存。内存的一部分用于创建 堆空间,当程序中创建对象的时候,就从对空间中分配内存。GC 是 JVM 内部的一 个进程,回收无效对象的内存用于将来的分配。 2、JVM 的主要组成…

NextJs 数据篇 - 数据获取 | 缓存 | Server Actions

NextJs 数据篇 - 数据获取 | 缓存 | Server Actions 前言一. 数据获取 fetch1.1 缓存 caching① 服务端组件使用fetch② 路由处理器 GET 请求使用fetch 1.2 重新验证 revalidating① 基于时间的重新验证② 按需重新验证revalidatePathrevalidateTag 1.3 缓存的退出方式 二. Ser…

windows操作系统提权之服务提权实战rottenpotato

RottenPotato&#xff1a; 将服务帐户本地提权至SYSTEM load incognito list_tokens –u upload /home/kali/Desktop rottenpotato.exe . execute -Hc -f rottenpotato.exe impersonate_token "NT AUTHORITY\SYSTEM" load incognito 这条命令用于加载 Metasploi…

【Linux】在Windows环境下配置两台Linux机器的文件互传

相信有很多云服务器小伙伴都有想把一台linux资源传到另一台机器&#xff0c;那么该怎样实现&#xff1f; 本篇文章的演示案例都是基于centous进行传输&#xff0c;ubuntu进行接收&#xff01; 别的方法也都是一样的&#xff01; 方法一&#xff08;基于xshell进行的压缩包win…

Java项目:92 基于SSM的办公管理系统

作者主页&#xff1a;舒克日记 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 基于SSM的办公管理系统 1、项目介绍 基于SSM的办公管理系统主要是对于办公用品的申领进行管理&#xff0c;系统分为三种角色&#xff0c;超级管理员、企业 职…

利用WMI横向移动

一. WMI介绍和使用 1. WMI介绍 WMI是Windows在Powershell还未发布前&#xff0c;微软用来管理Windows系统的重要数据库工具&#xff0c;WMI本身的组织架构是一个数据库架构&#xff0c;WMI 服务使用 DCOM或 WinRM 协议, 在使用 wmiexec 进行横向移动时&#xff0c;windows 操…

vue中使用svg图像

一 、svg图像是什么 SVG&#xff08;可缩放矢量图形&#xff09;是一种图像格式&#xff0c;它以XML文档的形式存在&#xff0c;用以描述图像中的形状、线条、文本和颜色等元素。由于其基于矢量的特性&#xff0c;SVG图像在放大或改变尺寸时能够保持图形质量不受影响。这种格式…

Java 异步编编程——Java内置线程池(Executor 线程池)

文章目录 知道线程池是什么以及解决什么问题Java 内置线程池Java 内置线程池设计结构及执行机制ThreadPoolExecutor 中的概念生命周期核心参数阻塞队列4 种任务拒绝策略 线程池使用场景 知道线程池是什么以及解决什么问题 线程池&#xff08;Thread Pool&#xff09;是一种基于…

devicemotion 或者 deviceorientation在window.addEventListener 事件中不生效,没有输出内容

问题&#xff1a;devicemotion 或者 deviceorientation 在window.addEventListener 事件中不生效&#xff0c;没有输出内容 原因&#xff1a; 1、必须在Https协议下才可使用 2、必须用户手动点击click事件中调用 &#xff0c;进行权限申请 源码&#xff1a; <!DOCTYPE h…

JVM 虚拟机

JVM 是 Java Virtual Machine 的简称&#xff0c;意为 Java 虚拟机&#xff0c;虚拟机是指通过软件模拟的具有完整硬件功能的、运行在一个完全隔离的环境中的完整计算机系统。 常见的虚拟机有&#xff1a;JVM、VMwave、Virtual Box等。JVM 是一台被定制过的现实当中不存在的计算…

行政工作如何提高效率?桌面备忘录便签软件哪个好

在行政管理工作中&#xff0c;效率的提高无疑是每个行政人员都追求的目标。而随着科技的发展&#xff0c;各种便捷的工具也应运而生&#xff0c;其中桌面备忘录便签软件便是其中的佼佼者。那么&#xff0c;这类软件又如何帮助我们提高工作效率呢&#xff1f; 首先&#xff0c;…

SqlServer还原系统库步骤及问题解决

还原master 需要切换到binn目录 Cd C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn 关闭服务 用单用户模式启动 SQL Server 默认实例 sqlservr.exe -m 直接单用户登录 恢复master备份文件 RESTORE DATABASE master FROM DISK E:\dbbak\txic_ke…

react 表格实现拖拽功能

项目背景 : react ant 单纯实现拖拽确实不难 , 我的需求是根据后台接口返回 , 生成对应的父子表格 , 并只可以拖拽子的位置 , 如图 后台返回的数据结构 (pid为0说明是父 , 子的pid等于父的id , 说明是父的子) 1 , 我先转成了树形结构且自己加上了key (注意 : key一定得是唯一的…

Resilience4j结合微服务出现的异常

Resilience4j结合微服务出现的异常 1、retry未生效 由于支持aop&#xff0c;所以要引入aop的依赖。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId> </dependency>2、circ…

6. C++通过fork的方式实现高性能网络服务器

我们上一节课写的tcp我们发现只有第一个与之连接的人才能收发信息。他又很多的不足 高性能网络服务器 通过fork实现高性能网络服务器 我们通过fork进行改装之后就可以成百上千的用户进行连接访问&#xff0c;对于每一个用户来说我们都fork一个子进程。让后让每一个子进程都是…