首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

深入理解 Linux 启动过程 | QEMU 启动 linux 内核和自制根文件系统

跟我一起来到故事开始的地方,深入 Linux 系统的启动流程,自己编译内核并制作根文件系统,并使用 QEMU 模拟启动。 前置知识# 昨天看到阮老师两篇文章 《计算机是如何启动的?》...和 《Linux启动流程》,对计算机的启动流程有了更加深入的理解,正好最近在做国产申威处理器的虚拟化支持性调研,称此机会深入了解一下 Linux 系统的启动流程,并使用 QEMU 模拟这一流程。...说明:本文介绍的方法同样可用于内核调试,但侧重于介绍 使用 QEMU 模拟 Linux启动流程 。...,并通过qemu+gdb调试 mknod用法以及主次设备号 Linux启动流程 By 阮一峰 计算机是如何启动的?...启动Linux内核 QEMU + Busybox 模拟 Linux 内核环境 Qemu 模拟环境 By CTF Wiki Linux 内核编译步骤及配置详解 注:本作品采用 知识共享署名-非商业性使用-

1.7K30
您找到你想要的搜索结果了吗?
是的
没有找到

使用 qemu 运行 linux 5.17

本篇介绍 本篇记录下本地搭建QEMU环境,运行linux 仿真环境,这样就可以运行自己编译或修改的内核了。 步骤介绍 安装qemu qemu就是linux 仿真环境,可以直接从官网下载源码进行编译。...由于我的环境是ubuntu 22.04,因此就下载最新的qemu就好了。...wget https://download.qemu.org/qemu-7.2.0-rc4.tar.xz tar xvf qemu-7.2.0-rc4.tar.xz mkdir -p build cd...sysfs /sys sysfs defaults 0 0 tmpfs /dev tmpfs defaults 0 0 debugfs /d debugfs defaults 0 0 创建rcS脚本,让进程启动后自动挂载设备...-kernel out/arch/arm64/boot/Image 顺利的话就可以看到让人兴奋的画面了: image.png 一长串的开机启动log,接下来就会正常开机 image.png 这样接下来就可以开始进行修改并运行自己编译的内核了

1.9K30

使用 GDB + Qemu 调试 Linux 内核

Qemu 启动内核 在上述步骤准备好以后,我们需要在调试的 Ubuntu 20.04 的系统中安装 Qemu 工具,其中调测的 Ubuntu 系统使用 VirtualBox 安装。...GDB 调试 在使用 qemu-system-x86_64 命令启动内核以后,进入到我们从编译机器上拷贝过来的 Linux 内核源代码目录中,在另外一个终端我们来启动 gdb 命令: [linux-4.19.172...QEMU+busybox 搭建 Linux 内核运行环境[5] *** QEMU+gdb 调试 Linux 内核全过程[6] * linux 内核编译与调试方法[7] How to Build A Custom...Linux Kernel For Qemu (2015 Edition)[8] qemuqemu-kvm 到底什么区别[9] 在 qemu 环境中用 gdb 调试 Linux 内核[10] *...For Qemu (2015 Edition): http://mgalgs.github.io/2015/05/16/how-to-build-a-custom-linux-kernel-for-qemu

6.5K20

采用大杀招QEMU调试Linux内核代码

Linux调试内核代码是非常麻烦。它们一般加printk, 或者使用JTAG调试。 这里的方法是使用QEMU为了调试Linux核心。...QEMU的安装  这个能够自己去QEMU的官网下载编译,假设自己手头上的发行版有相应QEMU的包的话那也能够直接安装。  CentOS的话參考前面的 CentOS rpm 额外包的源 2....启动QEMU  使用例如以下命令启动:  $ qemu-system-arm -M versatilepb -m 16 -kernel vmlinuz-qemu-arm-2.6.20 -append...能够直接编译http://free-electrons.com/pub/qemu/demos/arm/directfb/1.0/src/linux-2.6.20.tar.7z  假设自己不想编译的话能够使用一个已编译好的...vmlinux文件:http://pan.baidu.com/s/1sjuJYc1  然后运行例如以下命令:  $ arm-none-linux-gnueabi-gdb vmlinux  在gdb在控制台输入

1.6K20

QEMU 1: 使用QEMU创建虚拟机

用户可以通过不同Linux发行版所带有的软件包管理器来安装QEMU。...虚拟机内存会被映射到QEMU的进程地址空间,在启动时分配。在虚拟机看来,QEMU所分配的主机上的虚拟地址空间为虚拟机的物理地址空间。...#三、创建及使用虚拟机# ##命令行创建及启动虚拟机## 成功安装QEMU之后便可创建自己的虚拟机。具体步骤如下: 1, 使用qemu-img创建虚拟机镜像。...镜像文件创建完成后,可使用qemu-system-x86来启动x86架构的虚拟机: qemu-system-x86_64 fedora.img 此时会弹出一个窗口来作为虚拟机的显示器,显示内容如下: ?...可以从不同Linux发行版的官方网站上获取安装镜像,以fedora20为例: [kelvin@kelvin tmp]$ wget http://ftp6.sjtu.edu.cn/fedora/linux

9K70

Linux虚拟化入门(一)Qemu,KVM,Virsh 概念指南

本文首发于: https://blog.frytea.com/archives/539/当你安装了一台 Linux,想启动一个 KVM 虚拟机的时候,你会发现需要安装不同的软件,启动虚拟机的时候,有多种方法...:virsh startkvm 命令qemu 命令qemu-kvm 命令qemu-system-x86_64 命令QEMU首先看 qemu,其中关键字 emu,全称 emulator,模拟器,所以单纯使用...KVM基于内核的虚拟机(英语:Kernel-based Virtual Machine,缩写为 KVM)是一种用于 Linux 内核中的虚拟化基础设施,可将 Linux 内核转化为一个虚拟机监视器。...qemu-kvmQemu 将 KVM 整合进来,通过 ioctl 调用 /dev/kvm 接口,将有关 CPU 指令的部分交由内核模块来做,就是 qemu-kvm (qemu-system-XXX)qemu...virsh然而直接用 qemu 或者 qemu-kvm 或者 qemu-system-xxx 的少,大多数还是通过 virsh 启动, virsh 属于 libvirt 工具, libvirt 是目前使用最为广泛的对

2.2K41
领券