这两天看了马士兵老师的视频、视频中提到了一个万能钥匙、就是了解程序运行中对内存的操作、主要讲了堆、栈、Data、说真的有点晕、看了两遍、也就略懂一二、在这做个小小知道总结
简介
我们程序运行的时候都是放在内存里的、根据静态、成员函数、代码段、对象、等等、放在不同的内存分块里、大概分为5块
1 栈
2 堆
3 BSS段-全局...
分类:
其他好文 时间:
2014-09-08 01:05:06
阅读次数:
242
无数次遭受堆栈溢出折磨,随着系统变得复杂,故障点越来越难以查找!主要溢出情况如下:1,一般RAM最后两块空间是堆Heap和栈Stack,堆从下往上用,栈从上往下用,任意一个用完,都会进入对方的空间2,如果栈用完,进入堆的空间,这个时候系统是不会有任何异常的,也就是说,栈底没有什么意义。除非堆和栈指针...
分类:
其他好文 时间:
2014-09-07 23:46:55
阅读次数:
288
1、 进程是程序的执行,会被加载到内存中,每个进程包括程序的代码和数据,其中数据包括程序的变量的数据,外部数据,程序堆栈。2、 Linux中,输入命令,如vi main.c 通过shell来执行,会建立一个新的进程来运行它。3、 多个用于可以同时运行同一个程序,每个用户对该程序的运行均是独立的进程,...
分类:
系统相关 时间:
2014-09-07 23:41:25
阅读次数:
326
1.lua堆栈。
2.c++调用lua。
3.lua调用c++(静态链接方式和dll方式)。...
分类:
编程语言 时间:
2014-09-07 19:53:35
阅读次数:
443
1.内存四大区域
2.在程序中,变量的声明可以有多份,定义只能有一份
3.寄存器在cpu里面,没有地址
4.c语言内嵌汇编语言
5.auto变量
自动分配内存,自动释放内存。
6、栈的大小由编译器决定
修改栈的方式,右击项目à属性à配置属性à链接器à系统à堆栈保留大小
7.卡死cpu,卡死内存的程序...
分类:
其他好文 时间:
2014-09-06 13:43:23
阅读次数:
207
当谈到垃圾回收,在C#中,托管资源的垃圾回收是通过CLR的Garbage Collection来实现的,Garbage Collection会调用堆栈上对象的析构函数完成对象的释放工作;而对于一些非托管资源,比如数据库链接对象等,需要实现IDisposable接口进行手动的垃圾回收。那么什么时候使用...
分类:
其他好文 时间:
2014-09-06 09:40:43
阅读次数:
205
首先堆栈和堆(托管堆)都在进程的虚拟内存中。(在32位处理器上每个进程的虚拟内存为4GB)堆栈stack 堆栈中存储值类型。堆栈实际上是向下填充,即由高内存地址指向低内存地址填充。堆栈的工作方式是先分配内存的变量后释放(先进后出原则)。堆栈中的变量是从下向上释放,这样就保证了堆栈中先进后出的规则不与...
分类:
其他好文 时间:
2014-09-05 15:54:21
阅读次数:
182
1:装箱 其实就是将一个值类型的转换成一个引用类型,或者把值类型转换成一个被该值类型那个应用的接口类型,这个过程会使用堆栈。被装箱的值是作为一个复制赋给对象的。 int intValue = 100; Object obj = i;[html]view plaincopyusingSystem;u....
分类:
其他好文 时间:
2014-09-05 09:50:51
阅读次数:
248
OllyDbg 使用笔记 (十四)
参考
书:《加密与解密》
视频:小甲鱼 解密系列 视频
此程序运行前会有一个nag窗口,运行结束后也有一个nag窗口。破解目的要去除这两个nag窗口。
用OD加载这个程序,按F9运行,当第一个nag窗口出现时,按下暂停。查看 堆栈调用...
分类:
数据库 时间:
2014-09-04 22:24:40
阅读次数:
443