为梦而战
全部博文(185)
分类: LINUX
2015-04-17 15:22:10
如何阅读软件工程源码
主要是熟悉领域行话,熟悉相关领域规范。
如果一个软件既包括驱动,又包括应用软件,则应先从驱动入手。驱动的入口点通常是module_init(),而应用的入口点则无疑是main。
初始化流程是为软件运行做准备工作的,可以为我们提供软件的大致视图。
可以通过工程逆向的方法画出重要结构体之间的组织关系,通过这些结构之间的组织关系,我们可以清楚的对系统的整个架构有一个全局的把握。
可以通过好的代码阅读工具,如soure insight,或者通过调试工具,如gdb、kdb等,追踪函数之间的调用关系。注意一定要动手做好记录。