Javaのメモリ消費問題の解決を目指すSunのプロジェクト「MVM」

Sun Labsでは現在、複数のJavaアプリケーションを動作させた際に大量のメモリが消費されるという問題を解決する新技術「MVM」の開発を進めている。

» 2005年03月28日 14時08分 公開
[IDG Japan]
IDG

 Sun Microsystems Laboratories(Sun Labs)では、複数のJavaアプリケーションを同時に動作させるときのメモリ消費量および起動/実行時間に関する問題に取り組んでいる。

 同社のWebサイトの説明によると、Sun Labsの「Barcelona」研究チームがプロトタイプとして開発した「Multi-Tasking Virtual Machine」(MVM)は、複数のJavaアプリケーションを実行するための汎用仮想マシンである。Java HotSpot Virtual MachineおよびそのクライアントコンパイラをベースとするMVMは、複数のタスクをホストすることによりJavaのスケーラビリティを高める。

 3月25日の時点では、このプロジェクトに関してSunから説明を聞くことはできなかったが、Sunの担当者はこの研究プロジェクトの存在を認めている。Sun Labsは、Sunの応用研究開発部門である。

 あるJava開発者はMVMの可能性について言及している。

 JavaユーザーコミュニティーであるJavaLobbyの技術担当バイスプレジデント、マシュー・シュミット氏は、「MVMはJavaの最大の問題の1つを解決する可能性がある。その問題とは、複数のJavaアプリケーションを同時に実行する際に大量のメモリを消費するということだ」と話す。

 シュミット氏によると、Javaアプリケーションは多くのメモリを使用する傾向があり、特に多数のJavaベースのWebアプリケーションを実行しているときに、その傾向が顕著だという。JavaLobbyでは、3万アカウントのJ2EEをホストする同グループの「MyJavaServer.com」プロジェクトでこの問題を経験したという。

 「MVMはこの問題をある程度解消してくれそうだ」(シュミット氏)

 Sunによると、Barcelonaチームでは、複数のアプリケーションを単一インスタンスの仮想マシンに配置することを可能にする手法を開発中だという。「今のところ、あらゆるアプリケーションが専用のJVMを必要とする」とシュミット氏は話す。

 「基本的に、MVMはOSと同じように動作し、MVMが提供するプロセスを共有する複数のアプリケーションを立ち上げることが可能になる」(同氏)

 java.sun.comの説明によると、MVMはJavaプログラムのための完全な動作環境をAPIセットによって提供するという目標に向けた一歩だという。MVMの研究用リリースは、Java HotSpot Virtual Machine 1.5をベースとして開発が進められている。

 スケーラビリティを高め、Java HotSpot Virtual Machineと比べてメモリ消費量と起動時間を減らすために、J2EE 1.3.1にMVMが適用された。J2SE(Java 2 Platform Standard Edition)でMVMを製品化することも検討中だという。

 MVMのメモリに関する利点を生かすべく、BarcelonaチームではSunの別のグループと共同で、携帯電話デバイス用の仮想マシンの開発も進めている。このプロジェクトでは、CLDC(Connected Limited Device Configuration)規格向けにMVMを製品化することを目指す。CLDCは、携帯電話やページャ(ポケベル)などのデバイス用のAPIセットおよび仮想マシンを定義した規格だ。

Copyright(C) IDG Japan, Inc. All Rights Reserved.

注目のテーマ