首页 > TAG信息列表 > QEMU

100行代码实现一个RISC-V架构下的多线程管理框架

1. 摘要本文将基于RISC-V架构和qemu仿真器实现一个简单的多线程调度和管理框架, 旨在通过简单的代码阐明如何实现线程的上下文保存和切换, 线程的调度并非本文的重点, 故线程调度模块只是简单地采用了轮询的方式.2. 上下文是什么对于一个运行中的程序, 我们可以把它看作一个状态机,

QEMU 启动方式分析 (1):QEMU 及 RISC-V 启动流程简介

Author: YJMSTR jay1273062855@outlook.com Date: 2022/08/16 Revisor: Bin Meng, Falcon Project: RISC-V Linux 内核剖析 Sponsor: PLCT Lab, ISCAS QEMU 启动方式分析 (1):QEMU 及 RISC-V 启动流程简介 使用软件版本如下: QEMU: v7.0.0 OpenSBI: v1.1 U-Boot: v2022.04 Linux K

QEMU 启动方式分析(2): QEMU 'virt' 平台下通过 OpenSBI + U-Boot 引导 RISCV64 Linux Kernel

Author: YJMSTR jay1273062855@outlook.com Date: 2022/08/23 Revisor: Bin Meng, Falcon Project: RISC-V Linux 内核剖析 Sponsor: PLCT Lab, ISCAS QEMU 启动方式分析(2): QEMU 'virt' 平台下通过 OpenSBI + U-Boot 引导 RISCV64 Linux Kernel 使用软件版本如下: QEMU: v7.0.0

错误:GPG 检查失败 /Error: GPG check FAILED

背景 今天装qemu的时候报错: 错误:GPG 检查失败 解决办法 安装软件的时候加上 --nogpgcheck 例如: yum install qemu* --nogpgcheck gpgcheck是什么 gpgcheck是gpg签名是否开启的选项名称,1是开启,0是不开启,一般内部部署软件包下载可以关掉 配置文件路径/etc/yum.conf

qemu运行欧拉/鸿蒙

