首页 > 系统服务 > 详细

构建调试Linux内核网络的环境Menuos系统

时间:2019-12-10 20:25:48      阅读:97      评论:0      收藏:0      [点我收藏+]

一.Linux内核源码下载

下载网址为:https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.0.1.tar.xz
下载完成后放入home/MenuOS中
技术分享图片

然后解压缩包:
tar -xvf linux-5.0.1.tar

二.安装内核编译工具


    sudo apt install build-essential flex bison libssl-dev libelf-dev libncurses dev 
    make x86_64_defconfig  #生成64位x86的配置文件  
    make menuconfig #配置编译内核

三.准备qemu模拟器加载内核

1.下载安装QEMU


    cd ..
    sudo apt install qemu
    qemu-system-x86_64 -kernel linux-5.0.1/arch/x86_64/boot/bzImage
    #构建MenuOS的根文件目录rootfs 
    mkdir rootfs
    #git clone所给的munuOS文件
    git clone https://github.com/mengning/menu.git
    cd menu
    sudo apt-get install libc6-dev-i386

2.构造MenuOS

需要编辑一下menu目录下Makefile文件的如下内容
然后在~/MenuOS/menu路径下执行make rootfs命令,
成功在能看到如下界面

技术分享图片

四.MenuOS上能够完成TCP客户端和服务器发送和接收hello/hi

1.把程序集成至MenuOS中测试

‘‘‘

cd ..
git clone https://github.com/mengning/linuxnet.git
cd ./linuxnet/lab2
make
cd ../../menu/
make rootfs

‘‘‘

在QEMU下测试输入如下命令:

    
    Replyhi
    Hello

技术分享图片

五.GDB进行内核代码跟踪

首先,修改menu目录下的Makefie文件
此时在~/MenuOS/menu路径下输入 make rootfs

出现下图所示情况。此时不需要关闭终端以及QEMU界面


    gdb
    file ./linux-5.0.1/vmlinux
    target remote:1234
    break start_kernel
    list

gdb跟踪到内核代码start_kernel

技术分享图片

构建调试Linux内核网络的环境Menuos系统

原文:https://www.cnblogs.com/lhx9527/p/12018849.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!