`
RednaxelaFX
  • 浏览: 3047884 次
  • 性别: Icon_minigender_1
  • 来自: 海外
社区版块
存档分类
最新评论

关于Java程序的执行的一次分享

    博客分类:
  • Java
阅读更多
上周六参加程序员圆桌会议第二期--关于JVM的那些事的活动,做了一次“简略”的分享……
对里面的每个知识点来说都确实是相当简略,但我太贪心了,想一口气把相关的内容多说一些,结果没控制住时间,不小心连着废话了4个小时……

期待以后能听到校长毕玄本来要在这次活动做的分享~

Anyway,那4个小时的内容有现场录像,毕玄老大已经将视频上传,并在他的博客放出,地址是:杭州程序员圆桌交流第二期视频
现在视频文件的有效链接是:
Part I
Part II
Part III
Part IV
Part V
Part VI
(国内的同学打不开的话请自备梯子喔)
现场的讲解过程中有些口误的状况,主要原因当然是我水平有限。各位同学如果发现错误的话请积极反馈哦~

仍在不断演化中的那演示稿可以在这里的附件下载到。没有JavaEye帐号的同学可以从115网盘下载:http://u.115.com/file/t03916e70a
其中有几张GIF图在转成PDF后就变静态了,可以到我这边的原帖去看相应的图。


演示稿中有很多地方还是空白的……觉得有些概念还是画个图来比较容易解释,但画出能清晰解释概念的图也挺烧时间的,所以很抱歉,只能把现在“as-is”的稿发出来了。
真正有意思的我觉得不是我写的字,是演示稿里嵌的链接;可以把这个演示稿看成资料堆的粘合剂之类的 >_<

另外这演示稿与其说是为做presentation用还不如说是资料的一顿乱堆……以后要是再有机会做presentation的话得从里面抽出确定的主题出来精简下才行 T T

===============================================================

这次分享的主题是Java程序的执行。以Sun JDK的实现为例,从Java语言的源码开始,通过源码级编译器(javac)编译为Class文件,再由底下的JVM来执行;其中JVM在概念上是怎样的,HotSpot VM是一个怎样的JVM,为“执行程序”提供了怎样的运行时支持,解释器与JIT编译器各自又是怎样的。内容可能有点分散、冗长、在某些点过于钻到细节里。请各位有耐心阅读演示稿的同学在遇到觉得不清晰、或是觉得有错误的地方时不啬指点一下,让我们能共同学习进步 ^_^

更新:
新版本请在另一帖的附件里下载:Java虚拟机分享演示稿2010-12-28版
  • 大小: 49.9 KB
分享到:
评论
33 楼 RednaxelaFX 2011-12-10  
ydpiaoyun 写道
gif图片是怎么做的啊

我是用FireWorks做多帧PNG然后导出为GIF的。每帧都是人肉做的嗯,方法很土鳖 =_=
32 楼 ydpiaoyun 2011-12-09  
gif图片是怎么做的啊
31 楼 dollordoll 2011-08-27  
谢谢分享 学习了
30 楼 0704681032 2011-01-06  
很好的资料,就是水平不够,到后来就听不懂了...
29 楼 arcko 2011-01-04  
杭州西湖好风光
28 楼 dplead 2010-11-28  
RednaxelaFX好厉害,我这阵子也在学习这方面相关的知识,谢谢共享
27 楼 kingsvinus 2010-08-24  
请问
杭州程序员圆桌交流第三期:GC Tuning Case
的视频在哪里下载呀?
u115网盘不能下了。谢谢了。
26 楼 copy 2010-06-30  
看了一下挺好的
本人菜鸟
虽然有的东西没听过
但大体不影响
25 楼 lurker0 2010-06-23  
PDF内容好多啊   再展开一下都可以写书了
24 楼 RednaxelaFX 2010-06-02  
ZangXT 写道
先谢谢博主提供这么有价值的分析、学习资料。
pdf文件中好像有些图片显示不出来。

如果是有些页只有标题下面没东西的话,那些是原本就还没写完的地方……也就是TODO/FIXME
有兴趣的话我可以发原始PPTX给你 ^_^ 可惜最近都没怎么添加内容进去。
23 楼 ZangXT 2010-06-02  
先谢谢博主提供这么有价值的分析、学习资料。
pdf文件中好像有些图片显示不出来。
22 楼 lgdlgd 2010-05-31  
sesame 写道
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?


同感,后面都没有看了,不知道在前面提到的一个可以嵌入“注解解释器”还是什么来着,后面的视频有没有提到怎么嵌入,这个还估计还能玩一玩。。。
21 楼 RednaxelaFX 2010-05-30  
sesame 写道
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?

呃,那么夸张……抱歉哈,确实不是所有内容都“实用”的。本来应该跳着看的,挑自己感兴趣的看了就OK。
对主要写Java应用的程序员来说,JVM本身就是个良好的抽象层,本意就是屏蔽过多早“噪音”,让程序员能安心的实现业务逻辑。换句话说那底下是怎么实现的,本身并不是一般工作上会需要特别关注的地方。

大概……我只是想出点力气,把实现方式总结出来,去对冲掉一些对JVM“实现”方面的误解吧,例如说“局部变量在循环内定义比在循环外定义多耗内存”之类的。本来这种内容就已经穿过JVM的抽象层而试图向更接近底层的方向去探,所以如果停留在JVM抽象层以上来分析的话就会有问题。
我是觉得这种本来就不需要Java程序员去关心的部分,跟工作没关系的话不去碰就是最好了,不然留下错误的印象反而不好。

经常被老大说我在错误的地方花费了过多精力。我承认也同意在现在的工作上是这样的。所以说那视频……原本兴趣不大的话,全部看完确实是比较浪费时间的,而且很多问题也没说清楚。抱歉了哈 <(_ _)>
20 楼 sesame 2010-05-29  
经老大要求,看那长长的4个小时视频,化了我整整1下午时间。前面100页PPT还听的懂,能理解,感觉有用;后面100页感觉和java程序的工作实在是没有联系,看不下去。大家觉得如何?
19 楼 ssooss 2010-05-10  
各位都是大大,咱实在是看不懂
18 楼 wujiazhao88 2010-05-05  
从毕玄的博客上看到的,特意过来看,果然是好分享啊。谢啦兄弟!
17 楼 landslide 2010-05-04  
感谢分享~
16 楼 xiaolongfeixiang 2010-05-04  
非常感谢你们的无私奉献!!
15 楼 lbfhappy 2010-05-04  
<p>如果视频下载不了的,可以到如下地址下载,我已经上传到我的QQ中转站去了。<br>不知道QQ中转站可以被下载多少次,如果下载不了的,可以发email给我(hadeslee#vip.qq.com),我再发给你们。<br>感谢楼主对知识的无私奉献。<br><br>1,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 ca938849)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=2a613933329b9fcb754d4a321e380616010709550a0f010a4e510e000a15005b5754145209080c1405505856000f570f5a020805382c3474513409030b0f05143a0e4c674d5a5117050d4f337f&amp;t=exs_ftn_download&amp;code=ca938849" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=2a613933329b9fcb754d4a321e380616010709550a0f010a4e510e000a15005b5754145209080c1405505856000f570f5a020805382c3474513409030b0f05143a0e4c674d5a5117050d4f337f&amp;t=exs_ftn_download&amp;code=ca938849</a><br><br>2,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 6e0e947f)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7f65306595079b94204943641f3405490e560355585601571b01565c0819035501571d5c0e56024b5206535d0b5254045003005d3920372b043000550a03054b6f0a45314c565248500946657e&amp;t=exs_ftn_download&amp;code=6e0e947f" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7f65306595079b94204943641f3405490e560355585601571b01565c0819035501571d5c0e56024b5206535d0b5254045003005d3920372b043000550a03054b6f0a45314c565248500946657e&amp;t=exs_ftn_download&amp;code=6e0e947f<br></a><br>3,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 6a83e9d8)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7f613833c968d5ca204d4b324339561753580156520f53081b030d00511450010403150a5209521552020e005258010106575b56652d647504340803560e57156f0e4d67105b0116500d4e3322&amp;t=exs_ftn_download&amp;code=6a83e9d8" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7f613833c968d5ca204d4b324339561753580156520f53081b030d00511450010403150a5209521552020e005258010106575b56652d647504340803560e57156f0e4d67105b0116500d4e3322&amp;t=exs_ftn_download&amp;code=6a83e9d8</a><br><br>4,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 8ac6dc78)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=7161633687f09cca2e4d1037426305170b0305555454065915520706024e030e5e034e0e075506150e5902075d54525d0f565a57647737750a34530657540315610e1662110152165e0d153623&amp;t=exs_ftn_download&amp;code=8ac6dc78" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=7161633687f09cca2e4d1037426305170b0305555454065915520706024e030e5e034e0e075506150e5902075d54525d0f565a57647737750a34530657540315610e1662110152165e0d153623&amp;t=exs_ftn_download&amp;code=8ac6dc78<br></a><br>5,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 04bfb1fe)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=79346266bc05b691261811674431544a010d54575a0154541d030103511c520403504f5e5b0853485556560350075f5306555051622566280261525651065348695b17321753034b5658146625&amp;t=exs_ftn_download&amp;code=04bfb1fe" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=79346266bc05b691261811674431544a010d54575a0154541d030103511c520403504f5e5b0853485556560350075f5306555051622566280261525651065348695b17321753034b5658146625&amp;t=exs_ftn_download&amp;code=04bfb1fe<br></a><br>6,<span style="font-family: 'lucida Grande', Verdana; color: #8396b7; line-height: 19px;">(提取码 c9c0d124)</span><br><a href="http://mail.qq.com/cgi-bin/ftnExs_download?k=2a3963306828cdcb751510314231001b520e5101025402014e5f0709051c0607010c4e095d030619515c005507030055560b500164253279516c5300570604193a5616641153571a0555153023&amp;t=exs_ftn_download&amp;code=c9c0d124" target="_blank">http://mail.qq.com/cgi-bin/ftnExs_download?k=2a3963306828cdcb751510314231001b520e5101025402014e5f0709051c0607010c4e095d030619515c005507030055560b500164253279516c5300570604193a5616641153571a0555153023&amp;t=exs_ftn_download&amp;code=c9c0d124</a></p>
<p> </p>
14 楼 dargoner 2010-05-03  
PDF我看的一楞一楞的,太牛逼了

相关推荐

    毕业设计(java程序2005new).rar_java 毕业设计_java毕业设计_java程序_毕业设计_程序设计

    【标题】"毕业设计(java程序2005new).rar"是一个关于Java编程语言的毕业设计项目,其中包含了2005年的一个新版本的Java程序。这个项目可能是针对计算机科学或软件工程专业学生的,旨在展示他们在学习Java编程过程...

    Java程序设计+PPTjavalearnsa资料分享

    这份"Java程序设计+PPTjavalearnsa资料分享"集合了关于Java学习的重要资源,旨在帮助初学者和进阶者提升Java编程能力。资料包含PPT教程,可能涵盖了从基础语法到高级特性的全面讲解。 1. **Java基础知识**:Java是...

    java源程序

    Java以其“一次编写,到处运行”的跨平台特性,深受开发者喜爱。本文将深入探讨Java源程序的相关知识点,以及如何利用编辑器进行高效开发。 首先,我们要明白Java源程序是由Java编程语言编写的文本文件,其扩展名...

    记录一次Java爆掉之后的日志

    标题“记录一次Java爆掉之后的日志”暗示了这是一个关于Java程序运行时出现严重问题的案例,可能是由于内存溢出、线程死锁或者系统资源耗尽等原因导致的程序崩溃。这种问题通常会生成一个名为“hs_err_pid[进程ID]....

    JVM分享java虚拟机

    总的来说,这个JVM分享20101228.pdf资料提供了关于JVM基础的详细信息,适合初学者入门,同时也对有经验的开发者有所帮助,深入理解JVM的工作原理对于优化Java应用程序的性能至关重要。通过学习这些基础知识,开发者...

    JAVA源码Java火影忍者游戏源代码

    1. **跨平台能力**:Java编写的程序可以在任何支持Java虚拟机(JVM)的平台上运行,这意味着开发者只需编写一次代码即可在多个操作系统上部署。 2. **丰富的类库支持**:Java拥有大量的开源库和框架,如LibGDX、...

    Java Runtime Environment-6.0.450.rar

    Java字节码是一种平台无关的中间语言,使得Java程序能在任何安装了相应JRE的平台上运行,实现了“一次编写,到处运行”的目标。JRE 6.0.450中的JVM可能包含了针对该版本的性能优化和安全更新。 除了JVM,JRE还包含...

    java实验报告【新】—多线程技术的应用分享.pdf

    在Java中,线程是程序执行的独立路径,可以并发运行,提高程序的执行效率。 首先,实验的第一个任务是通过继承Thread类创建线程。线程类MyNewThread需要重写run()方法,此方法包含了线程的具体执行逻辑。在run()...

    Java语言开发的五子棋

    Java是一种跨平台的编程语言,它的“一次编写,到处运行”特性使得五子棋可以在多种操作系统上运行。在Java中,程序由类组成,类是对象的蓝图,而对象则是程序的基本实体。五子棋游戏的每个棋子、棋盘以及游戏规则都...

    JAVA实现讯友桌面通讯录源码分享.

    【标题】"JAVA实现讯友桌面通讯录源码分享"是一个关于使用Java编程语言开发桌面通讯录应用的项目。这个项目对于那些希望深入理解Java GUI(图形用户界面)设计、数据存储以及通信录管理逻辑的开发者来说,是一份宝贵...

    java-jdk-8.0.zip

    在标签"jdk"中,我们可以明确这是关于Java开发工具包的讨论。JDK是Java语言的核心组成部分,它提供了编写、编译、调试和运行Java应用程序所需的所有工具和库。 压缩包内的两个文件如下: 1. "jdk_8u73_windows_i586...

    博客网(关于Java和jsp的)

    Java是一种广泛使用的面向对象编程语言,以其“一次编写,到处运行”的特性著称。在构建博客网时,Java主要负责后端逻辑处理。开发者会使用Java的Servlet和JavaBeans技术来处理用户的请求,执行业务逻辑,与数据库...

    基于Java的房产信息网站的设计与实现.pdf

    3. Tomcat5.0:作为Apache Jakarta项目的一部分,是一个开源的Servlet容器,用于部署运行Java Servlet和JSP页面的应用程序服务器。 4. SqlServer2005:微软推出的一个中型企业级数据库管理系统,提供了数据存储、...

    Java虚拟机规范(Java+SE+7)

    1. **确保兼容性**:通过规定Java虚拟机的行为标准,使得开发者编写的Java程序能够在不同的平台上(如Windows、Linux、Mac OS等)运行一致,保证了Java语言的“一次编写,到处运行”的承诺。 2. **促进技术创新**:...

    java写的免疫遗传算法

    1. packVersion.bat:这通常是一个批处理文件,用于自动化执行某些任务,如编译、打包或部署程序。在这个上下文中,可能是用于构建或更新项目版本的脚本。 2. softigalib.html、softigalib.src.html:这些可能是...

    Java基础尚硅谷宋红康学习笔记

    Java以其“一次编写,到处运行”的特性,成为跨平台应用开发的首选语言。Java的基础部分主要包括以下几个方面: 1. **语法基础**:Java的语法与C++类似,但更简洁。它包括变量声明、数据类型(如整型、浮点型、字符...

    JDK-1.7.0-32bitjava开发环境安装包32位

    它以其平台无关性(一次编写,到处运行)、安全性、可移植性和丰富的类库而闻名。Java在企业级应用开发、移动应用开发(特别是Android应用)等领域有着不可替代的地位。 #### 二、JDK 1.7.0 32位版本概述 JDK ...

Global site tag (gtag.js) - Google Analytics