Apple謹製ウェブブラウザ"Safari"の情報サイト

Webkit

Chromium Project が Webkit から分離し、新たに "Blink" と言うレンダリングエンジンに移行すると表明

Chromium

Chromium projectがWebkitから分離し、新たに"Blink"と言うレンダリングエンジンに移行すると表明しました。異なるマルチプロセスを採用したことにより、プロジェクトが複雑化したことを理由に挙げています

Chromium Blog: Blink: A rendering engine for the Chromium project コメントを見る

However, Chromium uses a different multi-process architecture than other WebKit-based browsers, and supporting multiple architectures over the years has led to increasing complexity for both the WebKit and Chromium projects. This has slowed down the collective pace of innovation - so today, we are introducing Blink, a new open source rendering engine based on WebKit.

異なるマルチプロセスアーキテクチャーの他、Googleの要求項目とWebkitの要求項目にずれが生じた(例を挙げれば、WebP静止画ファイル形式,WebM動画形式のサポート等)のも一因でしょう。

Safari ユーザーへの影響

Google主導のBlinkはGoogle Chromeブラウザ利用者には多くの恩恵があると予想されます。

では、Safariユーザーにはどうでしょうか?

まず上げられているのは、既存Webkitレビュアーの移行によるセキュリティ問題への対応です。

Google が WebKit から離れて「Blink」を採用へ ― だが、Apple Safari のセキュリティはどうなる? - インターネットコム コメントを見る

Google は、WebKit のセキュリティ問題の修正で、他の誰にも真似できない驚異的な貢献を続けてきた。Google が Blink に移行してしまえば、WebKit のバグ修正ペースが落ちてしまうことは避けられないだろう。

例をあげよう。Google は、Blink でメモリーの扱いを強化すると述べている。これは Blink には良いことだ。だが、Apple の Safari はどうなる? Apple による最近の Safari アップデートを見ればわかるが、WebKit のメモリリークエラーの多くは Google によって発見されているのだ。Apple は Blink 時代にどう対応するつもりなのだろう?

最近、ブラウザの開発及び、セキュリティに問題に対する動きが鈍いApple社は、今後どのように対応していくでしょうか?

関連エントリー

WebP形式の画像を表示させるプラグイン"Weppy"

Weppy

Googleが発表したJpegに代わる新たな画像フォーマットとして注目されている"WebP"をSafariで表示させるプラグイン"Weppy"がリリースされています。

Weppy コメントを見る コメントを見る

Weppy is compatible with all Mac OS X Web browsers that do not use QuickDraw for drawing images. This includes Safari, Firefox, Chrome, OmniWeb, Opera, Camino, and probably others as well. It comes with separate plugins for WebKit-based browsers (such as Safari, OmniWeb, and Chrome) and browsers that only support Netscape plugins (such as Firefox and Camino). Both support hardware image rendering in browsers that support CoreAnimation. Both are universal binaries (PowerPC and Intel 32), and the WebKit plugin also supports Intel 64. Both require Mac OS X 10.5

対応しているのはMacOS X 10.5(Leopard)以降になります。WebKitプラグインおよびNetscape形式のプラグインが用意されています。
インストールするにはダウンロードした"Weppy.webplugin"ファイルおよび"Weppy.plugin"ファイルを~/Library/Internet Plug-Insに入れるだけです。

その後、ブラウザを再起動すれば拡張子.webpのWebPファイルの表示が可能となります。

WebKitプラグインおよびNetscape形式のプラグイン共にユニバーサルバイナリとなっており、WebKitプラグインは64bitにも対応しています。

(via.Weppy - soundscape out コメントを見る コメントを見る)

Webkitプロジェクト、マルチプロセス化されるWebKit2をアナウンス

webkit

Webkitプロジェクトにおいて、Appleの開発者Anders Carlssonより"分割プロセスモデル(split process model)"を採用したWebKit2がアナウンスされました。

[webkit-dev] Announcing WebKit2 コメントを見る
This is a heads-up that we will shortly start landing patches for a new WebKit framework that we at Apple have been working on for a while. We currently call this new framework "WebKit2".
WebKit2 is designed from the ground up to support a split process model, where the web content (JavaScript, HTML, layout, etc) lives in a separate process. This model is similar to what Google Chrome offers, with the major difference being that we have built the process split model directly into the framework, allowing other clients to use it.

Some high-level documentation is available at http://trac.webkit.org/wiki/WebKit2

かいつまんで説明すると、コンテンツ部分(JavaScript, HTML, layout, etc)とアプリケーションのUIを分離したモデルとなります。マルチプロセスは既にGoogle Chromeが実現していますが、どのアプリケーションからも利用できるフレームワークであることが大きな違いとされます。
WebKit2と言う名称は、現在のWebkitと非互換であるから、とのこと。

ブラウザに於いて、クラッシュの原因のほとんどはプラグイン(主にAdobe Flash)にあり、プロセスの分離作業が進められています。
MacOS X 10.6(Snow Leopard)においてはSafariとプラグイン動作が別プロセスに、Firefoxは"Lorentz"プロジェクトでプラグインの実行プロセスの分離に取り組んでいます。
これにより安定性の向上の他、メニーコアCPUでの動作効率向上などが見込まれます。

