qemu模拟A9/A15运行Linux4.2.3
根据http://www.linuxidc.com/Linux/2012-07/65478p2.htm修改
主机运行操作系统,deepin2015
http://www.deepin.org/
1.安装qemu
sudo apt-get install qemu-system-arm
2.安装arm编译工具
sudo apt-get install gcc-arm-linux-gnueabi
3.下载Linux内核
https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-4.2.3.tar.xz
修改Makefile,
ARCH = arm
CROSS_COMPILE = arm-linux-gnueabi-
运行命令
make vexpress_defconfig //该文件在目录arch/arm/configs下
make
创建目录 qemu_a9
mkdir ~/qemu_a9
复制zImage和设备树到 qemu_a9 目录
cp arch/arm/boot/zImage ~/qemu_a9
cp arch/arm/boot/dts/vexpress-v2p-ca9.dtb ~/qemu_a9
4.下载busybox
http://www.busybox.net/downloads/busybox-1.23.2.tar.bz2
同样修改Makefile,
ARCH ?= arm
CROSS_COMPILE ?= arm-linux-gnueabi-
安装依赖包
sudo apt-get install libncurses5-dev
运行命令
make defconfig
make menuconfig
选中Busybox Settings --->Build Options --->Build BusyBox as a static binary (no shared libs)
运行命令
make busybox
make install
默认会把文件系统放到_install目录下
5.制作根文件系统:
cd ~/qemu_a9
dd if=/dev/zero of=a9rootfs.ext3 bs=1M count=32
sudo mkfs.ext3 a9rootfs.ext3
mkdir a9rootdir
sudo mount -t ext3 a9rootfs.ext3 a9rootdir/ -o loop
sudo cp busybox-1.23.2/_install/* ~/qemu_a9/a9rootdir/ -r
cd ~/qemu_a9/a9rootdir
sudo mkdir dev etc lib proc sys tmp mnt
sudo vim etc/fstab
输入下面内容
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0
创建init.d目录
sudo mkdir etc/init.d
sudo vim etc/init.d/rcS
输入如下内容
#!/bin/sh
mount -a
mdev -s
添加可执行权限
sudo chmod +x etc/init.d/rcS
卸载
cd ~/qemu_a9
sudo umount ~/qemu_a9/a9rootdir/
5.运行编译的内核
qemu-system-arm -nographic -sd a9rootfs.ext3 -M vexpress-a9 -m 512M -kernel zImage -dtb vexpress-v2p-ca9.dtb -smp 4 -append "init=/linuxrc root=/dev/mmcblk0 rw rootwait earlyprintk console=ttyAMA0" 2>/dev/null
带lcd的
qemu-system-arm -sd a9rootfs.ext3 -M vexpress-a9 -m 512M -kernel zImage -dtb vexpress-v2p-ca9.dtb -append "init=/linuxrc root=/dev/mmcblk0 rw rootwait" -net nic -net user -smp 4
当然也可以模拟A15
qemu-system-arm -sd a9rootfs.ext3 -M vexpress-a15 -m 512M -kernel zImage -dtb vexpress-v2p-ca15-tc1.dtb -append "init=/linuxrc root=/dev/mmcblk0 rw rootwait console=ttyAMA0" -nographic -smp 2
qemu-system-arm -sd a9rootfs.ext3 -M vexpress-a15 -m 512M -kernel zImage -dtb vexpress-v2p-ca15-tc1.dtb -append "init=/linuxrc root=/dev/mmcblk0 rw rootwait" -net nic -net user -smp 2
qemu模拟A9/A15运行Linux4.2.3相关推荐
- QEMU模拟Cortex-A9,运行kernel、rootfs
宿主机:Centos7(Kernel3.10.0) 交叉编译工具链:gcc-linaro-6.2.1-2016.11-i686_arm-linux-gnueabi QEMU:2.0.0 Linux k ...
- QEMU模拟vexpress-a9 搭建Linux kernel运行环境
众所周知,QEMU是一个可以模拟ARM架构的虚拟机,拥有高速.开源.跨平台.支持多种架构等优点.接下来,我们将使用QEMU模拟vexpress-a9,并在上面跑一个Linux kernel,为接下来的 ...
- 用QEMU模拟ARM开发板,搭建Linux kernel运行环境
前言 有的时候我们想调试linux kernel或者linux应用程序,但是又没有硬件环境,这个时候可以选择用模拟器的方法,模拟出一个硬件环境. Android emulator Android系统的 ...
- 用QEMU模拟运行 WIndows 98 SE (2004.12.31更新)
先来简单介绍一下吧,QEMU是一种遵守GPL许可证,快速的虚拟机软件.它通过动态翻译 机内地址来获得比较快速的模拟速度. QEMU有两种模拟方式: 1.完整的系统模拟:这种模式下,QEMU模拟一个完整 ...
- 在qemu模拟的aarch32上使用kgtp
KGTP 介绍 KGTP 是一个能在产品系统上实时分析 Linux 内核和应用程序(包括 Android)问题的全面动态跟踪器. 使用 KGTP 不需要 在 Linux 内核上打 PATCH 或者重新 ...
- 从零使用qemu模拟器搭建arm运行环境
原文链接: http://blog.csdn.net/linyt/article/details/42504975 为什么会有这篇文章 早在2011年的时候,跟当时同事一起讨论,做Linux系统开发正 ...
- Ubuntu 上使用 qemu 模拟 Arm64 linux
Ubuntu 上用 qemu 模拟 Arm64 linux 环境配置 1. 安装Arm64交叉编译工具链 2. 安装qemu 下载源码包 编译 编译Linux kernel 编译qemu 编译busy ...
- 下qemu模拟arm9_QEMU搭建树莓派环境
0x01 最近树莓派被同学借去做毕设了,没有其他ARM平台供我研究,无奈之下只好尝试使用QEMU模拟raspbian,搭建过程比较繁琐,网上的教程有很多坑都没有指出,所以有了此文,给同样有兴趣做IoT ...
- qemu模拟armlinux执行目标文件系统的可执行文件
--------------------以下是2020年更新的内容 不需要自己编译qemu,直接apt安装一个静态编译版本的qemu apt install qemu-user-static进入解包的 ...
最新文章
- CVPR 2020 | 将深度学习算法应用于移动端最新研究汇总
- unicode环境下用CFile读取txt的若干疑惑,该如何处理
- 什么是Vue?Vue的工作原理是什么?
- MySQL双主(主主)架构方案
- 高亮屏幕一条条线_惠普Z24N G2显示器评测 设计师都想要的好屏幕
- java 重启tomcat_linux下重启tomcat的命令
- 6-9 二叉树的非递归遍历 (20 分)
- MaxCompute 图计算用户手册(上)
- labview曲线上两点画延长线_零失手的‘万能眼线公式’,关键鼻翼延长线、画出适合自己的眼线...
- Error:Execution failed for task ‘:app:preDebugAndroidTestBuild’. Conflict with dependency ‘com.andr
- 使用JFlash往Nordic nRF系列芯片烧写程序
- 【游戏开发】卡牌游戏战斗系统设计与实现
- win7升级win10正式版_Win7免费升级Win10
- selenium+python 的微博自动转赞评功能实现
- 编程基础 - 线索二叉树 (Threaded Binary Tree)
- 发票扫描仪的正确打开方式
- RabbitMQ镜像队列原理分析
- 雷军:做互联网需7字诀
- 解决File ~ could only be written to 0 of the 1 minReplication nodes.
- 客户关系管理咨询 - 获取最佳CRM解决方案