qemu运行openeuler-riscv64 参考[https://zhuanlan.zhihu.com/p/440896294]运行了qemu-openeuler 导出容器(可以不看这里) docker export导出的是容器的快照,不会保存元数据,所以,如果你想让其他人也使用也就需要使用docker save,docker save是针对镜像的,所以我们需要先将我们搭建好

PVE设置定时关闭、启动虚拟机

shell中输入命令: crontab -e 进入对应cron     添加命令: 例如: 00 2 * * * pvesh create /nodes/pve/qemu/102/status/stop 00 6 * * * pvesh create /nodes/pve/qemu/102/status/start 其中pve为节点名称,102为虚拟机编号。  

kvm内部错误(原因待查)

1 2022-06-08 14:11:35.662+0000: starting up libvirt version: 4.5.0, package: 33.el7 (CentOS BuildSystem <http://bugs.centos.org>, 2020-04-01-03:25:53, x86-01.bsys.centos.org), qemu version: 2.12.0qemu-kvm-ev-2.12.0-44.1.el7_8.1, kernel: 3.10.0-112

vivotek栈溢出漏洞复现

一、前言 ​ 近日公司进了一批摄像头,以前还没有做过这方面的研究所以找了一个vivotek 2017年的栈溢出漏洞拿来练练手。 二、固件仿真 ​ 虚拟机环境:Ubuntu 20.04 ​ gdb版本:GNU gdb (Ubuntu 9.2-0ubuntu1~20.04.1) 9.2 ​ 固件下载地址:https://github.com/mcw0/PoC/files/3128058/

kvm学习

1. 查看cpu是否支持kvm [root@sorl1 ~]$ grep -E 'vmx|svm' /proc/cpuinfo   2. 查看yum kvm [root@sorl1 ~]# yum list | grep kvm libvirt-daemon-kvm.x86_64 1.2.17-13.el7 @anaconda pcp-pmda-kvm.x86_64 3.10

服务器镜像解析

从阿里云调取的镜像等都是raw、dd格式,如果没有美亚柏科的电子数据仿真系统的话,那么只能使用VMware虚拟机进行操作,解析方法如下: 1、如图,下面就是从阿里云数据库创建的镜像 可以看到文件格式为tar.gz,所以使用 tar -xvf进行解压,解压完成之后得到raw格式的镜像文件 首先使用qemu-img

kvm

kvm(kernel-based virtual machine)集成在Linux内核中(2.6.20以上) 查看硬件是否支持虚拟化 lscpu | grep -E 'vmx|svm' 安装kvm组件 # qemu-kvm 操作kvm 内核的用户态工具 # libvirt 管理kvm虚拟的 # virt-install 安装虚拟机时使用 # qemu-img 磁盘管理工具 yum install qemu-

制作文件系统镜像并用qemu运行linux内核

本文介绍如何制作一个简版的文件系统、制作fs镜像文件并最终通过qemu将linux内核运行起来! 制作一个简版文件系统 编译完成后的busybox就安装在源码根目录下的_install目录了,我们进入_install目录,补充一些必要的文件或目录,相关的shell命令如下:   制作根文件系统镜像文件 思路: 先

QEMU pipe设备分析

1. QEMU pipe介绍 Qemu-pipe是一个通用的虚拟设备,完成guest OS和emulator的通信功能。它为通信提供了四种服务: Tcp Unix Opengles Qemud Qemud也提供了一些子服务 "gsm" service "gps" service "hw-control" / "control" service "sensors" service 传输数据格式如下:

通过qemu+gdb实现跨架构调试

需求 有时候身边只有 x86 架构的硬件环境,却想学习和测试 arm、mips 等其他架构特性,此时怎么办呢?众所周知,VMware 只能模拟同架构不同操作系统,对此可以通过 qemu 实现跨架构模拟。 安装 qemu-user qemu 是一个支持跨平台虚拟化的虚拟机,有 user mode 和 system mode 两种配置方式。其

libvirt and QEMU

libvirt and QEMU 零、前言 我们知道,操作系统上的程序分为两种,一种是用户态的程序,例如 Word、Excel 等,一种是内核态的程序,例如内核代码、驱动程序等。 为了区分内核态和用户态,CPU 专门设置四个特权等级 0、1、2、3 来做这个事情。大牛们在写 Linux 内核的时候,如果用户态程序做事情

Linux_虚拟化部署

1.kvm安装条件 1.inter cpu ----> vmx 2.amd cpu -------> svm 2.kvm虚拟化安装 dnf group install "Virtualization Client" "Virtualization Hypervisor" "Virtualization Tools" -y Virtualization Client ##虚拟化客户端 Virtualization Tools ##虚拟

qemu device tree uart

  qemu static const MemMapEntry virt_memmap[] = { [VIRT_DEBUG] = { 0x0, 0x100 }, [VIRT_MROM] = { 0x1000, 0xf000 }, [VIRT_TEST] = { 0x100000, 0x1000 }, [VIRT_RTC] = { 0x10100

findnode_nofail Couldn't find node /chosen: FDT_ERR_NOTFOUND

    qemu-system-riscv64 -M virt -m 512M -smp 2 -bios fw_jump.bin -kernel Image -append "rootwait root=/dev/vda console=ttyS0" -drive file=rootfs.ext2,format=raw,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=net0,hostfwd=::2222-:22

使用Clion和qemu调试操作系统

首先修改编译选项,在gcc编译选项里加入-g 用于将调试信息嵌入到可执行文件中 然后链接脚本中的/DISCARD/部分如果有跟调试信息相关的部分也要去掉(建议直接去掉/DISCARD/部分)     然后配置Clion的远程调试选项 在运行调试选项里选择GDB Remote Debug target remote实参填上tcp

法布里斯·贝拉(FabriceBellard)一位著名的计算机程序员

法布里斯·贝拉(FabriceBellard)是一位著名的计算机程序员,1972年生于法国Grenoble,大学就读于巴黎高等综合理工学院,后在国立巴黎高等电信学院攻读。因FFmpeg、QEMU等项目而闻名业内。他也是最快圆周率算法贝拉公式、TCCBOOT和TCC(微型C编译器)等项目的作者。 确实是奇才, 单是 FFmpeg

Windows安装arm64架构的麒麟V10

一、下载QEMU 二、下载麒麟V10桌面版 三、安装QEMU       安装的时候注意最好不要放在Program Files目录下,后面运行命令行会因为空格,需要特殊处理。       具体QEMU的版本,我用了最新的qemu-w64-setup-20210825.exe 四、创建镜像文件       命令很简单:qemu-img create

搭建基于qemu的linux开发环境

在某些情况下,如果我们没有Mini2440开发板,或者开发板某些硬件损坏了,这时候我们还要继续学习linux内核移植和驱动开发,我们应该怎么办,这里我们可以采用qemu搭建linux开发环境。 在之前的u-boot系列博客中我们已经介绍了u-boot的移植、以及linux内核移植、根文件系统制作。并且尝试将

2kvm安装

1. yum install libvirt virt-install qemu-kvm virt-manager -y #加载kvm模块 modprobe kvm systemctl start libvirtd.service 2.创建虚拟磁盘文件 qemu-img create -f qcow2 /var/lib/libvirt/images/centos7.qcow2 20G 3.创建虚拟机 virt-install --virt-type kvm --os-va

kvm+qemu显卡直通

kvm+qemu显卡直通 版权声明:转载请标明来源 侵权必究 1. 基础知识 qemu 仿真软件 kvm linux虚拟化模块 qemu-kvm 是qemu和kvm结合的库(这个不确定 看软件名猜的) libvirt 这个是virt-manager的库(这个也是猜的) virt-manager 是一个python写的虚拟机管理软件 我们用来直通的驱动是

FreeNOS之Qemu(一)

QEMU是一套由法布里斯·贝拉(Fabrice Bellard)所编写的以GPL许可证分发源码的模拟处理器软件,在GNU/Linux平台上使用广泛。Bochs,PearPC等与其类似,但不具备其许多特性,比如高速度及跨平台的特性,通过KQEMU这个闭源的加速器,QEMU能模拟至接近真实电脑的速度。 0.9.1及之前版本的qemu