APIの互換性がないため、現在のアプリケーションでは動作しませんが、近い将来(in the near future.)動かすことが出来る見込みです。

http://trac.webkit.org/wiki/WebKit2の超訳は続きを読む以降に。

続きを読む

WebKit Nightly Buildsを使ってみよう

webkit

SafariはWebKitと言うオープンソースのHTMLレンダリング群を元にしたブラウザと言うのはよく知られていると思います。The WebKit Open Source Projectでは最新のWeb標準の実装を目指し、日々開発が続けられており、その成果は"Nightly Builds"として公開されています。

今回はNightly Buildsを利用して次世代のSafariを試す方法の解説です。

※Nightly Buildsはあくまで開発者向けのバージョンで、テスト目的に公開されているものです。御利用にはご注意下さい。。

Nightly Builds

まずはThe WebKit Open Source Projectにアクセスし、ダウンロードをします。Mac版とWindows版があります。Mac版はディスクイメージ(dmg)、Windows版はZip形式となります。
ダウンロードしたファイルを伸張するとMac版だとWebkit.app,Windows版だとWebkit.exeと言うファイルが含まれていますが、これがNightly Buildsの本体となります。以降、特に断りがなければ"WebKit.app"と言う名称を使用します。

WebKit.appのアイコンをダブルクリックすると、まずはバージョンを確認し、更新があればダウンロードするかどうか確認されます。
Safariとして起動しますが、内部ではWebKitに含まれるフレームワークを利用しています。

WebKit.appで確認出来る新機能

WebKit.appで確認出来る新機能の代表的なものを抜き出してみます。

その他、レンダリングやJavaScriptの処理などもSafariと比較して高速化されていたりします。何故かメディアでは同様に開発版であるGoogle Chromeばかりが取り上げられる傾向にありますが、Safari開発版であるところのWebkit.appも同様に高速・高機能であることを知って頂ければ幸いです。

Internet ExplorerをGoogle Chrome並にする"Google Chrome Frame"

GoogleChromeFrame

GoogleよりInternet ExplorerでWebKitを使ったレンダリングで表示出来るGoogle Chrome Frameのβ版が発表されました。Windows Vista/XP SP2以降にインストールされたInternet Explorer 6/7/8が対象となります。

Google Chrome Frame - Google Code コメントを見る

Chromium Blog: Introducing Google Chrome Frame コメントを見る
Today, we're releasing an early version of Google Chrome Frame, an open source plug-in that brings HTML5 and other open web technologies to Internet Explorer.

インストールしてみたのですが、驚いたことに単なるプラグインではなく、Google Chrome 4(開発者向け)が丸々インストールされるんですね…!
ただインストールしただけでは駄目で、Google Chrome Frameが動作するにはサイトに次のメタタグを追加する必要があります。
<meta http-equiv="X-UA-Compatible" content="chrome=1">
このブログにも追加してみたところ、IE8でアクセスして見事WebKitでレンダリングされ表示されました。
なお、気になるUserAgentは
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; chromeframe; InfoPath.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; .NET CLR 1.1.4322; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)
となりました。

一方、MicroSoftのスポークスマンはGoogle Chrome Frameを勧めないとIEユーザーに警告しています。

MS vs グーグル:IEプラグイン「Google Chrome Frame」をめぐり舌戦:ニュース - CNET Japan コメントを見る

Microsoftは声明で、最新技術を欲するユーザーはChrome Frameを使うよりも、新しいバージョンのIEに移行した方が良いと述べた。

「われわれはInternet Explorer 8で、重要な機能強化や更新を追加し、顧客がブラウザをより安全に使用できるようにした」とMicrosoftは述べた。「プラグイン全般、そして『Google Chrome』が抱えるセキュリティ上の問題を考えると、Google Chrome Frameをプラグインとして実行することにより、マルウェアや悪意あるスクリプトの攻撃対象となる領域は2倍になる。われわれは、こうしたリスクがあるものを友人や家族に勧めたりはしない」(Microsoft)
「IE6を使っている人は、ほかのアドオンをインストールするのではなく、IE6から離れるべきだ」とBarzdukas氏は述べた。「(アドオンは)問題を複雑にするだけだ」(Barzdukas氏)
Microsoftがの言い分はもっともですが、現実にはIE7やIE8と同じ割合で2001年にリリースされたIE6を利用する人がいることを考えると、Googleの強行とも言えるやり方にも致し方ない面があります。

ただ、実際問題Google Chrome Frameをインストールするより、Google自身が言明するとおり、SafariGoogle ChromeFirefox,Operaや或いは3つのレンダリングエンジン搭載のLunaScapeを使った方が幸せになれそうです。


関連エントリー

NSS Labsがブラウザセキュリティ検証結果を発表 : Safari Realized コメントを見る
記事検索
Archives