一、环境准备 系统:centos 7.6 软件:oracle 11.2.0.4 database: p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip grid集群: p13390677_1120 ...
分类:
数据库 时间:
2020-03-06 12:59:26
阅读次数:
85
一.中断门,和调用门差不多,细节方面有些差异: 1.符号表的问题,调用门中所使用的是GDT表,而中断门中使用的是IDT表. 2.中断门,不能直接传参数. 3.TEPY标志不一样,调用门是1100 ,32位中断门是1110 ,16位中断门是0110. 4.调用方式不太一样,调用门使用的是CALL调用, ...
CGLIB代理: CGLIB底层:使用字节码处理框架ASM,来转换字节码并生成新的类。 CGLIB(CODE GENERLIZE LIBRARY)代理是针对类实现代理,主要是对指定的类生成一个子类,覆盖其中的所有方法,所以该类或方法不能声明称final的。 如果目标对象实现了接口,可以强制使用CGL ...
分类:
其他好文 时间:
2020-03-05 01:36:05
阅读次数:
93
Spring Boot版本:2.2.4 每个springboot的启动类都有一个@SpringBootApplication注解 import org.springframework.boot.SpringApplication; import org.springframework.boot.au ...
分类:
编程语言 时间:
2020-03-04 00:09:33
阅读次数:
92
前言 使用命令行进行汇编语言编译十分繁琐,而一个成熟的编译器应需一键就完成程序所有的编译运行。 本文基于Windows平台,配置Asm编译环境,使用Notepad++搭建一个简易的Asm编译器教程。 环境及软件 环境:Windows10 软件:Notepad++ V7.5.8 编译:fzuasm N ...
分类:
编程语言 时间:
2020-03-02 22:28:38
阅读次数:
1318
一、原理区别: java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。 而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。 1、如果目标对象实现了接口,默认情况下会采用JDK的动态 ...
分类:
编程语言 时间:
2020-02-29 20:22:51
阅读次数:
73
int main(){ _asm { //寻找kernel32.dll的基地址 xor ecx, ecx; mov eax, dword ptr fs : [ecx + 30h]; //EAX = PEB mov eax, dword ptr[eax + 0Ch]; //EAX = PEB->Ldr ...
分类:
系统相关 时间:
2020-02-29 14:41:16
阅读次数:
438
C语言 汇编语言 一、C语言 创建变量计算值 #include <stdio.h> int main(void) { // 数据类型 int a = 10; int b = 20; // 计算a+b int c = a + b; printf("%d\n",c); return 0; } 二、C语言 ...
分类:
编程语言 时间:
2020-02-27 13:21:13
阅读次数:
62
首先在VS里面创建个空项目,然后添加汇编文件 .asm, 右键asm文件属性 常规,改成下图的设置 , 从生成中排除改为否, 项类型改为自定义生成工具 然后点确定。 再次右键asm文件属性, 配置属性 自定义生成工具 常规 :在命令行中写入: ml /c /coff %(fileName).asm ...
分类:
其他好文 时间:
2020-02-25 23:55:02
阅读次数:
205
个人博客 "http://www.milovetingting.cn" ASM字节码插桩 前言 热修复的多Dex加载方案中,对于5.0以下的系统存在CLASS_ISPREVERIFIED的问题,而解决这个问题的一个方案是:通过ASM插桩,在类的构造方法里引入一个其它dex里的类,从而避免被打上CLA ...
分类:
其他好文 时间:
2020-02-25 23:54:29
阅读次数:
139