易截截图软件、单文件、免安装、纯绿色、仅160KB

linux学习 运行时确定程序出错的位置

       首先,在编译程序时,增加-g选项,使执行文件包含符号信息。其次,在程序开始运行时,调用api函数设置信号处理函数(如signal(), sigaction()等),用来处理各种信号。例如程序发生”除0错误”时,就会发出一种信号。最后,完成一个函数堆栈输出函数。用backtrack()获取函数调用堆栈,然后用backtrace_symbols()转换为字符串来显示。
       我在eclipse环境下,完成了demo:
1.       用鼠标右键单击工程,选择属性,弹出属性对话框。
2.       在属性对话框中,选择Build->setting。在g++/gcc编译属性中添加编译参数”-g”。
3.       创建一个void trace_show(int sig)函数,用来处理信号。在其中输出函数调用堆栈信息。
4.       在程序启动位置,调用sigaction()函数。
 
附录:信号表
名称                 默认动作            说明
SIGHUP         终止进程       终端线路挂断
SIGINT         终止进程       中断进程
SIGQUIT        建立CORE文件  终止进程,并且生成core文件
SIGILL         建立CORE文件        非法指令
SIGTRAP        建立CORE文件        跟踪自陷
SIGBUS         建立CORE文件        总线错误
SIGSEGV        建立CORE文件        段非法错误
SIGFPE         建立CORE文件        浮点异常
SIGIOT         建立CORE文件      


相关文档:

嵌入式linux开发环境构建

一、安装虚拟机VMware
 
二、在虚拟机上安装linux
 
三、安装VMware  tools
      1、虚拟机菜单栏—>VM—>Install  VMware  Tools
      2、进入操作系统安装VMware Tools
四、更新源并更新可用的程序列表 ......

科技部发新规,Linux的春天到了






<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
-->
    4

10
日,科技部就“国家自主创新产品认定工作”发出通知,公开征求意见,其中的
指导思想有重大突破。具体情况如何?
 
    2009

10

30
日,在我国政府 ......

linux源代码阅读工具进阶

Windows下的源码阅读工具Souce Insight凭 借着其易用性和多种编程语言的支持,无疑是这个领域的“带头大哥”。Linux/UNIX环境下呢?似乎仍然是处于百花齐放,各有千秋的春秋战国时代,实 际上,似乎其环境下的任何软件都是处于一种逐鹿中原的态势,也许这就是“集市”之于“大教堂”的优势所 ......

Linux设备驱动程序学习之基础篇


Linux设备驱动程序学习笔记系列文章原作者是:Tekkaman Ninja,他博客地址:
http://blog.chinaunix.net/u1/34474/showart_404278.html
在此向Tekkaman Ninja表示感谢,写出这么好的文章,使我少走了很多弯路。
Linux设备驱动程序学习(0)-Hello, world!模块
文章来源:http://blog.chinaunix.net/u2/62910/showa ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号