修订:2013-02-16其实还可以使用glibc的backtrace_symbols函数,把栈帧各返回地址里面的数字地址翻译成符号描述的修订:2011-06-11背景知识:· 在linux/unix中的信号处理机制,知道signal函数与sigaction的区别· 段错误的概念,CPU中断处理的步...
分类:
编程语言 时间:
2015-06-02 11:06:29
阅读次数:
539
一、堆栈 栈,按照先进先出的原则存储数据,栈底固定,栈顶浮动,也被称为先进后出表。在i386机器中,栈顶由esp的寄存器进行定位,压栈的操作使栈顶的地址减小,弹出的操作使栈顶的地址增大。栈在程序的运行中有着举足轻重的作用,栈保存了一个函数调用时所需要得维护信息这常常被称为堆栈帧。栈一般包含以下两方....
分类:
其他好文 时间:
2015-06-02 00:21:18
阅读次数:
96
linux线程私有的部分:每个线程都拥有一个独立的程序计数器,进程栈和一组进程寄存器linux进程切换时通过TSS段,TSS中的esp0和ss0都是系统初始化设置的,指向进程创建时候,分配的栈空间。当进程切换的时候,在内核态下才进行进程切换,在0.11版本中,当前进程的寄存器被压入当前进程的TSS中...
分类:
编程语言 时间:
2015-06-02 00:15:06
阅读次数:
166
CodeForces 91B ,Queue,单调栈,ACM,数据结构
There are n walruses standing in a queue in an airport. They are numbered starting from the queue's tail: the 1-st walrus stands at the end of the queue and the n-th walrus stands at the beginning of the queue. The i-th ...
分类:
其他好文 时间:
2015-06-01 22:52:50
阅读次数:
292
实现自己的方法时,如果方法无法完成方法名指定的任务,就应抛出一个异常,抛出异常时要考虑两个问题。第一个问题是抛出什么Exception派生类型。应选择一个有意义的类型。要考虑调用栈中位于高出的代码,要知道那些代码如何判断一个方法失败,以便执行一些得体的恢复代码。可直接利用FCL中定义好的一个类型,....
分类:
其他好文 时间:
2015-06-01 22:07:16
阅读次数:
122
1,在点击返回时,不想退出应用,直接模拟HOME键操作,可以写在onKeyDown事件中,也可以写在其它自己想要实现的地方:
Intent intent = new Intent(Intent.ACTION_MAIN);
// 创建一个新的任务栈(这个必须要写)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
...
分类:
移动开发 时间:
2015-06-01 18:56:49
阅读次数:
149
Android-manifest详解
一 配置1
android:name:名字
android:theme:主题
android:label:标签
android:description:描述
android:icon:图标
android:launchMode:启动模式
android:screenOrientation:屏幕方向...
分类:
移动开发 时间:
2015-06-01 18:51:49
阅读次数:
216
Android-Activity任务栈
一 任务栈
任务Task:就是由多个Activity(可能进程不同,例如启动系统的Activity)按照顺序组成的业务逻辑
任务有TaskId:一个任务中的多个Activity进程的任务TaskId相同
任务是一个横向的概念,进程是一个纵向的概念
任务栈TaskStack:由多个Activity进程组成的栈,遵循先进后出
二 附上...
分类:
移动开发 时间:
2015-06-01 18:49:31
阅读次数:
148
/** * javap命令可以对class反汇编得到其字节码文件(此命令并不是jdk8开始的,只不过jdk8中对工具进行加强,增加了一些参数,可通过 javap -help了解) * * 注意: * 字节码文件在虚拟机中是通过栈帧来保存指令的,也称为操作栈,是一个后入先出的栈。并不是针对寄存器的.....
分类:
其他好文 时间:
2015-06-01 18:48:22
阅读次数:
130
转自:http://tonybai.com/2014/11/05/how-stacks-are-handled-in-go/Go 1.4Beta1刚刚发布,在Go 1.4Beta1中,Go语言的stack处理方式由之前的"segmented stacks"改为了"continuous stacks"...
分类:
编程语言 时间:
2015-06-01 18:10:16
阅读次数:
186