在Linux中做C/C++开发经常会遇到一些不可预知的问题导致程序崩溃,同时崩溃后也没留下任何代码运行痕迹,因此,堆栈跟踪技术就显得非要重要了。本文将简单介绍Linux中C/C++程序运行时堆栈获取函数及方法,简单实用。...
分类:
系统相关 时间:
2014-05-10 02:18:28
阅读次数:
493
异常:Throwable一,错误:Error代表:内存溢出,堆栈溢出,语法错误二,异常:Exception1,运行时异常:runtimeException,代码有问题造成的异常,一定会报错,可通过修改代码解决例如:空指针,数组下标越界,除零,输入不匹配,数字格式不正确2,编译时异常:代码无问题,可能...
分类:
其他好文 时间:
2014-05-09 18:39:02
阅读次数:
266
西方有句谚语:不要重复发明轮子!STL几乎封装了所有的数据结构中的算法,从链表到队列,从向量到堆栈,对hash到二叉树,从搜索到排序,从增加到删除......可以说,如果你理解了STL,你会发现你已不用拘泥于算法本身,从而站在巨人的肩膀上去考虑更高级的应用。排序是最广泛的算法之一,本文详细介绍了ST...
分类:
其他好文 时间:
2014-05-07 18:11:56
阅读次数:
465
【摘要】本文主要介绍在ubuntu平台 + 自定义内核上如何安装systemtap工具包及解决编译加载运行过程中的一些问题,如何利用systemtap工具监测分析内核函数,内核模块及用户态程序。
【关键字】ubuntu, systemtap, utrace, backtrace, dtrace, callstack...
分类:
系统相关 时间:
2014-05-07 06:34:57
阅读次数:
1598
段寄存器是因为对内存的分段管理而设置的。16位CPU有四个段寄存器,其程序可同时访问四个不同含义的段,引用方面有如下规定:1.
取命令:段寄存器CS指向存放程序的内存段,IP是用来存放下条待执行的指令在该段的偏移量,把它们合在一起可在该内存段内取到下次要执行的指令。2.
取堆栈:段寄存器SS指向用于...
分类:
其他好文 时间:
2014-05-06 09:23:21
阅读次数:
443
1. exit用于结束正在运行的整个程序,它将参数返回给OS,把控制权交给操作系统;而return
是退出当前函数,返回函数值,把控制权交给调用函数。2. exit是系统调用级别,它表示一个进程的结束;而return 是语言级别的,它表示调用堆栈的返回。3.
在main函数结束时,会隐式地调用exi...
分类:
其他好文 时间:
2014-05-05 11:04:18
阅读次数:
302
int func(int a,int b,int c, int d){01243CE0 push
ebp 01243CE1 mov ebp,esp 01243CE3 sub esp,0CCh 01243CE9 push ebx...
分类:
其他好文 时间:
2014-05-05 10:37:37
阅读次数:
479
thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在
C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript,
Node.js, Smallta...
分类:
其他好文 时间:
2014-05-04 20:55:53
阅读次数:
487
10个出色的NoSQL数据库NoSQL,泛指非关系型的数据库。虽然NoSQL流行语火起来才短短一年的时间,但是不可否认,现在已经开始了第二代运动。尽管早期的堆栈代码只能算是一种实验,然而现在的系统已经更加的成熟、稳定。不过现在也面临着一个严酷的事实:技术越来越成熟——以至于原来很好的NoSQL数据存...
分类:
数据库 时间:
2014-05-04 11:11:50
阅读次数:
407
这个界面的内容选项是什么?
(1)错误的确切位置:
[项目名称][窗体名称] 行:[行号] 列:[列号]。
(2)转至代码:
单击“转至代码”链接将跳转到代码中发生错误的位置。
(3)显示调用堆栈:
如果调用堆栈与错误关联,则可单击“显示调用堆栈”链接,这将进一步扩展此错误以显示调用堆栈。 检查堆栈可提供有价值的调试信息。 例如,可以跟踪在错误发生之前调用过的函数。 调用堆栈是可选定的,因此您可以复制并保存它。...
分类:
其他好文 时间:
2014-05-04 09:35:42
阅读次数:
252