source_insight使用教程

上传人:第*** 文档编号:31079417 上传时间:2018-02-04 格式:DOC 页数:23 大小:482KB
返回 下载 相关 举报
source_insight使用教程_第1页
第1页 / 共23页
source_insight使用教程_第2页
第2页 / 共23页
source_insight使用教程_第3页
第3页 / 共23页
source_insight使用教程_第4页
第4页 / 共23页
source_insight使用教程_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《source_insight使用教程》由会员分享,可在线阅读,更多相关《source_insight使用教程(23页珍藏版)》请在金锄头文库上搜索。

1、作为一个开放源代码的操作系统,Linux 附带的源代码库使得广大爱好者有了一个广泛学习、深入钻研的机会,特别是 Linux 内核的组织极为复杂,同时,又不能像 windows 平台的程序一样,可以使用集成开发环境通过察看变量和函数,甚至设置断点、单步运行、调试等 手段来弄清楚整个程序的组织结构,使得 Linux 内核源代码的阅读变得尤为困难。当然 Linux 下的 vim 和 emacs 编辑程序并不是没有提供 变量、函数搜索,彩色显示程序语句等功能。它们的功能是非常强大的。比如,vim 和 emacs 就各自内嵌了一个标记程序,分别叫做ctag 和 etag,通 过配置这两个程序,也可以实现

2、功能强大的函数变量搜索功能,但是由于其配置复杂,linux 附带的有关资料也不是很详细,而且,即使建立好标记库,要实现 代码彩色显示功能,仍然需要进一步的配置(在另一片文章,我将会讲述如何配置这些功能),同时,对于大多数爱好者来说,可能还不能熟练使用 vim 和 emacs 那些功能比较强大的命令和快捷键。为了方便的学习 Linux 源程序,我们不妨回到我们熟悉的 window 环境下,也算是“师以长夷以 制夷”吧。但是在 Window 平台上,使用一些常见的集成开发环境,效果也不是很理想,比如难以将所有的文件加进去,查找速度缓慢,对于非 Windows 平台的函数不能彩色显示。于是笔者通过在

3、互联网上搜索,终于找到了一个强大的源代码编辑器,它的卓越性能使得学习 Linux 内核源代码的难度大大降低,这 便是 Source Insight3.0,它是一个 Windows 平台下的共享软件,由于 Source Insight 是一个 Windows 平台的应用软件,所以首先要通过相应手段把 Linux 系统上的程序源代码弄到 Windows 平台下,这一点可以通过在 linux 平台上将/usr/src 目录下的文件拷贝到 Windows 平台的分区上,或者从网上光盘直接拷贝文件到 Windows 平台的分区来实现。下面主要讲解如何使用 Source Insight,考虑到阅读源程序的

4、爱好者都有相当的软件使用水平,本文对于一些琐碎、人所共知的细节略过不提,仅介绍一些主要内容,以便大家能够很快熟练使用本软件,减少摸索的过程。安 装 Source Insight 并启动程序,可以进入图 1 界面。在工具条上有几个值得注意的地方,如图所示,图中内凹左边的是工程按钮,用于显示工程窗口的情况;右边的那 个按钮按下去将会显示一个窗口,里边提供光标所在的函数体内对其他函数的调用图,通过点击该窗体里那些函数就可以进入该函数所在的地方。 图 1 Source Insight 界面图由于 Source Insight 实质上是一个支持多种开发语言(java,c ,c+等等)的编辑器,只不过由于

5、其查找、定位、彩色显示等功能的强大,而被我们当成源代码阅读工具使用。所以,为了有效的阅读源程序,首先必须选择功 能菜单上的 “Project”选项的子菜单“New Project”新建一个项目,项目名称可以自由选定,当然也可以选择删除(Remove)一个项目。当删除一个项目的时候,并不删除原有的源代码文件, 只是将该软件生成的那些工程辅助文件删除。设定之后,将会弹出一个对话框如图 2,接受默认选择,如果,硬盘空间足够,可以将第一个复选框选上,该选项将会 需要与源代码大致同等的空间来建立一个本地数据库以加快查找的速度。图 2 工程设置点击“OK”按钮,接受选择后,将会有一个新的对话框弹出,在这个

