挂载NTFS文件系统
1、到官网下载ntfs-3g,地址:
安装命令(官网有说明的):
./configure
make
make install
2、安装完了可以手动挂载了。
挂载命令:
(建立挂载点)
mkdir /mnt/disk
(挂载)
mount -t ntfs-3g /dev/sda1 /mnt/disk
3、人懒了点,可以使用自动挂载方式,修改/etc/fstab文件
加入内容例如:
/dev/sda1 /mnt/disk ntfs-3g defaults 0 0
4、如果再懒一点,那就什么都不干,双击就能自动挂载了,那就再多干点活吧。
a、到下载对应版本的rpmforge,安装该源;
b、安装fuse:yum install fuse fuse-ntfs-3g
搞定了,可以当作普通硬盘来用了~
linux下建立内核代码阅读环境
1、安装ctags和cscope;
命令:
yum install ctags
yum install cscope
2、安装taglist工具,可以到下载,解压到/usr/share/vim/vimfiles里面;
配置帮助文件:
:helptags /usr/share/vim/vimfiles/doc
完了可以使用:help taglist.txt来查看帮助。
修改配置
vim /etc/vimrc
加入内容
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
附常用配置:
-
Tlist_Ctags_Cmd选项用于指定你的Exuberant ctags程序的位置,如果它没在你PATH变量所定义的路径中,需要使用此选项设置一下;
-
如果你不想同时显示多个文件中的tag,设置Tlist_Show_One_File为1。缺省为显示多个文件中的tag;
-
设置Tlist_Sort_Type为”name“可以使taglist以tag名字进行排序,缺省是按tag在文件中出现的顺序进行排序。按tag出现的范围(即所属的namespace或class)排序,已经加入taglist的TODO List,但尚未支持;
-
如果你在想taglist窗口是最后一个窗口时退出vim,设置Tlist_Exit_OnlyWindow为1;
-
如果你想taglist窗口出现在右侧,设置Tlist_Use_Right_Window为1。缺省显示在左侧。
-
在gvim中,如果你想显示taglist菜单,设置Tlist_Show_Menu为1。你可以使用Tlist_Max_Submenu_Items和Tlist_Max_Tag_Length来控制菜单条目数和所显示tag名字的长度;
-
缺省情况下,在双击一个tag时,才会跳到该tag定义的位置,如果你想单击tag就跳转,设置Tlist_Use_SingleClick为1;
-
如果你想在启动vim后,自动打开taglist窗口,设置Tlist_Auto_Open为1;
-
如果你希望在选择了tag后自动关闭taglist窗口,设置Tlist_Close_On_Select为1;
-
当同时显示多个文件中的tag时,设置Tlist_File_Fold_Auto_Close为1,可使taglist只显示当前文件tag,其它文件的tag都被折叠起来。
-
在使用:TlistToggle打开taglist窗口时,如果希望输入焦点在taglist窗口中,设置Tlist_GainFocus_On_ToggleOpen为1;
-
如果希望taglist始终解析文件中的tag,不管taglist窗口有没有打开,设置Tlist_Process_File_Always为1;
-
Tlist_WinHeight和Tlist_WinWidth可以设置taglist窗口的高度和宽度。Tlist_Use_Horiz_Window为1设置taglist窗口横向显示;
3、进入内核代码目录,编译ctags和cscope需要的文件,同时指定特定架构的代码;
命令:
make ARCH=x86 tags
make ARCH=x86 cscope
附常用的操作命令:
ts do_fork 等同于光标停在do_fork上,再按CTRL + ]
tn 下一个(next)
tp 上一个(previous)
tf 第一个(first)
tl 最后一个(last)
解释:
c 查找 name 被哪些函数调用
d 查找 name 调用了哪些函数
e egrep 句型
f 查找名为 name 的文件
g 查找 name 的定义
i 查找#include 本 name 的文件
s 查找 name 这个 C 符号
t 查找何处对 name 赋值
对 Linux 内核来说,如果既有 tags 文件,又有 cscope.out 文件,则 Vim 中:set cst
意味着使用 cscope 风格的^],也就是:tag 命令。 于是:
如果想用 ctags 找到 do_IRQ:
:ts do_IRQ
如果想用 cscope 找到 do_IRQ:
:ta do_IRQ
cs add cscope.out #添加一个 connection,浏览内核时经常发现 cscope 链接断开
可以调用:cs a cscope.out
:cs show #显示所有 connections
:cs kill <#> #杀死第#号 connection,第#号就是:cs show 显示出来的
:cs reset #reset 所有 connections
:cs find c|d|e|f|g|i|s|t
TlistOpen(直接Tlist也可)打开并将输入焦点至于标签列表窗口,效果如上图所示
TlistClose关闭标签列表窗口
TlistToggle切换标签列表窗口状态(打开←→关闭),标签列表窗口是否获得焦点取决于其他配置
ctl-w+w或ctl-w+ 方向键窗口切换(taglist本质上是一个vim分隔窗口,因此可以使用ctl-w系列快捷键对窗口进行切换操作)在Taglist窗口主要有以下操作
按F1:打开帮助回车键:跳到光标所在的标记的定义处(如将光标移到main函数,按回车键)
o:新建一个窗口,跳到标记定义处
p:预览标记定义(仍然在taglist窗口)
空格:显示标记的原型(如函数原型)
u:更新标记列表(比如源文件新增了一个函数,并在保存后,可在taglist窗口按u)
s:选择排序字段(暂时我也不知道什么意思)
d:删除光标所在的taglist文件(如用vi打开了两个文件f1.c,f2.c可以删除f1.c的标记)
x:n放大/缩小taglist窗口
+:展开(指标记)
-:折叠
*:全部展开
=:全部折叠
[[:将光标移到前一个文件的起点
]]:将光标移到后一个文件的起点
q:退出taglist窗口
F1:关闭帮助
阅读(1619) | 评论(0) | 转发(0) |