8、深入探索 JR 编程中的虚拟机机制

深入探索 JR 编程中的虚拟机机制

1. 虚拟机概述

在传统编程中,我们通常默认程序在单个物理机器的单个地址空间内执行。而在 JR 编程里,程序可以包含多个地址空间,这些地址空间能在多个物理机器上执行,从而支持真正的分布式编程。

JR 计算模型允许将程序拆分为一个或多个称为虚拟机的地址空间。每个虚拟机在一台物理机器上定义一个地址空间,一个 JR 虚拟机包含一个 Java 虚拟机和一个支持 JR 并发扩展的附加层。虚拟机的创建方式与对象的创建类似,是动态创建的,创建时还能指定放置在特定的物理机器上。

2. 程序启动与执行概述

2.1 Java 程序执行

Java 程序从指定“main”类的 main 方法开始执行。在实际执行该代码之前,可能会执行一些静态初始化器,包括“main”类中的以及“main”类所依赖的其他类中的静态初始化器。

2.2 JR 程序执行

JR 程序执行时会隐式创建一个“main”虚拟机,“main”类在该虚拟机上开始执行。同样,先执行所需的静态初始化器,然后继续在 main 方法中执行。“main”虚拟机在启动程序执行的物理机器上运行。

当创建虚拟机时,默认情况下它几乎是空的,不包含任何对象。不过,“main”虚拟机比较特殊,“main”类的静态部分会立即自动在其上创建。主方法或由主方法直接或间接调用或创建的其他方法、对象或类中的代码,可以创建额外的虚拟机,并将它们放置在其他物理机器上,随后可在这些虚拟机上创建对象。

每个虚拟机都包含类的静态部分的自己的实例,静态变量是该虚拟机本地的。在给定虚拟机上创建的对象中的变量,其作用域也是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值