6、对话框里,可以选择将要阅读的文件加入工程,一种方式是通过在 File Name 中输入要阅读源代码文件的名称,点击“Add”按钮将其加入,也可以通过其中“Add All”和“Add Tree”两个按钮可以将选中目录的所有文件加入到工程中,其中“Add All”选项会提示加入顶层文件和递归加入所有文件两种方式,而“Add Tree”相当于“Add All”选项的递归加入所有文件,可以根据需要使用,就我来说,更喜欢“Add Tree”一些。由于该程序采用了部分打开文件的方式,没有用到的文件不会打开,所以,加入数千个文件也不用担心加入的文件超出程序的所能容忍的最大值, 我就是采用“Add Tree”

7、的方式将 Linux2.4 内核的四千五百九十一个文件加入的。图 3 添加文件加入文件后,点击一个文件,可以出现使用界面,如图 4 所示,其中,右边的那个窗口(Linux Project,即工程窗口)缺省按照字母顺序列出当前工程中所有的文件。图 4 工作窗口点击一个文件就可以打开该文件,显示如图 5 所示,进入到右边的那个窗口分别可以以文件列表的方式,列出所有的文件,每个窗体下边有一排按钮,左边的窗口 (21142.c)从左至右分别为:按字母顺序排列所有标记、按照文件中行数顺序排列标记、按照类型排列标记、浏览本地文件标记、标记窗口属性。右边的窗 口(Linux Project)从左至右分别为:

8、按字母顺序文件列表、显示文件夹、按照文件类型归类文件、全部文件的所有标记列表、按照标记类型归类标记、跳转到定义 处、显示标记信息、浏览工程标记、查找函数调用、工程属性,其中全部文件的所有标记列表选项可能要一段时间抽取标记,同步到数据库去,如果开始选择了建立 标记数据库,将会在今后节省同步时间,最有用的莫过于浏览标记信息和查找函数调用,前者可以通过“Jump”按钮在不同的地方查找同样的标志,还可以通过 “Reference”按钮结合后者进行全局的标记查找。Reference 功能是 Source Insight 的特色之一,它可以在速度极快的在整个工程中找到所有的标记,并且在该行程序的前边加上红

9、色箭头的小按钮链接上。图 6 是一个 Reference 搜索后的结果,它可以有两种模式,一种集中显示结果,图 6 显示的就是这种模式,在这种模式下,可以通过前边的红色箭头小按钮进入另外一 种模式,该标记的具体的所在处,也可以通过标记的具体所在处点击红色箭头小按钮进入警种模式,还可以通过工具条上的两个红色小箭头直接在第二种模式下前后 移动,察看相应信息。它的这个强大的功能使得阅读 Linux 源程序有如神助。但是要注意的是,当进行了第二次“Reference”时,它会提示你将结果 集附加在第一个结果集的后边还是取代第一个结果集。如果选择前者,不能对结果集根据前后两次搜索结果进行分类,然后在其子

10、类里进行移动,只能在整个结果集 里移动;如果,选择后者,结果集将会被替换为第二次搜索的结果,略微有些不方便。图 6 Reference 的搜索结果当然,Source Insight 还提供了一些其他常见的便利。比如:右键菜单几乎包含了程序的所有功能,可以在编辑窗口为程序加上行号,还可以统计整个工程的程序行数,当然还有功能强大 却用不上自动完成功能,似乎连它的 30 天试用期也是别有用心可以迫使你尽可能快速的阅读源程序,其他一些技巧大家可以在使用过程中慢慢摸索。怎么样? 爱好读源代码的朋友,不妨马上去下载一个,去开始我们的 Linux 内核探险之旅吧!SourceInsight 使用技巧2008

