PCIe驱动开发(1)— 开发环境搭建
一、前言
二、Ubuntu安装
参考: VMware下Ubuntu18.04虚拟机的安装
三、QEMU安装
参考文章:QEMU搭建X86_64 + Ubuntu虚拟系统环境
四、安装Ubuntu
下载地址:https://old-releases.ubuntu.com/releases/20.04.5/ubuntu-20.04.5-live-server-amd64.iso
创建一个空白虚拟硬盘用来安装系统
下载好后使用如下命令解压:
qemu-img create -f qcow2 ubuntu-20.04.5-live-server.qcow2 10G
然后使用以下命令开始安装ubuntu20
sudo qemu-system-x86_64 -m 2048 -smp 4 --enable-kvm ubuntu-20.04.5-live-server.qcow2 -cdrom ubuntu-20.04.5-live-server-amd64.iso
-m 2048 —— 给客户机分配2G内存(也可以输入“2G”);
-smp 4 —— 指定客户机为对称多处理器结构并分配4个CPU;
–enable-kvm —— 允许kvm(速度快很多)
-cdrom * —— 分配客户机的光驱
使用kvm 需要root权限,所以需要加sudo
安装过程可参考: Ubuntu 无图形界面安装
五、启动QEMU
使用如下命令启动qemu
sudo qemu-system-x86_64 -m 2048 -smp 4 --enable-kvm ubuntu-20.04.5-live-server.qcow2 -netdev user,id=network0,hostfwd=tcp::2222-:22 -device virtio-net-pci,netdev=network0,id=net0,mac=52:54:00:12:34:56 -device edu
-netdev user,id=network0,hostfwd=tcp::2222-:22 定义了一个用户模式的网络设备,并设置了一个端口转发,将主机的 2222 端口转发到虚拟机的 SSH 端口 22
-device edu 添加一个PCIe设备到客户机中,这是qemu提供的一个PCIe示范设备,
输入ubuntu安装时设置的用户名和密码即可登录:
上面已经设置过SSH端口的转发,我们可以提供SSH连接:
ssh -p 2222 william@localhost
然后可以输入lspci -tv
命令查看所有的PCI设备,其中Device 1234:11e8
即是我们添加的edu设备
该设备的详细说明可以查看qemu安装包的docs/specs/edu.txt
文件
也可以通过lspci -s 00:04.0 -vvv
命令查看相关信息
六、退出QEMU
我们可以输入 CTRL + a
然后按 x
键退出QEMU界面