`
李静波
  • 浏览: 53832 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

从哪里入手呢?

阅读更多
这么多行的代码从哪里看呢?我想到了Java.exe。
在目前发布的代码中Java.exe的代码还没有被以GPL的协议OpenSource。
只好先借助原来发布的代码来阅读Java.exe的实现了。
 
我用这个 \jdk-1_5_0-src-scsl\j2se\src\windows\bin 来阅读了Java.exe的代码。
 
Java.exe的实现使用了JNI。也就是说JVM对外暴露的唯一接口就是JNI,即使是Java.exe也没有例外。
 
\hotspot\src\share\vm\prims 下面应该是JNI的主要代码
 
在C++中通过JNI创建JVM的第一步是调用JNI_CreateJavaVM获得一个JNIEnv*和一个JavaVM* 。
然后是用JNIEnv*来获得某个方法,例如Java.exe就是获得Main方法,然后执行它。
执行完,释放JVM资源,结束程序。
 
例如下面的代码是省略了所有错误处理代码的示例:
    JNIEnv *env;
    JavaVM *jvm;
    JavaVMInitArgs vm_args;
    //创建JVM
    JNI_CreateJavaVM(&jvm,(void**)&env,&vm_args);
   
    jclass cls = env->FindClass("MainClass");
   
    jmethodID mid = env->GetStaticMethodID(cls, "main", "([Ljava/lang/String;)V");
    //调用Java程序main()方法,启动Java程序
    env->CallStaticVoidMethod( cls, mid, NULL);
       
    jvm->DestroyJavaVM();//释放JVM资源
 

看来JNI_CreateJavaVM是我要进入的“兔子洞”了。
分享到:
评论

相关推荐

    我们应该怎么发明一个专利

    但是,发明一个专利需要从哪里入手呢? 首先,您需要识别一个问题或挑战,它可以是您个人经验中的实际问题,也可以是市场上存在的问题。然后,您需要收集创意搜集,了解目前的技术和市场状况。通过初步评估,您可以...

    正确发挥无线仪表的作用

    我又应该从哪里入手呢? 运用一种新的技术应该是循序渐进的,如果只用一种无线设施就要一下子把整个工厂都变成无线工厂,那显然是不可能的,无论从成本、时间还是风险考虑那都是不现实的。现在通过艾默生的智能无线...

    零基础学python应该从哪里入手

    零基础学习Python的入手方向: 1、首先你确定学习Python用来做什么方向,爬虫还是……; 2、确定方向后,就按照你喜欢的方式找学习资料; 喜欢看视频,就上网找视频,喜欢看书,就买本经典书籍。 3、上网搜教程在...

    “爸爸妈妈,我从哪里来?”---基于五地家庭性教育现状及差异调查分析报告.pdf

    本份报告围绕“爸爸妈妈,我从哪里来?”这一主题,通过对中国五地家庭性教育的现状调查分析,详细探讨了当前我国在家庭性教育方面存在的问题,并提出了相应的建议。 首先,报告指出,性教育在家庭中的缺失是一个...

    如何在软件项目中做测试设计

    项目级测试设计 软件测试 在测试设计阶段,要考虑的因素有很多,比如:测试...如果计划这样的测试任务,我们从哪里入手呢? 要是把覆盖率作为基准的话,测试活动会更容易被评价和度量。从管理上来说,覆盖率这个标

    java 反编译工具

    呵呵,那你就该从应用程序入手…… 得到的它的加密算法,自然KeyGen就不在话下了……(但是这也有列外,如果它是用的公钥秘钥对加密的,就没有办法喽,只能用第二种方法。) 这种办法只适合对付只要一个注册号,别...

    若依后台框架,入手学习笔记记录

    若依后台 ...├── common // 工具类 │ └── annotation // 自定义注解 │ └── config // 全局配置 │ └── constant // 通用常量 │ └── core // 核心控制 │ └── enums // 通用枚举

    如何才能写好一篇软文 四方面入手.docx

    如何才能写好一篇软文 四方面入手 本文将从四个方面讲解如何写好一篇软文,包括对网站的定位、软文标题的重要性、软文正文的核心内容和结尾的艺术性。通过这四个方面的讲解,读者可以了解如何写好一篇高质量的软文...

    一个资料员的自述,如何做资料。从新手做起.doc

    7. **质量验收**:检验批报验应逐级进行,从分项到分部再到单位工程质量验收记录,如有不合格,需进行补救措施,如混凝土的回弹试验。 8. **合规性文件**:施工前,资料员需准备施工许可证、施工组织设计、质量管理...

    学习SQL Server 2005:从哪里开始?.pdf

    总结来说,学习SQL Server 2005需要从了解其新版本的特点和变化入手,通过文档、实例、教程和专家的指导,逐步熟悉新工具的使用,最终达到能够独立进行数据库设计、管理和优化的水平。通过不断的实践和学习,SQL ...

    联想的复盘方法论—有效复盘的六个步骤.pptx

    从“与预期不一致”的地方入手或者“事情的关健点“入手。 Step5:推演规律 当我们复盘的时候,得到了一个规律或者认识,对这个规律或者认识在实践中的运用情况,要进行推演,而不是得到结论就止步了。复盘的结论是...

    小学一年级上册语文雨点儿PPT教案.pptx

    首先,PPT从汉字教学入手,如“点”、“清”、“数”等基础汉字,通过清晰的字形展示,帮助学生正确书写和识别。同时,通过“飘落”、“空”、“问”、“答”等动词和名词的组合,让学生初步了解词语搭配和句子结构...

    技术管理实战36讲.zip

    6. **团队建设**:"16丨团队建设该从哪里入手?.html"提供了团队建设的初步指南,包括建立信任、促进合作、提升团队精神等方面的方法。 7. **管理入门**:"11丨我刚开始带团队,从哪里着手呢?.html"针对新手管理者...

    论文研究 - 长三角地区经济增长因素研究

    基于中国长江三角洲25个城市的数据,采用卢卡斯内生经济增长模型的方法,建立固定效应面板模型,对产业结构,资本之间的关系进行了实证分析。长江三角洲地区的存量,利用外资,对外开放程度,政府职能,基础设施,...

    数据分析思路-让数据生动起来.pptx

    从哪里入手? * WHO——谁?由谁来承担?谁来完成?谁负责? * HOW MUCH——多少?做到什么程度?数量如何?质量水平如何?费用产出如何? 五、数据分析小心得 * 使用尾数法、首位法、数位法、极值法等方法来进行...

    5W2H分析法.ppt

    从哪里入手? (4) WHEN—— 何时?什么时间完成?什么时机最适宜? (5) WHO—— 谁?由谁来承担?谁来完成?谁负责? 2H 的内容: (1) HOW —— 怎么做?如何提高效率?如何实施?方法怎样? (2) HOW ...

    5W2H分析法--案例原因分析.doc

    从哪里入手? 4. WHEN——何时?什么时间完成?什么时机最适宜? 5. WHO——谁?由谁来承担?谁来完成?谁负责? 6. HOW——怎么做?如何提高效率?如何实施?方法怎样? 7. HOW MUCH——多少?做到什么程度?数量...

    Head First jQuery(中文版) ((美)Ryan Benedetti) 中文PDF扫描版.pdf

    你可能听说过jquery能帮你为网站和应用增加交互性,但是不知道从哪里入手,是这样吗? 《head first jquery(中文版)》就是你的车票,拿到这张车票,你就能轻松地构建漂亮的交互式web网站,就像真正的应用一样。 ...

    教新手怎么入手软件测试

    教新手怎么入手软件测试当你刚踏入测试团队的时候,你可能无从下手...以及业务处理的过程,了解软件的测试重点在哪儿。所以业务描述和测试点就显的十分的重要了。而在这里我建意测试新手要对测试点进行详细的描写,最好

Global site tag (gtag.js) - Google Analytics