您好,欢迎光临有路网!
深入嵌入式Java虚拟机
QQ咨询:

深入嵌入式Java虚拟机

  • 作者:探矽工作室
  • 出版社:中国铁道出版社
  • ISBN:9787113052140
  • 出版日期:2003年05月01日
  • 页数:346
  • 定价:¥36.00
  • 关注微信领礼券
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    本书特色:清晰讲解让移动通讯设备、PDA、智能家电可以执行Java程序的灵魂——KVM架构;引导设计人员彻底掌握嵌入式Java虚拟机的运作与原理;滴水不漏地向各位读者解开调整KVM效率的秘密……
    目录
    第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-1 J2ME的架构 11
    1-7-2 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-1 magic number 31
    2-2 minor_version,major_version 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-8 CONSTANT_Long 36
    2-3-9 CONSTANT_Double 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 loadClassfileInternal( ) 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
    编辑推荐语
    ·清晰讲解让移动通讯设备、PDA、智能家电可以执行Java程序的灵魂——KVM架构。
    ·引导设计人员彻底掌握嵌入式Java虚拟机的运作与原理。
    ·滴水不漏地向各位读者解开调整KVM效率的秘密。
    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外