深入理解 JR 编程中的虚拟机机制
1. 引言
在传统编程中,我们通常默认程序在单台物理机器的单个地址空间内执行。然而,在 JR 编程中,程序可以包含多个地址空间,这些地址空间可以在多台物理机器上执行,从而支持真正的分布式编程。本文将详细介绍 JR 中虚拟机的相关机制,包括虚拟机的创建、远程对象的创建、多机程序示例以及实际应用中需要注意的问题。
2. JR 虚拟机概述
JR 计算模型允许将程序拆分为一个或多个称为虚拟机的地址空间。每个虚拟机在一台物理机器上定义一个地址空间,一个 JR 虚拟机包括一个 Java 虚拟机和一个支持 JR 并发扩展的附加层。虚拟机的创建方式与对象的创建类似,是动态创建的,并且在创建时可以指定放置在特定的物理机器上。
虚拟机的使用体现在其对象的创建方式上。对象使用稍有变化的 new 运算符创建,可通过可选子句指定新实例所在的虚拟机。实例中的进程、变量和操作完全存在于单个虚拟机内。与 Java 类似,类的静态部分会根据需要自动创建,但在每个需要它们的虚拟机上都会创建一个单独的实例。
虚拟机之间的通信是透明的。例如,从一个虚拟机向位于不同虚拟机上的对象中的操作发送调用,其语法和语义与向同一虚拟机上的操作发送调用几乎相同,调用调用的语法和语义也是如此。
3. 程序启动与执行概述
Java 程序的执行从指定的“main”类的 main 方法开始,在实际执行该代码之前,可能会执行一些静态初始化器,包括“main”类中的以及“main”类所依赖的其他类中的静态初始化器。
JR 程序的执行类似,但扩展到
超级会员免费看
订阅专栏 解锁全文
50

被折叠的 条评论
为什么被折叠?



