构建调试Linux内核网络代码的环境MenuOS系统

一、编译内核

   源码下载

wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.0.1.tar.xz
xz -d linux-5.0.1.tar.xz
tar -xvf linux-5.0.1.tar
cd linux-5.0.1

 安装编译工具

sudo apt install build-essential flex bison libssl-dev libelf-dev libncurses-dev

 编译内核

make x86_64_defconfig
make menuconfig make

二、下载qemu加载虚拟内核

sudo apt install qemu
qemu-system-x86_64 -kernel linux-5.0.1/arch/x86_64/boot/bzImage

 

三、构造menuos

git clone https://github.com/mengning/menu.git
cd menu
sudo apt-get install libc6-dev-i386 # 在64位环境下编译32位需安装
make rootfs
cd ..
qemu-system-x86_64 -kernel linux-5.0.1/arch/x86_64/boot/bzImage  -initrd rootfs.img

 四、调试内核 

   在start_kernel处设置断点调试

 

 

 

 实验完成

  

 

 

posted @ 2019-12-12 21:54  胡荣辉  阅读(131)  评论(0编辑  收藏  举报