• 2024-07-150184-QEMU 调试程序
    环境Time2022-11-13WSL-Ubuntu22.04QEMU6.2.0Rust1.67.0-nightly前言说明参考:https://os.phil-opp.com/minimal-rust-kernel目标将上一节编写的可执行文件制作成QEMU可以启动的镜像,并使用QEMU调试。main.rs#![no_std]#![no_main]staticHELLO:&[u8]=b"
  • 2024-07-150185-在 VSCode 中远程调试
    环境Time2022-11-13WSL-Ubuntu22.04QEMU6.2.0Rust1.67.0-nightlyVSCode1.73.1前言说明参考:https://os.phil-opp.com/minimal-rust-kernel目标将上一节编写的可执行文件制作成QEMU可以启动的镜像。使用QEMU启动后,使用VSCode远程调试。启动QEMU脚本#!/u
  • 2024-07-13开发工具
    大致流程:开发工具:cmake和gcc的区别:GCC是一个编译器套件,它提供了编译多种编程语言(如C、C++、Objective-C、Fortran、Java等)的功能。GCC本身并不直接处理项目的构建过程,而是负责将源代码转换成可执行文件或库文件。当你只有一个源文件需要编译时,可以直接使用GCC命令
  • 2024-07-130174-QEMU 从 kernel 启动
    环境Time2022-11-12WSL-Ubuntu22.04QEMU6.2.0NASM2.15.05前言说明参考:https://os.phil-opp.com/multiboot-kernel/参考:https://megtechcorner.medium.com/a-tutorial-on-os-and-compiler-3-5d14f7448415目标使用编写好的内核可执行文件,直接从QEMU启动。kernel
  • 2024-07-12搭建NEMU与QEMU的DiffTest环境(Socket方式)
    搭建NEMU与QEMU的DiffTest环境(Socket方式)1简述2编译NEMU2.1配置2.2修改NEMU/scripts/build.mk2.3修改isa_difftest_checkregs函数2.4修改isa_pmp_check_permission函数2.5编译3编译qemu-socket-difftest3.1修改NEMU/scripts/isa.mk3.2修改NEMU/scripts/build.
  • 2024-07-09013 GDB跟踪程序
    题目要求请学习gdb调试工具的使用(这对后续调试很重要),并通过gdb简单跟踪从机器加电到跳转到0x80200000的简单过程。只需要描述重要的跳转即可,只需要描述在qemu上的情况。启动调试和监听的指令使用[[010基于SBI服务完成输出和关机#^fb8fca|之前学到的指令]],开启两
  • 2024-07-0908 内核第一条指令
    了解QEMU启动指令qemu-system-riscv64\-machinevirt\-nographic\-bios../bootloader/rustsbi-qemu.bin\-deviceloader,file=target/riscv64gc-unknown-none-elf/release/os.bin,addr=0x80200000-machine virt 表示将模拟的64位RISC-V计算机
  • 2024-07-02vmdk to vhdx 虚拟磁盘格式转换qemu-img
    qemu-img是创建、转换、修改磁盘映像的工具,我们可以用它非常方便的转换虚拟磁盘格式,比如在vmdk、vhdx、qcow2、vdi之间相互转换,它在流行的Linux、macOS、Windows平台上都发布有对应的版本。本文介绍的是Windows版本,它支持下图中所示的格式。转换格式需要使用它的convert命令,为
  • 2024-06-24QEMU专栏 - 使用 QEMU 调试 FreeRTOS示例
    写在最前这几天一直在研究QEMU中多核ARM加载不同镜像的问题,一直不得其解,这部分后续可以分几个不分拆解下,看看为什么会出现这种问题.今天先来看看如何使用QEMU来调试FreeRTOS的示例代码.编译并运行FreeRTOS示例代码(基础版本)首先是下载代码,这种只需要看最新代
  • 2024-06-22petalinux编译出错解决方法
    petalinux编译若干出错解决方法问题一:ERROR:qemu-xilinx-native-v4.1.50-xilinx-v2020.1+gitAUTOINC+e371d99ac1-r0do_fetch:FetcherfailureforURL:‘gitsm://github.com/Xilinx/qemu.git;protocol=https;branch=branch/xilinx-v2020.1’.UnabletofetchURLfro
  • 2024-06-19QEMU + Vscode + Arm Arch's Linux调试小记
    QEMU+Vscode+ArmArch'sLinux调试小记​ 前几天看到了一篇讲授如何调试ARMLinux内核的文章,这里现在记录一下调试ARMLinux内核的办法下载QEMU​ 对于ArchLinux用户而言,没有必要自己编译,直接上AUR源下载就行。我自己有打算研究和调试多个架构,所以我自己下载了:yay-Sqem
  • 2024-06-17KVM 概念,以及跟QEMU的关系
    参考链接:https://developer.aliyun.com/article/724394传统软件运行在单个机器设备上的交付形式已经不能满足当下现代应用的交付的需求。现代应用轻量、动态、密集,为了更充分的利用单个机器上的计算、存储和网络,虚拟化技术应运而生。在虚拟化技术的加持下,平台资源被当成一种服
  • 2024-06-16Trusty qemu + android环境搭建详细步骤
    下载源码mkdirtrustycdtrustyrepoinit-uhttps://android.googlesource.com/trusty/manifest-bmasterreposync-j32编译./trusty/vendor/google/aosp/scripts/build.pygeneric-arm64查看编译结果lsbuild-root/build-generic-arm64/lk.bin安装运行依赖sud
  • 2024-06-15编译安装qemu-devel @FreeBSD
    缘起使用cbsd创建riscvjail的时候提示:youhavenoqemu-user,pleaseinstallqemu-devlewithBSD_USERandSTATICops(emulators/qemu-devel)使用pkg安装之后,创建的riscvjail启动报错:Startingjail:fbriscv,paralleltimeout=5chroot:/bin/sh:Execformaterr
  • 2024-06-07EVE-NG之Qemu镜像制作及导入
    转换镜像格式上传镜像前,先使用qemu-img工具将原始镜像转换为QEMU支持的格式,通常是qcow2格式转换VirtualBoxVDI镜像文件为KVM的qcow2文件转换VirtualBoxVDI镜像文件格式为KVMqcow2文件相对比较简单,转换过程中,我们需要依赖raw格式。转换步骤如下:转
  • 2024-06-04QEMU EDU设备模拟PCI设备驱动编写
    环境安装buildroot编译buildroot下载,编译:下载地址:Indexof/downloads(buildroot.org)下载版本:https://www.buildroot.org/downloads/buildroot-2022.02.2.tar.gz下载完成后,解压:$tar-vxfbuildroot-2022.02.2.tar.gz$cdbuildroot-2022.02.2/$makeqemu_aarc
  • 2024-06-03qemu 新增 machine
    下面以新增一个新的riscvmachine为例子进行说明新增Machine步骤修改Kconfighw/riscv/Kconfig修改configsconfigs/devices/riscv32-softmmu/default.mak新增Machine的编译文件下面两个文件参考的hw/riscv/sifive_e.c,并修改了一些源码,不然会有冲突,导致编译失败
  • 2024-05-30vscode+gdb调试linux
    编译内核 makemeauconfig 后:Kernelhacking--->Compile-timechecksandcompileroptions--->[*]Compilethekernelwithdebuginfo[*]ProvideGDBscriptsforkerneldebugging [*]KerneldebuggingProcessortypeandfeature
  • 2024-05-25通过qemu-img工具转换镜像格式
    应用场景华为云支持导入vhd、vmdk、qcow2、raw、vhdx、qcow、vdi、qed、zvhd或zvhd2格式镜像文件。其他镜像文件,需要转换格式后再导入。本节操作指导您使用开源qemu-img工具转换镜像格式。方案构架本节提供本地为Windows操作系统和Linux操作系统的转换镜像格式的操作方法。 
  • 2024-05-20环境配置
    1.命令行远程软件配置1、ifconfig查询虚拟机IP地址192.168.50.1292、若ubuntu上没有进行ssh的相关配置,需要进行处理具体步骤:1.sudoapt-getinstallopenssh-server2.sudoservicesshrestart3.ps-e|grepssh4.sudoufwstatus5.sudoufwdisable6.sudoufwallow2
  • 2024-05-16Windows下QEMU虚拟化探索:从入门到精通
    本文背景:大部分云电脑不会开启intelVT-X虚拟技术,导致VM、Vbox等都无法使用。就得靠搭建QEMU版的虚拟机了。一、QEMU简介QEMU是一款开源的虚拟化软件,可以模拟CPU以及其他硬件设备,使你在一台物理机器上运行多个虚拟机。QEMU支持广泛的操作系统,包括Windows、Linux、macOS等。二
  • 2024-05-15使用qemu-system-x86_64和cloud-init修改qcow2镜像密码
    方法来自于:CoretutorialwithQEMU依次执行下面的命令sudoaptinstallqemu-system-x86mkdirtempcdtemp#以此镜像为例wgethttps://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.imgcat<<EOF>user-data#cloud-configpassword:123ch
  • 2024-05-10如何将cache info透传入qemu虚拟机
    将cache信息透传如虚拟机有助于guestkernel更好的进行负载均衡,甚至于减少IPI中断【1】。使用qemu命令行:qemu-system-x86_64\-cpuhost,host-cache-info=on,topoext\使用libvirt,virt-installvirt-install\--cpumode='host-passthrough',cache.mode='passthrough'
  • 2024-05-08使用libvirt配置pci bus的numa亲和性
    前面的一篇文章在qemu中绑定pcibus到numanode-半山随笔-博客园(cnblogs.com)中记录了如何使用qemu命令行来设置pcibus与numa的亲和性。本篇来记录如何使用libvirt来做同样的事。libvirt相较于qemu是一个更高层的工具,在提供便捷性的同时也损失了一点灵活性。就拿设置pcib
  • 2024-05-06UTM v4.5.2 - 在 macOS 上优雅的使用 QEMU 虚拟化 Windows、Linux 和 macOS
    UTMv4.5.2-在macOS上优雅的使用QEMU虚拟化Windows、Linux和macOS在iOS中虚拟化Windows、Linux和Unix请访问原文链接:UTMv4.5.2-在macOS上优雅的使用QEMU虚拟化Windows、Linux和macOS,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgUTM4底