随想录(怎么用source insight阅读kernel代码)
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
大家都知道,linux kernel代码很多,文件多,行数多。作为学习和开发来说,阅读kernel代码常常又是我们必须要做的工作,那么怎么最大效率地阅读代码呢?我的经验就是用source insight创建kernel工程,接着就将文件减到最少,删除不必要的文件和目录。
1、只选择一个cpu类型,比如arm,这样只需要保留arch/arm
2、只选择一家公司的soc,比如samsung下面的soc,这样只需要保留arch/arm/plat-samsung
3、只选择samsung下的一种芯片,比如arch/arm/mach-s3c24xx
4、删除不必要的drivers代码
5、删除不必要的fs代码
6、删除不必要的network协议代码
7、删除不需要的代码,比如crypto、firmware、sample、tools、sound等等
8、可以查看一下开发板的代码工程,实际编译的时候又有哪些文件是不需要的,再次删除
9、添加汇编文件,默认工程不会添加汇编文件,创建索引,下面就可以愉快地阅读代码了
经过这样,原来的内核代码文件数会被减少到9000多个,其中4000多个文件是head文件,可以极大的降低代码阅读的难度。当然,如果中间有误删除的代码,也可以添加上重新恢复使用。
随想录(怎么用source insight阅读kernel代码)相关推荐
- Source Insight——C/C++代码阅读器
背景 今天因为要看一个相关课题的C源码,而我又不专门学C所以就没有关于C的IDE.我本来用笔记本阅读器来看,是在太辛苦了. 后来看到了一篇博客,推荐了Source Insight软件,软件小,还能自动 ...
- 【editor】Source Insight定制之代码风格自动校准功能(AStyle的使用)
前一篇博文讲了Source Insight编辑器中简单的宏命令(Macro)的制作方式,并与快捷键关联起来.只是为了解决代码的风格和快捷键注释的问题.但从目前来看,只有代码的快捷注释功能是有实用价值的 ...
- source insight 4.0 代码函数变量符号高亮
用source insight 看代码比较方便,怎么打开代码高亮提示功能??提高代码阅读效率.之前我们是用快捷键F8.现在我们可以通过配置source insight更加方便实现这个功能. 按F8后效 ...
- 【Android 系统开发】使用 Source InSight 阅读 Android 源码
1. 安装 Source Insight (1) Source Insight 相关资源 安装相关资源 : -- 下载地址 : http://www.sourceinsight.com/down35. ...
- 将Source Insight里面着色代码拷贝到word里面的方法
1.用Source Insight打开文件后,File->Print: 2.在 常规->选择打印机中,选择"Adobe PDF"(或者其他pdf打印机): 3.点确定, ...
- linux 修改内核源码,Source Insight阅读linux内核源代码——根据其他文章修改
由于Source Insight实质上是一个支持多种开发语言(java,c ,c++等等)的编辑器,只不过由于其查找.定位.彩色显示等功能的强大,而被我们当成源代码阅读工具使用. Step 2:新建项 ...
- 工具及方法 - 在Source Insight中使用代码格式化工具
在Source Insight 4.0中,有代码格式化工具: 当你打开某个源文件后,可以对当前文件进行格式修改: 有ANSI.GNU.K&R三种编码风格可以选择. 也可以自己进行设置: 同时, ...
- 随想录(在实践中学习kernel代码)
[声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 记得我在读书的时候,虽然老师也教过操作系统的课程,但是自己的理解却不是很充分,实践部分的内容就更 ...
- 在Source Insight中看Python代码
http://blog.csdn.net/lvming404/archive/2009/03/18/4000394.aspx SI是个很强大的代码查看修改工具,以前用来看C,C++都是相当happy的 ...
最新文章
- fabric.js 不同类型 不同控件_耐温灌封胶都哪几个类型?不同类型的灌封胶有哪些不同之处?...
- python list转换成array_一文掌握Python【不定期更新】
- mysql里面有没有map类型_MySQL学习(二) 数据类型
- Python中re模块的常见方法
- NodeJS 正则路由匹配
- 力扣题目——429. N 叉树的层序遍历
- 在Linux上运行ASP.NET vNext
- python项目总结与展望_2019年项目总结与展望范文
- windows server 2012设置桌面图标
- 计算机无法打开压缩包,压缩包损坏或压缩格式未知且无法打开
- dota2自走棋Android怎么更新,dota2自走棋
- lae界面开发工具入门之介绍八--消息转发器组件篇
- git提交到主干后,本地将主干代码更新到分支上
- Graham扫描法求解凸包问题(C++)
- 【图片新闻】低空穿越的美军MC-130J突击队II特种作战运输机
- 7⽂件查找和压缩问题和练习
- Springboot2中文件上传报java.io.FileNotFoundException: C:\Users\WIzarder\AppData\Local\Temp\tomcat.8080.589
- python-opencv之图像滤波(blur,boxFilter,GaussianBlur,medianBlur)
- 农家女靠养花赚钱,年收入几十万
- Doxygen 配置详解
热门文章
- 费尔德曼的百吉饼实验:人类的诚实程度其实超出你的想象!
- Android快速开发框架LoonAndroid (转)
- 【转】关于PHP的header(P3P: CP=CURa……)
- Javascript、Jquery获取浏览器和屏幕各种高度宽度
- Linux系统--Linux进程与作业管理(2)
- Citrix Receiver for Mobile Phone
- Ural 1297 Palindrome(后缀数组+最长回文子串)
- unity3d-ngui UIScrollView 滚动方向与滚轮相反
- bzoj 2330 糖果
- 软工实践项目课程的自我目标