linux操作系统分析实验二-搭建mykernal
实验二:mykernel
实验内容:搭建虚拟的实验平台mykernel(x86-64 CPU)
实验环境:
windows11
WSL Ubantu20.04.5 LTS
安装所需工具(axel工具及调试工具)
sudo apt install axel
sudo apt install build-essential gcc-multilib
sudo apt install qemu # install QEMU
sudo apt install libncurses5-dev bison flex libssl-dev libelf-dev
下载mykernal补丁
wget https://raw.github.com/mengning/mykernel/master/mykernel-2.0_for_linux-5.4.34.patch
下载linux-5.4.34内核源码并解压
axel -n 20 https://mirrors.edge.kernel.org/pub/linux/kernel/v5.x/linux-5.4.34.tar.xz
xz -d linux-5.4.34.tar.xz
tar -xvf linux-5.4.34.tar
文件下载准备完成,如图所示

进入linux内核源码目录
cd linux-5.4.34
patch补丁
patch -p1 < ../mykernel-2.0_for_linux-5.4.34.patch

配置文件
make defconfig # Default configuration is based on 'x86_64_defconfig'

编译
make -j$(nproc)
运行
qemu-system-x86_64 -kernel arch/x86/boot/bzImage

注意如果linux上没有安装图形化界面,则需要增加参数 -nographic
默认情况下会弹出gui,需要图形化界面的支持
重新在vmware的虚拟机(Centos7)上进行上述配置后,进入qemu如下:

能够观察到my_start_kernel和my_timer_handler的执行

浙公网安备 33010602011771号