IBM JDK5.0の詳細 最終話

デベロッパワークスにIBM JDK5.0の連載記事が追加された。
今回が最終回のようだ。
IBM - Japan

この連載はなぜか日本語には今のところ翻訳されていない。
なぜか中国語の翻訳は見つかった。
IBM - Japan

日本のスタッフにも頑張って頂きたいので貼っておく。

さて、今回の中身はトレースとダンプ。
トレースはフライトレコーダーというのが良さそうだ。

ダンプは今までもそうだが、今回もかなり良くできている。
OutOfMemoryなどでイベント駆動できたり、非破壊ダンプがこれまでどおりに好きなタイミングで取れるようだ。

ここらへんはさすが基幹業務用のJVMだと言えよう。

またDTFJというスナップショット(ダンプ等)に対してアクセスし、解析を行うアプリを作成するためのAPIが用意されたようだ。
このAPIは記事ではわかりにくいが、com.ibmパッケージにあることがIBM Diagnostics Guideを読むとわかる。
問題はこのAPIを使ってユーザが実装するというのは少し無理があるのではないだろうか。*1良いアプリが公開されることを期待する。

気になったのはMXBeanに関する記述がこれまでの記事にも、IBM Diagnostics Guideのほうにも全くないことだ。

J2SE 5.0 Tiger 虎の穴 Monitoring and Management for Java Platform

気付けば、IBMJDKにはjconsoleが付いていない。
すみません。ありました。反省しています。
BEAにはjconsoleもあるし、別のプロファイラも付いてくる。
それに比べ、IBMはテキストベースでの分析しかできないのだろうか。
確かにIBMの環境ではAIXZ/LinuxではX11も使わない場合が多いだろうが、これは少しがっかりである。
たぶんTivoliを買うか、Eclipseなどに期待することになるのだろう。

そういえばErgonomicsGCもないようだ。

これまでの連載でIBMのJDK5.0の特徴はSunのIPフリーになり、J9VMとなってコードがプラットフォームを越えて統一された。GCは今までどおりだが、世代別が選択できるようになった。Shared Classが良く考慮されていて、複数JVMでのパフォーマンスが期待される。トレース、ダンプが良くできているが、MXBeanが良くわからない状態というところだろうか。

IBMの売りとしてはORB、XML、Securityもあった。
ただXMLに関してはSunと実装バージョンが異なり、NetBeansが動かないような悪影響も出ている。

これらを勘案して、Sunから1年3ヶ月遅れの価値があったのかどうか皆さんで判断してほしい。

Harmonyの最近

そういえばいつでもIBM JDKと同時に記事のリソースにて紹介されるHarmonyの最近がどうなっているのか調べてみた。

どうもGNU Classpathとは去年の段階で仲が悪くなったらしい(?)

今現在はそれぞれ別々に開発を行っているようだ。
Harmonyは二つのサブプロジェクトに分かれているようだ。
1つはクラスライブラリ。もう1つは当然JVM

なんだかよくわからないのはクラスライブラリ側の実行方法。
まずJDKを別に用意し、ソースをコンパイルする。
そしてIBMからJVMだけもらってきて動かすらしい。
IBMJVMオープンソースではないそうだ。

目標はJDK5.0のフル実装のようだが、今日見た限りではまだまだ実装の進み具合は思わしくないようだ。
MustangどころかDolphinよりも遅くなってしまうのではないか。

JVMのほうはどこまで進んでいるのか良くわからなかった。

Harmonyが今の苦しみを乗り越えて無事にJavaを完成させるかどうかとても興味深いことだと思う。
なんとなくSunがJavaオープンソースにしてお開きになりそうな気がする。ただSunがJBossのようにLGPLとのデュアルライセンスを選択してくると意地でも完成させるのかもしれない。JBossに対するApacheの人たちの複雑な感情というものは少しわからないところがある。

今日、なんでもJBossのカンファレンスが開かれているようで毒舌のMarcさんがHarmonyにも、WAS CEにも口撃していた。
JBossは今が絶好調といったところだろうか。
そろそろシームでも勉強してみようかと思う。

本日知った出来事。

Apple, Java SE 6.0 Release 1 Developer Preview 3 リリース
http://lists.apple.com/archives/java-dev/2006/Jun/msg00107.html
BEAがEJB3/JPAをフルサポートするWorkshop Studio 3.1をリリース
http://www.theserverside.com/news/thread.tss?thread_id=40863
ついにSunがJavaEE5のアプリケーションサーバを正式にリリース
http://www.itmedia.co.jp/enterprise/articles/0606/13/news052.html

アップルが既にMustangをリリースしているのは賞賛されるべきだろう。大手やOSSにも難しいことをやってのけるのは素晴らしい。
今回はPPCだけでなくPentium用バイナリもあるそうだ。
海外のサイトでIntelプラットフォームでのJVMの競争がより激しくなるのは喜ばしいことだとコメントされている方がみえた。確かにMacOSX上とは言え同じマシンで動かすことができるのだからSunにBEAにIBMを差し置いてMacOSXServer+AppleMustangで業務用サーバというのも十分にありえることだろう。

オープンソースフリーソフトではない

日本IBMの米持さんがこのタイトルでJavaWorldDayにおいて講演を行うそうです。
http://www.javaworld.jp/jwday/session/index.html#SA-3

なんだか意味のわからないタイトルだと思うのは私だけでしょうか?
このフリーソフトが「Free as in free beer」なのか「Free as in free speach」なのかわかりませんが、米持さんは日本ではフリーソフトとは無料のソフトを指すのだとお考えだそうです。

http://www.rubyist.net/~matz/20050728-5.html

さてさて、内容は

オープンソースソフトウェアをソースコードが公開されたフリーソフトと考えていませんか?Javaオープンソースが人類のソフトウェア生産をどのように変えていくか、日本の市場がまだまだ理解しきれていない、ソフトウェアエンジニアリングへの大きな影響力について語ります。

だそうですので素直にとても期待できそうです。
既に満員御礼だそうですが、聴講できる幸運なかたがいらっしゃいましたらぜひネット上にてレポートして頂けたらと思います。

ところで今月の雑誌JavaWorldではGeronimoが特集されて日本IBMの方々が数多くの記事を書かれていました。しかしGeronimoを基にしたWASCEに関しては今だ日本ではサポートが開始されておりません。記事でも再三記述されています。
丁度このようなイベントは発表に相応しいと思われます。
良い一報が聞けることを期待しましょう。

*1:障害発生時にちょろちょろ書いて原因究明するのならJavaよりもスクリプト言語で書けたほうがありがたい気がする。そこでGroovyですよ、だろうか。