ORACLE数据库所使用的内存主要涉及到两个方面:PGA和SGA。
1.1 PGA管理
PGA指的是程序全局区(Program Global Area),是服务器进程(Server Process)使用的一块包含数据和控制信息的内存区域,PGA是非共享的内存,在服务器进程启动或创建时分配(在系统运行时,排序、连接风操作也可能需要进一步的PGA分配),并为Server Process排他访问,所以PGA中的数据结构并不需要通过latch来保护;
1.2 什么是PGA
进程的创建通常有两种模式:专用...
分类:
数据库 时间:
2014-07-28 00:19:19
阅读次数:
296
SGA管理
SGA指系统全局区(System Global Area),是一块用于加载数据、对象并保存运行状态和数据库控制信息的一块内存区域,在数据库实例启动时分配,当实例关闭时释放,每个实例都拥有自己的SGA区。
在第一章曾经?到,当数据库启动到nomount状态时,SGA已经分配,同时启动后台进程,在SQL*Plus中通过show sga命令可以看到SGA的分配情况:
sys@felix SQL>show parameter sga
NAME ...
分类:
数据库 时间:
2014-07-28 00:16:59
阅读次数:
350
ZjDroid是基于Xposed Framewrok的动态逆向分析模块,逆向分析者可以通过ZjDroid完成以下工作:
1、DEX文件的内存dump
2、基于Dalvik关键指针的内存BackSmali,有效破解各种流行加固方案
3、敏感API的动态监控
4、指定内存区域数据dump
5、获取应用加载DEX信息。
6、获取指定DEX文件加载类信息。
7、dump Dalvik java堆信息。
8、在目标进程动态运行lua脚本。...
分类:
移动开发 时间:
2014-07-26 02:24:16
阅读次数:
297
直接内存并不是虚拟机运行时数据区的一部分,也不是Java虚拟机规范中定义的内存区域,但是这部分内存也被频繁的使用,而且也可能导致OutOfMemoryError异常出现,在JDK1.4中新加入了NIO类,引入了一种基于通道与缓冲区的I/O方式,它可以使用Native函数库直接分配堆外内存,然后..
分类:
其他好文 时间:
2014-07-23 21:15:26
阅读次数:
228
理解stack栈的三种含义:数据结构、代码运行方式、内存区域...
分类:
其他好文 时间:
2014-07-23 13:13:16
阅读次数:
180
I/O管理
--I/O核心子系统
一、I/O调度概念
操作系统开发人员通过为每个设备维护一个请求队列来实现调度。当一个应用程序运行阻塞I/O系统调用时,该请求就加到相应设备的队列上。
二、高速缓存与缓冲区
1.高速缓存
高速缓存是可以保留数据拷贝的高速内存。
主要是用来提高访问速度!实例:chrome浏览器第一次与第二次启动的速度差别!
2.缓冲区
缓冲区是用来保存在两设备之间或在设备和应用程序之间所传输数据的内存区域。缓冲技术可分为:
单缓冲:在设备和处理...
分类:
其他好文 时间:
2014-07-22 23:55:07
阅读次数:
342
字符串
从概念上讲,C中没有字符串数据类型
C中使用字符数组来模拟字符串
C中字符串是以‘\0’结束的字符数组
C中字符串可以分配于栈空间、堆空间或者只读存储区
C中字符串常量表示一块包括字符串中所有字符以及一个空字符('\0')的内存区域的地址
字符串长度就是字符串所包含字符的个数
C中字符串长度指...
分类:
其他好文 时间:
2014-07-18 21:39:21
阅读次数:
247
共享内存共享内存是被多个进程共享的一部分物理内存。共享内存是进程间共享数据的一种最快的方法,一个进程向共享内存写入了数据,共享这个内存区域的所有进程就可以立即看到其中的内容。共享内存实现分为连个步骤:一、创建共享内存,使用shmget函数。二、映射共享内存,将这段创建的共享内存映射到具体的进程空间去...
分类:
系统相关 时间:
2014-07-14 22:28:41
阅读次数:
334
静态注册码的追踪,不论对于没有壳还是加了壳,加了密的程序,都是比较简单的。
基本思路还是和其他的一样,1、寻找字符串; 2、寻找关键函数 ; 3、设置消息断点
对于稍微复杂一点的,搜索字符串方法,可以有以下改进:
到指定的程序领域暂停下来,到内存(M)区域,可以搜索对应的字符串,看看有哪些变化。可以从区块的角度对每个区块进行扫描。
而在C(cpu)中查看的仅仅是本区域的字符串。...
分类:
其他好文 时间:
2014-07-13 18:13:26
阅读次数:
213
C分为四个区:堆,栈,静态全局变量区,常量区 c++分为四个区:堆,栈,静态全局变量去,常量区,自由存储区。 根据c/c++对象生命周期不同,c/c++的内存模型有三种不同的内存区域,即自由存储区,动态区、静态区。 自由存储区:局部非静态变量的存储区域,即平常所说的栈 动态区:用operato...
分类:
编程语言 时间:
2014-07-10 15:18:02
阅读次数:
276