linux 调试工具
“工欲善其事 必先利其器”现在将一些常见的调试工具进行一下总结.
【1】
名称:MEMWATCH
功能:
1、MEMWATCH 支持 ANSI C
2、它提供结果日志纪录
3、能检测双重释放(double-free)
4、错误释放(erroneous free)
5、没有释放的内存(unfreed memory)、
6、溢出和下溢等等。
参考文献:
【1】:http://blog.csdn.net/lengxingfei/archive/2006/08/09/1040800.aspx
【2】
名称:YAMD
功能:
1、查找 c 和 c++ 中动态的、与内存分配有关的问题
参考文献:
【1】http://www.cs.hmc.edu/~nate/yamd/
【2】http://www.ppsql.com/server/p262/J26232224_2.shtml
【3】
名称:electric fence
功能:
1、检测内存泄露
2、检查数据越界
3、分配受保护的内存
参考文献:
【1】http://book.opensourceproject.org.cn/embedded/oreillybuildembed/index.html?page=opensource/belinuxsys-chp-11-sect-4.html
【2】http://book.opensourceproject.org.cn/embedded/oreillybuildembed/opensource/belinuxsys-chp-11-sect-4.html
【3】http://www.ppsql.com/server/p262/J26232224_3.shtml
【4】
名称:strace
功能:
1、显示用户空间程序发出的系统调用
2、显示调用的参数和返回值
【5】
名称:gdb
功能:
1、启动程序
2、使程序能够停止在指定文件的指定位置
3、查看程序变量值
4、改变程序执行期间的相关变量、路径等
【6】
名称:Oops
功能: 显示系统错误信息
参考文献:
【1】http://www.ibm.com/developerworks/cn/linux/sdk/l-debug/
【7】
名称:mtrace
功能:
1、检测一些内存分配和泄漏的失败等
参考文献:
【1】http://www.vbaccelerator.com/home/VB/Code/Techn
相关文档:
rm -rf mydir /* 删除mydir目录 */
cd mydir /* 进入mydir目录 */
cd – /* 回上一级目录 */
cd ~ /* 回根目录 */
mv tools tool /* 把tools目录改名为tool */
ln -s tool bac
/* 给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了 */
cp -a tool /home/leavex/www /* 把too ......
aptitude 与 apt-get 一样,是 Debian 及其衍生系统中功能极其强大的包管理工具。
与 apt-get
不同的是,aptitude 在处理依赖问题上更佳一些。
举例来说,aptitude
在删除一个包时,会同时删除本身所依赖的包。
这样,系统中不会残留无用的包,整个系统更为干净。以下是笔者总结的一些常用 aptitude
命令,仅供参考。 ......
在公司里面一直都用到linux操作系统,而公司里面用到的是centos,我自己电脑上安装的是ubuntu,而centos一般用于服务器,对于学习linux来说有点不太使用,所以我考虑把ubuntu换成fedora,当然不是说ubuntu不好,只是想换一个版本玩玩.^_^
可是接着问题就来了,fedora是怎么都安装不上,在网上搜索了一些资料,都不太适用, ......
linux多线程设计
1 引言
线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年
代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多
进程。现在,多线程技术已经被许多操作系统所支持,包括Windo ......
由于在windows下默认是gb编码,而我的vim默认是utf-8(gedit默认也是utf-8),所以打开会成乱码。修改了一下配置文件,使vi支持gb编码就好了。
$vi ~/.vimrc
let &termencoding=&encoding
set fileencodings=utf-8,gbk
$:wq
再次打开vi,显示就正常了。
vim中编辑不同编码的文件时需要注意的一些地方
......