深入嵌入式Java虚拟机PDF电子书下载
- 电子书积分:12 积分如何计算积分?
- 作 者:探矽工作室著
- 出 版 社:北京:中国铁道出版社
- 出版年份:2003
- ISBN:7113052142
- 页数:346 页
第1章 Java与KVM的关系 1
1-1 Java的概念 2
1-2 Java平台结构 2
1-3 Java的特色 4
1-4 Java的世界 5
1-5 企业版J2EE 6
1-6 标准版J2SE 7
1-7 微型版J2ME 9
1-7-2 J2ME的特性 11
1-7-1 J2ME的架构 11
1-7-3 目前的J2ME环境 12
1-8 K Virtual Machine 15
1-8-1 为什么要用KVM 19
1-8-2 KVM移植技术 20
1-9 Java Card 27
1-10 小结 28
第2章 Java类文件格式 29
2-2 minor_version,major_version 31
2-1 magic number 31
2-3 constant_pool_count,constant_pool[] 32
2-3-1 CONSTANT_Class 33
2-3-2 CONSTANT_Fieldref 33
2-3-3 CONSTANT_Methodref 34
2-3-4 CONSTANT_InterfaceMethodref 34
2-3-5 CONSTANT_String 35
2-3-6 CONSTANT_Integer 35
2-3-7 CONSTANT_Float 35
2-3-9 CONSTANT_Double 36
2-3-8 CONSTANT_Long 36
2-3-10 CONSTANT_NameAndType 37
2-3-11 CONSTANT_Utf8 39
2-4 access_flags 40
2-5 this_class 41
2-6 super_class 41
2-7 interfaces_count,interfaces[] 42
2-8 fields_count,fields[] 43
2-9 methods_count,methods[] 45
2-10 attributes_count,attributes[] 47
2-10-1 SourceFile attribute 48
2-10-2 ConstantValue attribute 49
2-10-3 Code attribute 50
2-10-4 Exceptions attribute 53
2-10-5 InnerClasses attribute 54
2-10-6 Synthetic attribute 56
2-10-7 LineNumberTable attribute 56
2-10-8 LocalVariableTable attribute 58
2-10-9 Deprecated attribute 59
2-11 HelloWorld_simple.class 60
2-12 小结 70
第3章 KVM执行时所用的class与instance结构 71
3-1 执行时期的instance结构 72
3-2 执行时期的class结构 78
3-3 执行时,class与class之间的关系 80
3-4 加载Java类的过程 83
3-4-1 loadClassfileIntemal() 90
3-4-2 loadClassfileHelper() 97
3-5 小结 103
第4章 KVM执行时所用的数据结构 105
4-1 The pc Register 106
4-2 Java heap 106
4-2-1 allocateHeap() 111
4-2-2 InitializeHeap() 112
4-2-3 callocPermanentObject() 115
4-3 Java execution stack 118
4-4 Runtime Constant Pool 120
4-5 Frames 133
4-5-1 Local variable array 139
4-5-2 Operand stacks 140
4-5-3 Dynamic linking 141
4-5-4 Method正常结束执行的情况 142
4-5-5 Method不正常结束执行的情况 142
4-6 小结 142
第5章 KVM内部的Interpreter 145
5-1 KVM运行时间取代byte code的机制 148
5-2 Split infrequent byte codes 156
5-3 在KVM内与interpreter相关的文件 158
5-3-1 bytecodes.c 158
5-3-2 execute.c 163
5-4 更进一步加快interpreter的速度:使用汇编语言 169
5-5 小结 171
第6章 Methods invokation 173
6-1 从Java类文件中加载method属性到内存中 176
6-1-1 loadOneMethod() 178
6-1-2 getUTF8String(POINTERLIST_HANDLE,unsigned short) 185
6-1-3 verifyMethodFlags() 185
6-1-4 verifyName(const char,enum verifyName_type,bool_t) 189
6-1-5 skipOverFieldType(const char,bool_t,unsigned short) 194
6-1-6 skipOverFieldName(const char,bool_t,unsigned short) 198
6-1-7 change_Name_to_Key() 202
6-1-8 verifyMethodType() 208
6-1-9 loadMethodAttributes() 210
6-1-10 loadCodeAttribute() 215
6-1-11 loadExceptionHandlers() 219
6-2 调用Method 224
6-2-1 pushFrame() 224
6-3 小结 238
第7章 Exceptions 239
7-1 何时会抛出exceptions 240
7-2 KVM如何抛出exceptions 241
7-2-1 raiseException() 241
7-2-2 raiseExceptionMsg() 243
7-2-3 fatalVMError() 244
7-2-4 fatalError() 244
7-2-5 throwException() 248
7-3 处理一个exception 253
7-3-1 findHandler() 254
7-4 小结 256
第8章 Garbage Collection 257
8-1 Tracing garbage collection 259
8-2 Copying garbage collection 260
8-3 KVM1.0版所使用的garbage collection机制 261
8-4 目前的KVM版本所使用的garbage collection机制 262
8-4-1 Object header 262
8-4-2 Free list以及available memory chunk 265
8-4-3 Compacting 270
8-4-4 KVM内的garbage collector函数 275
8-4-5 Temporary root 278
8-4-6 Global root 280
8-5 小结 281
第9章 编写KVM的native methods 283
9-1 一个简单的范例 286
9-1-1 Java端的处理 287
9-1-2 C程序端需要作的处理 291
9-2 在KVM内,对native code的编写有帮助的functions 293
9-3 Java code与native code之间传递参数的方法 294
9-3-1 导入primitive data type类型的参数或返回值 295
9-3-2 导入instance或array类型的参数或返回值 300
9-3-3 导入instance类型的参数或返回值 300
9-3-4 导入array类型的参数或返回值 303
9-4 抓取Java class内某个variable的方法 311
9-4-1 在instance method中抓取instance variable的方法 311
9-4-2 在instance method中抓取static variable的方法 313
9-4-3 在static method中抓取static variable的方法 313
9-5 在native code中如何抛出exception 315
9-5-1 三种主要的native functions用来抛出exceptions 315
9-5-2 其他能抛出exceptions的native functions 316
9-5-3 KVM内部已经定义好的exception class字符串 317
9-6 Synchronized block的改写 318
9-6-1 Java的synchronization 318
9-6-2 Monitor的notify队列与等候队列 320
9-6-3 在native code中如何完成Java的synchronized关键字 321
9-6-4 KVM提供了如下的函数可供我们来使用 323
9-6-5 在native code中如何完成Java中的notify()函数 323
9-7 Garbage collection 324
9-7-1 handle 326
9-7-2 Temporary root 327
9-7-3 Global root 329
9-8 小结 329
第10章 The Technology Compatibility Kit(TCK) 331
10-1 JavaTest简介 334
10-2 利用JavaTest来进行验证工作的架构 338
10-3 配合JavaTest来执行Java程序之前的准备操作 339
10-4 告诉JavaTest你的每一个测试用Java程序的详细信息 340
10-5 执行JavaTest 342
10-6 小结 345
- 《BBC人体如何工作》(英)爱丽丝.罗伯茨 2019
- 《慢性呼吸系统疾病物理治疗工作手册》(荷)瑞克·考斯林克(RikGosselink) 2020
- 《掌控工作》邵文瀚著 2020
- 《物联网与嵌入式技术及其在农业上的应用》马德新 2019
- 《社会工作专业英语》俞炎燊 2019
- 《中国共产党支部工作条例问答》张越编著 2019
- 《社会工作实习教育研究的反身性书写》权福军 2018
- 《抗战与军队政治工作》李富春等著 1938
- 《思维导图工作法》王玉印著 2020
- 《工作-家庭支持氛围影响机制的实证研究》刘崇瑞 2019
- 《中风偏瘫 脑萎缩 痴呆 最新治疗原则与方法》孙作东著 2004
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《王蒙文集 新版 35 评点《红楼梦》 上》王蒙著 2020
- 《TED说话的力量 世界优秀演讲者的口才秘诀》(坦桑)阿卡什·P.卡里亚著 2019
- 《燕堂夜话》蒋忠和著 2019
- 《经久》静水边著 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《微表情密码》(波)卡西亚·韦佐夫斯基,(波)帕特里克·韦佐夫斯基著 2019
- 《看书琐记与作文秘诀》鲁迅著 2019
- 《酒国》莫言著 2019
- 《中国当代乡土小说文库 本乡本土》(中国)刘玉堂 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《中国铁路人 第三届现实主义网络文学征文大赛一等奖》恒传录著 2019
- 《莼江曲谱 2 中国昆曲博物馆藏稀见昆剧手抄曲谱汇编之一》郭腊梅主编;孙伊婷副主编;孙文明,孙伊婷编委;中国昆曲博物馆编 2018
- 《中国制造业绿色供应链发展研究报告》中国电子信息产业发展研究院 2019
- 《中国陈设艺术史》赵囡囡著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《《走近科学》精选丛书 中国UFO悬案调查》郭之文 2019
- 《清至民国中国西北戏剧经典唱段汇辑 第8卷》孔令纪 2018
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018