跳到主要內容

Mac OS X, Java 與 Safari

由於這幾天在 Apple 釋出 JDK 1.6.0_13 的更新後, 我就一直在 NetBeans 上練習撰寫 JavaFX 這個全新的技術.
在一個偶然的情況下, 我發現我的 NetBeans 是以 64-bit 執行, 其實這也沒什麼好奇怪的, 因為 OS X 底下的 Java SE 6 並沒有 32-bit 的版本, 忽然間我想到一個重要的問題, 那依附在瀏覽器的 Java Plug-in (用於執行網頁中的 Java Applet) 是跑哪個版本!?
接著, 我開始實驗到底 Safari 4 會是使用哪個版本的 Java Plug-in, 於是我來到 Sun 所提供的 JVM 測試網頁 進行測試, 沒想到測出來的版本是 1.5.0_19, 這個結果太出乎我的意料了, 我的臉差點沒垮了下來 =口=. 因為實際上在我的 Java 環境設定中, 已經設定以 Java SE 6 為最優先選擇, 但沒想到 Safari 4 最後卻是跑了舊版.


[設定成以 64 bit JDK 6 運作的 NetBeans]


[出乎我預期以 1.5.0_19 版 Java Plug-in 為 JVM 的 Safari 4]


[預先在設定 Java 環境優先使用 Java SE 6]

看到這樣的結果, 我不禁納悶了起來, 這到底是怎麼回事? 其實道理再簡單不過, 因為 Safari 4 目前是 32-bit 的版本!!! 在 32-bit 的主程式中怎麼可能可以運作 64-bit 的外掛呢!? 事實上也證明, 64-bit 的 Java SE 6 的確沒辦法在 Safari 4 中運作.
然後... 腦中忽然閃過了一個念頭, 那如果換成 64-bit 的瀏覽器呢!? 經過一番搜尋, 我在美國的 Oak Ridge National Laboratory 所發佈的 Mac OS X Utilities 中找到了一個可以在 OS X 下測試 Java SE 6 的瀏覽器-Browser 64. 安裝完以後, 接著就是測試!!!!!

結果很明顯的, 如果在 64-bit 的瀏覽器下, 的確是可以使用 Java SE 6 的, 也證明了自己先前的推論是正確的.

換成 Java SE 6 以後, Loading 畫面終於變得和其它平臺的版本相同了.

接著進行性能的測試, 以 Safari 4 為比較基準, 測試 JavaFX Sample 網頁中的 質數運算 範例, 在 1.5.0_19 版為核心的 JavaFX, 純 JavaFX Script 花了 0.735 秒, 以多執行緒運算時花了 0.394 秒, 而以 Safari 4 內建的 JavaScript Engine-Nitro 執行 JavaScript 時花了 2.599 秒.

而以 Browser 64 跑時又是如何呢? 在以 1.6.0_13 為核心的 JavaFX, 純 JavaFX Script 花了 0.543 秒, 多執行緒時花了 0.288 秒, 而 Browser 64 的 JavaScript 運算則耗費了 2.935 秒.

在以上的測試中 Java SE 6 真的比 Java SE 5 要好得多, 除了我主觀的認為在 JVM 載入的時間有改善之外, 運算性能也有大幅提升. 另外, Safari 4 的 Nitro 性能的確不錯, 勝過了 Browser 64, 但 JavaScript 比起 JavaFX, 還是遜色太多, 也因此對於跨軟體及硬體平臺的 JavaFX 的未來, 我充滿了期待.
經過這次的測試, 也讓我更期待 Snow Leopard 的更新, 因為在一個非純 64-bit 的作業系統下, Java SE 6 的表現都可以如此優異, 那到了純 64-bit 的系統下的表現應該會顯得更好. 至於 Safari 4 何時能執行 Java SE 6? 也只能等到 Snow Leopard 上市了.

附帶一提, 在 Snow Leopard 的 SPEC 中提到, Snow Leopard 中將會有 完整的 JDK, 到底有多完整, 我們就拭目以待吧!!

留言

匿名表示…
你!你!你!




久 不 見


跟你say Hi !

阿刃寫道…
我我我!!!
真的好久不見耶
身子還好嗎!??
希望... 你都健康都過得很好喔^^
匿名表示…
換我踏上軍路旅程了

我考上自願役

整天頂著小平頭亂晃

快升士官拉 XD


你! 你! 你!

心情調適的OK吧@@

希望上天能保佑你爺爺! 加油
阿刃寫道…
老天喔... 你去當兵喔!?
所以我這下士還比你大就是了 XD
我還 OK 啦

我也希望爺爺可以更好 ^^
謝謝有你的祝福~

這個網誌中的熱門文章

引數?! 參數??!! 什麼鬼啊!!

我想這個不僅是只有我會遇到的問題, 大概也是所有 Programming 的人都有的疑惑 (應該是吧?) 什麼引數?? 什麼參數?? 天啊... 到底是誰翻譯的呀!!!! 就字面上來看... 講句實在話, 我真的不了解, 大概是學藝不精所致. 也許有些人認為 => 管它那麼多!! 寫得出來就好了!! 不過龜毛如我, 我還是想搞清楚定義是什麼!

訂閱 Podcast 學英文

話說... 已經很久沒有上來更新內容了, 其實最近也沒在幹嘛, 不過就是瞎混而已 orz... 不過聽 Podcast 學點單字, 學點外國腔已經成為我每天必備的工作, 至少還是有在自我學習的啦 :P 好啦其實我聽的東西內容不深, 都很生活化, 重點!!! 免費 :D 那要怎麼取得呢? 可以上 ESLPod 的官方網站 或是利用 iTunes 訂閱. 因為我是 Mac 和 iPod 的使用者, 所以接下來就介紹怎麼使用 iTunes 來取得這些學習資源 :D 首先如上圖, 啟動 iTunes 後, 點選 iTunes Store, 並在 iTunes Store 的首頁最下方選擇 United States 也就是美國啦!!

Mac OS X 10.6 同步收取 Gmail, how?

在 Apple 官方的 Mac OS X 10.6 介紹網頁中, 雖然並沒有在內建的郵件軟體 - Mail 著墨太多. 但是實際上 Mail 也做了一些改善, 讓使用可以更方便, 而這篇文主要目的就是說明怎麼讓 Mail 與 Gmail 進行同步. 在過去使用郵件軟體收取電子郵件的使用經驗中, 往往都需要輸入很多資料, 什麼 "寄件伺服器" "收件伺服器" "通訊協定"... 等等等, 這對一般用戶來說, 只能說是災難. 畢竟沒學過那些專有名詞, 天曉得那是些什麼東西!? 而 Mac OS X 10.6 中的 Mail 不同了, 現在只需要輸入 Email 帳號及密碼, 軟體自動搞定細部設定! 有沒有這麼簡單!? 手邊有 Hotmail 的朋友可以試試看, 只要輸入帳號密碼, 10.6 的 Mail 就會幫你設定好其它需要設定的資料. 不過今天的主角是 Gmail 啦! 而要使用的是 Gmail 提供的 IMAP 的功能, 在使用前得先到 Gmail 中進行一些簡單的設定, 當然小弟也會說明這樣設定的理由 :) OK! Here we go!!!