AsmTools】的更多相关文章

前言 https://wiki.openjdk.java.net/display/CodeTools/asmtools 在OpenJDK里有一个AsmTools项目,用来生成正确的或者不正确的java .class文件,主要用来测试和验证. 我们知道直接修改.class文件是很麻烦的,虽然有一些图形界面的工具,但还是很麻烦. 以前我的办法是用ASMifier从.class文件生成asm java代码,再修改代码,生成新的.class文件,非常麻烦. AsmTools引入了两种表示.class文件…
原文地址:http://blog.chinaunix.net/uid-20548989-id-1667169.html HLA简介         HLA,英文"High Level Assembler"(高阶汇编)的缩写,即所谓高级语法的汇编,它将一些高级语言中的特性加入汇编编写中,但它在最终的编译连接时还是要用到MASM的编译器和连接器.       更进一步的解释请参看:    http://webster.cs.ucr.edu/AsmTools/HLA/index.html  …
环境规划: 节点1: tc1 192.168.56.101 内存:2G 节点2: tc2 192.168.56.102 内存:2G 物理备库:tcdg192.168.56.108内存:1.5G 操作系统:Windows 2008 R2 Enterprise ************  RAC部分 ************ 一.准备工作 1.改动提升权限提示方式为"不提示,直接提升"(默觉得"非Windows二进制文件的允许提示") cmd> secpol.ms…
为什么要学习java虚拟机 1.学习java虚拟机的本质,是了解java程序是如何被执行且优化的.这样一来,才可以从内部入手,达到高效编程的目的.与此同时,你也可以为学习更深层级.更为核心的java技术打好基础. 2.学习java虚拟机的好处 (一)可以针对自己的应用,最优化匹配运行参数. (二)可以更好地规避虚拟机在使用中的bug,也可以更快地识别出java虚拟机中的错误. (三)学习最前沿.最成熟的垃圾回收算法实现以及及时编译器的实现,对以后学习其他的代码托管技术很有帮助. (四)虚拟机也可…
1. JRE,JDK JRE : 包含运行 Java 程序的必需组件,Java 虚拟机+ Java 核心类库等. JDK :  JRE + 一系列开发.诊断工具. 2. java字节码 编译器将 Java 程序转换成虚拟机所能识别的指令序列,也称 Java 字节码.之所以这么取名,是因为 Java 字节码指令的操作码(opcode)被固定为一个字节. 3. 为什么java要在虚拟机里运行? java程序可以在不同平台的虚拟机上运行,实现“一次编写,到处运行”. java虚拟机带来了一个托管环境(…
今天偶然想起之前和朋友讨论过的一个问题:如何唯一确定一个 Java 类?我相信大多数朋友遇到这个问题的回答都是:类的全路径呗.但事实上,唯一确定一个 Java 类,单单靠类路径是不够的,还要多加上一个东西:类加载器.也就是说,类加载器 + 类路径才唯一确定一个 Java 类. 为了证明我所说的,我们来做一个简单的实验. //自定义一个类加载器 ClassLoader myLoader = new ClassLoader() { @Override public Class<?> loadCla…
最近在系统回顾学习 Java 虚拟机方面的知识,其中想到一个很有意思的问题:布尔型在虚拟机中到底是什么类型? 要想解答这个问题,我们看 JDK 的源码是无法解决源码的,我们必须深入到 class 文件中才能解决问题.于是他给出了这么一道题: public class Foo{ static boolean flag; public static void main(String[] args){ flag = true; if(flag){ System.out.println("Hello,…
=> build/tools/zipalign: out/host/linux-x86/bin/zipalign (host) => build/tools/atree: out/host/linux-x86/bin/atree (host) => build/tools: => build/tools/bin2asm: out/host/linux-x86/bin/icudata (host) => build/tools/check_prereq: system/bin/…
原文地址:http://blog.chinaunix.net/uid-20548989-id-1667169.html HLA简介         HLA,英文"High Level Assembler"(高阶汇编)的缩写,即所谓高级语法的汇编,它将一些高级语言中的特性加入汇编编写中,但它在最终的编译连接时还是要用到MASM的编译器和连接器.       更进一步的解释请参看:    http://webster.cs.ucr.edu/AsmTools/HLA/index.html ●…
这是一篇修改class文件的文章.注释并不完全,要抓住这次练习的目的: boolean在虚拟机中是以何种方式解读的 好的,开始我的表演 1.安装asmtools.jar 2.编写一个java文件,并编译,执行  2.1 Foo.java public class Foo { public static void main(String[] args) { boolean flag = true; if (flag) { System.out.println("Hello, Java!"…