2008年6月4日水曜日

WebKitがクラッシュしてしまう...という方向けのメモ

WebKitを使ってみたけど「すぐにクラッシュするよ?」とお悩みの方向けのメモです。

私は、現在「WebKit r34342」を使用しているのですが、WebKitで戻るボタンを押す(「履歴」→「前へ戻る」を実行する)と100%クラッシュします。


↑クラッシュ後、WebKitを再起動すると、このようなダイアログが表示される。


少し調べてみた結果、私の環境では、「GreaseKit」を外したところ、この問題が発生しなくなりました。WebKitは現在開発中のアプリケーションなので、一部のプラグインが利用できない可能性があります。という訳で、WebKitがクラッシュしてしまう...という方は、一度プラグインを見直すと良いかもしれません。

なお、以下のプラグインは、私が利用した範囲では正常に動作しています。
  • SafariStand
  • Keywurl
  • SafariGestures
  • SafariDrag
  • SafariTabConfig
  • SafariTabMemento

次バージョンのSafariは、レンダリング速度もメチャクチャ上がっているかも!

先日の「新エンジン"SquirrelFish"搭載で、更に加速するSafari(WebKit)」で、開発中のWebKitは、Safari3.1.1と比較して、約1.5倍JavaScriptの性能が向上している、という記事を書きました。(オフィシャルブログでは、1.6倍となっていましたね!)

その後、しばらくWebKitを使っていたところ、どうもJavaScriptを使用していないページも”速い"ような気がします。

そこで、少し前に話題になった「GUIMark」を使ってレンダリング速度を測定してみる事にしました。まずは、簡単に測定したハードウェア環境を紹介します。
  • CPU:Intel Core 2 Duo 2GHz
  • メモリ:4GB(Mac) / 3GB(Win)
  • GPU:Intel GMA X3100
続いて、ソフトウェア環境です。
  • OS:Mac OS X 10.5.3 / Windows XP SP3
    → WindowsはBoot Campから起動しています
  • ブラウザ:
    - Safari 3.1.1 (Mac/Win)
    - WebKit (Mac/Win)
    - IE7 (Win)
  • Flash:9.0 r124 (Mac/Win)
  • Java:JRE6 (Mac/Win)
WebKitのビルド番号がMacとWindowsで違ったりしているのですが、ご容赦を...。後で気付きました。

これらの環境で、「GUIMark」を実行してみた結果が↓です。(単位は「fps」です)なお、「Flash」と「Java」は、ついでに測定してみただけなので、参考程度にご覧下さいw

Mac Safari 3.1.1Mac WebKit r34342Win Safari 3.1.1Win WebKit r34278Win IE7
HTML14.8632.4817.9530.0010.85(*1)
21.27(*2)
Flash Flex36.947.0120.7121.4640.38
Java Swing6.766.7418.3618.8018.15

*1:Boot Campから起動したWindows環境では何故か10fps程度しか出ませんでした...。
*2:VMwareから起動したWindows環境での数値です。参考までに。


という結果になりました。

Mac環境において、現在開発中のWebKitは、現行のSafari3.1.1と比べて2倍以上レンダリング速度が向上しています。

MacとWindows環境で比較した場合、The Registerの記事で指摘されていた通り、現在のバージョンではMac OS XはWindows XPに完敗と言えそうですね。ですが、次のSafariで逆転できるかもしれません!


という訳で、次バージョンのSafariは、JavaScriptの性能向上だけでなく、レンダリング速度も大幅に向上することが期待できそうです!

2008年6月3日火曜日

マイクロソフトセキュリティアドバイザリ、雑感

この問題に関しては、詳しいわけではないので、もしかしたら誤解があるかもしれません。が、やはり気になるニュースだったので、調べた事や感じた事をメモしておこうと思います。

5/31に、マイクロソフトが「セキュリティアドバイザリ(953818)」を公開した事がキッカケで、各種IT系メディアが「Safariのセキュリティ問題」を報じました。
↑で理解した事をまとめると、Windows版Safariを利用していると、悪質なプログラム(ウィルス、マルウェアなど)を勝手にダウンロードしてきて、勝手に実行してしまう可能性があるから気をつけて!という事です。

また、この問題の回避策として、「ダウンロード先」を「デスクトップ以外」に設定すれば良いと報告されています。

ただし、ITProの記事の最後の方で取り上げられていたのですが、研究者によるとこの回避策では不十分とのこと。この回避策をとっていても悪質なプログラムが実行されてしまう可能性があるので、万全を期すならWindows版Safariは利用しない方が良さそうです。

と、状況は把握したのですが、何故かMSとAppleの主張が微妙に噛み合っていないような気がしたので、やや乱暴ですがもう少し整理してみる事にしました。この問題を分解していくと、大きく2つに分ける事ができると思います。
  1. 悪質なファイルを勝手にダウンロードしてしまう事
  2. 悪質なファイルを勝手に実行してしまう事
この1.に関しては確かにSafariの問題だと思います。が、2.に関してはWindowsの問題ですよね?さらに言えば、1.よりも2.の方が重大な欠陥じゃないの!?思ってしまいました。それを棚に上げて、利用を控えるようにと警告するMicrosoftは傲慢だよな〜と感じました。

