2012年1月3日火曜日

iOSのカーネルはDarwin

スマートフォンから勝手にプライバシーにかかわるデータを送信する
Carrier IQ が最近話題になっていますが、
私の持っているiPadを初めとするiOSでは
[設定]アプリケーションの[一般]-[情報]-[診断/使用状況]メニューで
[送信しない]が選択されていれば一応送信はされないようです。
私もここの設定を確認してみました。

ところでそのすぐ下の[診断データと使用状況データ]メニューを開いてみると
"LowMemory-2011-*-*-*.plist"のようなログがたくさん並んでいます。
そういえば最近safariがよく落ちるんですけど
原因はメモリ不足ということなのでしょうか。
で、何の気なしにそのログの内容を見ていると

Kernel Version: Darwin Kernel Version 11.0.0

なんていう文字が目に飛び込んできました。
iOSのカーネルってDarwinだったんですね。
初めて知りました。

Darwinといえばスティーブ・ジョブスのNeXTSTEPを源流に持つUNIX系のカーネルで、
現在はオープンソースで公開もされています。
MACのOS Xのカーネルであり、
現在最新のOS X LionがDarwinのバージョン11を使っているので、
OS X LionとiOS5のカーネルは乱暴に言えば同一ということになります。
もちろん下層にあたるプロセッサはx64(64bit)系とARM(32bit)系で異なりますし、
上層のフレームワークもCocoaとCocoa touchで違います。

AndroidのカーネルもPC用で発展したLinuxをつかいまわしていますし、
PCとスマートフォンで明らかにカーネルが違うのって
実はWindowsとWindows Phoneぐらいなんですね。
まあハードウェアの発展に伴ってWindows CEが時代遅れになったけど
Windowsをスマートフォンで動かすようにするのはつらいので
Windows Phoneを新たに作ったという
歴史的経緯はあるんでしょうけれど。

0 件のコメント:

コメントを投稿