linux内核源码实战_编译内核并添加打印调试信息

linux内核源码实战_编译内核并添加打印调试信息

忙,一直没有去理解所学知识,开起倍速学习,哈哈。
下面我就对linux内核实战源码进一步理解。
对了,我学习地址是这个链接

这个是我将要理解的内核模块程序,有兴趣的可以去这个链接下载,运行一把可能会有新的发现。
linux内核源码实战下载地址

推荐一个免费公开课程,个人觉得老师讲得不错,分享给大家
免费公开课程

页回收、处理器缓存、连续内存分配器

搭建环境

凭空的说, 还不如自己去实践一哈。 通过dmesg 打印调试信息。

共享目录搭建
samba 搭建
windows 直接进入
win key+R
输入“control userpasswords2”

跨虚拟机的拷贝
scp linux-5.6.14.tar.xz tan@192.168.1.107:/home/tan/work
sudo apt-get install gcc libncurses5-dev build-essential kernel-package libssl-dev kernel-source-** libc6-dev fakeroot bin86

vim include/linux/mm.h

在 get_num_physpages 中增加了 pr_info ("xtan run is here ");

static inline unsigned long get_num_physpages(void)
{
        int nid;
        unsigned long phys_pages = 0;

        for_each_online_node(nid)
                phys_pages += node_present_pages(nid);
        pr_info ("xtan run is  here ");
        return phys_pages;
}

在这里插入图片描述

通过dmsg 看到了我要的结果。

分两步进行调试内核

如果是只查看内核信息,我都在真实电脑上运行。 - 主要速度快
如果要修改内核的参数, 我都将deb拷贝到虚拟机里运行。 - 安全

更换系统内核。

cat build.sh
pushd linux-5.6.14
make -j4
make modules_install -j4
make install -j4
popd

生成deb文件,更换内核

 cat build.sh
#rm ../build/* -fr
cp linux-5.6.14  ../build -fr
pushd ../build/linux-5.6.14
make deb-pkg -j4
scp ../*.deb tan@192.168.1.107:/home/tan/build_image
popd

总结

环境搭上了,下一步该去撸源码了。
本想把内存管和进程进行理解,难! 理解不到的只有通过打印调试信息去理解, 所以就搭建环境去了。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值