その一方で、Windowsというプラットフォームを前提にしたアプリケーションを提供しなかったAppleの姿勢もやっぱり傲慢だよな〜と。

ちなみに、Appleは第一報が報じられた時に「セキュリティ問題として扱わない」と回答しています。(ITmediaの記事はコチラ)これはこれで、呆れた回答なんですが、今現在、Macを使用している身としては若干理解できます。というのは、Macの場合、ダウンロードしてきたファイルが「勝手に実行されない」という前提があって、ユーザビリティなどを考慮した結果、ファイルを「勝手にダウンロード」するという戦略を採用していると思われるからです。だから、ある意味ファイルが「勝手にダウンロード」されるのが正常なんですよね、Macでは。

もう少し補足しておきますと、Mac版Safariでも「勝手にダウンロード」されます。ただし、ユーザが知らずに、いつの間にかダウンロードされる事はありません。標準の設定では、Dock(Windowsでのタスクバー?)にダウンロード状態が表示されるようになっています。だから、「勝手にダウンロード」されても、ユーザには通知されているし、勝手に実行される事も無いので、セキュリティ上問題無いよね、と主張しているのだと思われます。(これも想像ですけどw)


↑Mac OS X 10.5のDock

ここに、ダウンロード中のファイルがあると、プログレスバーが表示されます。また、ファイルのダウンロードが完了すると、アイコンがバウンドしてユーザに通知する仕組みになっています。(個人的には、地味だけど重要な情報は知らせてくれる、このさりげないインタフェースがとても気に入っていますw)


という訳で、なんとなくお互いの主張が噛み合っていないなぁと感じたのは、結局お互いの前提が全く違うからなんだろうな〜と思いました。もっとも、この件に関して言えば、MSの庭での話なので、MSの主張に分があると思いますけど。

ただ、どちらも傲慢な企業としては世界最高峰!今後も泥仕合が続くかもしれませんwなんとなく、ブラウザ戦争の政治的な思惑も見え隠れしますし...。野次馬的には、今後の展開が非常に楽しみなのですが、ユーザとしては早く安全な環境を提供して欲しいものです。

新エンジン"SquirrelFish"搭載で、更に加速するSafari(WebKit)

マイコミジャーナルさんに「Safari3より4倍速、WebKit新JavaScriptエンジン"SquirrelFish”」という記事が掲載されていました。

実は、Safari3.1リリース以降、WebKitは全く利用していませんでした。現状の処理速度に満足していたというのもありますが、正直に言えば、当面の間これ以上大幅な高速化は期待していなかった事があります。が、4倍速!?と衝撃的なタイトルだったので、早速自機でテストしてみました。

記事中には「SquirrelFish」はまだWebKitへ統合中と書かれていたのですが、2008年5月21日(r33975)で開発終了となっています。(→コチラ)という訳で、今ダウンロード可能なWebKitは、すぐに「SquirrelFish」を味わう事ができるようです。

いつものように「SunSpider」と「Javascript speed tests」で測定してみました。

ちなみに、元記事の「Safari3」とは「Safari 3.0.x」の事です。(若干「釣られたー」感がありましたが...w)残念ながら、もうこの環境は用意できないので、現行の「Safari 3.1.1」と比較してみました。


Safar 3.1.1WebKit r34279

SunSpider

3786.8ms

2416.4ms

Javascript speed tests

220ms

160ms


Safari 3.0.4では、「SunSpider」が約10,000ms、「Javascript speed tests」が約600msだった事を考慮すると、"SquirrelFish"が搭載されたWebKitは、
  • Safari 3.0.4と比較して、約4倍速い!
  • Safari 3.1.1と比較しても、約1.5倍速い!
という結果になりました。

また実際にこのWebKitから、GmailやGoogle Reader、Google Docsなどを利用してみると、確かにSafari 3.1.1よりもキビキビと反応するような気がして、速い!と感じました。(これはプラシーボ効果なのかもしれませんけどw)

4倍はともかくとして、現状から1.5倍高速化でも十分凄い事だと思います。開発チーム、頑張ってるな〜とちょっと感動しました。最近は何かとFirefox3に目を奪われがちですが、またWebKit、Safariの存在感が増しそうです!


WebKitのダウンロードはコチラから出来ます。(Windows版もありますよ!)ただし、開発中のバージョンなので、ご利用の際はご注意下さい。



(追記:9/22)
SquirrelFish Extremeも試してみました。記事はコチラです。

2008年6月1日日曜日

VMware 1.1.3リリース

VMware 1.1.3がリリースされましたね。という訳で、早速バージョンアップしてみました。今回修正された内容は、どれも直接関係無さそうでしたけど...。

ただ、一つ目を引く修正がありました。これから、「Windows Vista SP1」を「Boot Camp」と「VMware」で併用する環境を構築しようとしている方は、アクティベーション周りに修正が入ったようなので、VMware 1.1.3に上げてから環境構築した方が良さそうです。

詳しくは、リリースノート(まだ英語版のみ)か、CNET Japanさんの記事をご覧下さい。