11、/05/19 16:44 学习研究 1、缩进与 tab (1)Options 菜单PreferencesTyping 卡,勾掉下面两项 Typing tab indents line,regardless of selection,空行按 tab 无法前进 Typing tab replaces current selection,选定部分内容、再按 tab 时会清除所选 (2)Options 菜单Document Options(针对不同文件类型,分别进行设置) 下拉左上文件类型框、选择合适类型(c 源文件)Editing Options 框中, tab width=2 Editing Op

12、tions 框中,勾选 Expand tabs(这样,按 tab 键、等价于输入 2 个空格) (3)Options 菜单Document Options选择合适的文件类型点击右边中间的 Auto Indent 钮在弹出的框中,左边一定要点Smart,右边有两个复选框 Indent Open Brace 和 Indent Close Brace,具体效果可以看 SIS 的 HELP。按照部门里的编程风格要求,最方便的就是把两个复选框都取消掉,然后点 OK。 勾选 Auto Indent 之 SMART 的效果在 C 程序里 , 如果遇到行末没有分号的语句,如 IF, WHILE, SWITCH

13、 等, 写到该行末按回车,则新行自动相对上一行缩进两列。 勾掉 Indent Open Brace 和 Indent Close Brace 的效果继上一段,在相对缩进行里, 如果输入, 则自动和上一行列对齐(好像勾不勾都会有这个功能);而输入时,不会与下面的行对齐(这是勾上 Indent Open Brace 时的效果)。 2、向项目中添加文件时,只添加特定类型的文件(文件类型过滤器) 有个同事比较生猛,得整汇编代码,但在 SIS 里建立 PROJECT 并 ADD TREE 的时候,根据默认设置并不会把该 TREE 里面所有汇编文件都包含进来,只加了.inc 和.asm 后缀的,.s 后缀

14、的没有。而且用 SIS 打开.s 的文件,一片黑白没有色彩,感觉回到 DOS 的 EDIT 时代了 解决方法是在 Options-Document Options 里面,点左上的 Document Type 下拉菜单,选择 x86 Asm Source File,然后在右边的 File filter 里*.asm;*.inc;的后面加上*.s;接着 CLOSE 就可以了。上面两个问题解决了,但注意加入*.s 后还需要重新 ADD TREE 一遍才能把这些汇编加到 PROJECT 里面。 3、去掉功能强大但是无用的自动完成功能 Options 菜单Preferences Typing 卡Auto

15、 Completion 框,勾掉 Use automatic symbol completion window(这里是 SIS的全局设置) Options 菜单Document OptionsEditing Options 框中,勾掉 Allow auto-complete(局部设置) 上面两项必须全部勾选,才能启用 Auto Completion 功能 4、恢复小键盘的+, -,*,/功能 Options 菜单Key assignments,通过关键词 Scroll 找到 Scroll Half Page Up,取消小键盘 /;通过关键词 Scroll 找到 Scroll Half Page

16、 Down 取消小键盘* ;通过关键词 Function 找到 Function Up,取消小键盘-,通过关键词 Function 找到 Function down,取消小键盘+。 5、恢复 ctrl+a 的全选功能 通过关键词 save 找到 save all,更改为 ctrl+shift+a,通过关键词 select 找到 select all, 更改为 ctrl +a 6、解决字符等宽对齐问题。 SIS 默认字体是 VERDANA,很漂亮。这网页上应该也是用的 VERDANA 字体。但由于美观的缘故, VERDANA 字体是不等宽的。比如下面两行 llllllllll MMMMMMMMMM 同样 10 个字符,长度差多了.用 VERDANA 来看程序,有些本应该对齐的就歪了。解放方法是使用等宽的字体,但肯定比较丑。可以用DOS 字体,也就是记事本里的默认字体 sysfixed 很丑,要有心理准备。比较推荐的是用 Cour

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号