• 利用systemtap学习Linux路由代码


    http://bbs.chinaunix.net/thread-4090162-1-1.html


    一、为什么要这样做
    读kernel route子系统代码,当我弄懂了数据结构之间的关系以及控制流程后,
    心里还是不妥贴,总有一种“纸上得来终觉浅,绝知此事要躬行”的感觉。
    此时,systemtap能起大作用。

    二、准备工作
    安装systemtap, kernel, kernel-debuginfo, kernel-debuginfo-common等。
    uname -r
    2.6.38.6-26.rc1.fc15.i686

    http://ftp.jaist.ac.jp/pub/Linux ... 26.rc1.fc15.src.rpm

    rpmbuild --rebuild --target=i686 --without pae --without perf --with firmware --without debug kernel-2.6.38.6-26.rc1.fc15.src.rpm

    三、编写脚本
    这个脚本是针对 2.6.38.6-26代码编写的,如果你使用别的kernel版本,
    需要相应的修改。需要重命名成 route.tap。
    <ignore_js_op> route.tap.tar.gz (171 Bytes, 下载次数: 65) 

    四、运行

    在一个终端运行:
    stap -v route.tap |tee log

    在另一个终端运行:
    ip route flush cache
    ssh 10.66.66.66

    五:分析
    分析log文件,你就可以看到整个路由查找的过程。

    如 <ignore_js_op> log.tar.gz (1.07 KB, 下载次数: 67) 

    鱼饮水,冷暖自知,乐趣尽在其中!

  • 相关阅读:
    IDEA下同时使用Git和svn
    IDEA进行activiti-archetype-unittest脚手架的安装
    正则表达式
    关于JS堆栈与拷贝
    按值传递--
    JS---变量、作用域和内存问题
    laod
    待解决
    闭包2
    闭包1
  • 原文地址:https://www.cnblogs.com/zengkefu/p/5564486.html
Copyright © 2020-2023  润新知