
QEMU搭建ARM虚拟开发板
文章平均质量分 84
嵌入式王道长
这个作者很懒,什么都没留下…
展开
-
WSL实现桥接网络并固定IP地址
WSL在Linux开发过程中给开发人员提供了极大的便利,但同时存在一定的问题,就是IP地址不固定。对嵌入式开发人员来说,要求在固定的网络环境下对开发板进行调试,不太友好。因此笔者尝试对WSL实现桥接网络直连外部交换机,并关闭DHCP固定它的IP地址。要实现上述功能有两种方式,一种是临时对WSL的虚拟交换机进行修改,每次重启计算机后会重置;另一种是新建一个虚拟网络交换机,用来实现桥接网络,做好配置则可以保证其永久生效。原创 2023-09-07 16:06:04 · 7413 阅读 · 6 评论 -
Qemu虚拟arm开发板驱动开发详解(二)——驱动的加载
驱动的加载有两种方式,一种是写进操作系统内核,跟随操作系统启动和关闭的静态加载方式,另一种是灵活多变,在操作系统运行过程中临时插入驱动的动态加载方式。在本章中,我们将在arm32开发板上进行驱动加载,并实现两种不同的驱动加载方式。原创 2023-09-03 20:04:16 · 922 阅读 · 0 评论 -
Qemu虚拟arm开发板驱动开发详解(一)——驱动基本架构
此前在系列文章中,我们已建立好Linux最小系统的运行环境,并将其成功移植到了由Qemu模拟的arm32开发板上。接下来将介绍如何基于上述环境进行驱动开发。本节主要带各位读者了解Linux内核驱动的基本架构,并在WSL的Ubuntu22.04子系统下实现基于x86操作系统的简易Linux驱动“HelloWorld”。原创 2023-09-01 11:37:21 · 2249 阅读 · 1 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(六)——U-boot+emmc启动
在第四部分《通过U-boot引导加载内核》中,我们发现U-boot的环境变量修改后无法保存,需要修改源代码来固化环境变量,对启动参数的修改造成了不便。因此本节将继续深入探讨如何将U-boot的环境变量存储在emmc内,同时使用emmc存储Linux内核、设备树以及根文件系统,并在此基础上尝试引导启动最小Linux操作系统。原创 2023-08-21 17:12:37 · 1123 阅读 · 7 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(五)——其他辅助优化功能
在实际开发嵌入式Linux操作系统的过程中,交换文件数据不仅仅局限于主机和开发板之间,很多时候需要开发板直接访问外网。然而在前几个章节的介绍中,开发板只能与主机通信,极大限制了开发者在网络方面的应用,因此本小节将带读者探讨如何使Qemu搭建的虚拟开发板顺利访问互联网。原创 2023-08-20 10:43:35 · 664 阅读 · 1 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(四)——通过U-boot引导加载内核
在上一个章节中,我们直接使用qemu引导启动了Linux内核,这和实际使用开发板时的情况不符,是因为qemu自带bootloader功能,可以直接引导内核。为了更贴近真实使用场景,本节将探讨如何在qemu搭建的虚拟Vexpress-A9开发板内使用U-boot引导和加载Linux内核。原创 2023-08-19 17:13:50 · 1081 阅读 · 2 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(三)——挂载根文件系统
根文件系统首先是内核启动时所mount的第一个文件系统,内核代码映像文件保存在根文件系统中,而系统引导启动程序会在根文件系统挂载之后从中把一些基本的初始化脚本和服务等加载到内存中去运行。本节将介绍如何编译和制作Linux最小系统的根文件系统,并通过sd卡或者nfs挂载根文件系统。原创 2023-08-18 16:23:44 · 1735 阅读 · 2 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(二)——编译Linux内核
Linux内核是Linux操作系统的核心代码,它主要负责和硬件打交道,主要实现资源调度、内存管理、存储管理、进程管理、文件系统、设备驱动、网络通信、系统调用等功能。本节将介绍如何下载和编译Linux内核源码并将其移植到Qemu虚拟开发板上跑起来。原创 2023-08-17 16:59:15 · 1070 阅读 · 1 评论 -
WSL2下Ubuntu22.04使用Qemu搭建虚拟Vexpress-A9开发板(一)——环境搭建
Qemu是一款开源免费的仿真软件,跟VMware station类似,可以仿真一台虚拟的电脑,然后在这个电脑上安装各种操作系统、运行各种应用程序。Qemu和VMware station不同的是,除了可以仿真一台电脑外,它还支持仿真一系列嵌入式开发板(支持ARM、MIPS、RISC-V等各种架构),模拟的开发板支持各种外设:串口、LCD、网卡、USB、SD卡等,可以在这个开发板上运行U-boot+Linux+Rootfs。对于缺少开发板学习嵌入式、研究U-boot、Linux内核的朋友,可以考虑使用qemu。原创 2023-08-17 16:08:59 · 2041 阅读 · 2 评论