Appleの新しいiPadは複数のサードパーティ製アプリケーションを同時に実行する能力が欠けていると批判されているが、同社にはこの問題に対処するためにさまざまな選択肢がある。

iPad の iPhone OS は、ユーザーがアプリを閉じた後にサードパーティ製アプリがバックグラウンドで実行されるのを任意に制限します。しかし、これは iPhone OS が「マルチタスクできない」からではなく、iPhone OS は Apple のデスクトップ Mac OS X と同じプリエンプティブにマルチタスク処理を行う Mach/BSD カーネルを使用しているからです。

iPhone OS は、モバイル ネットワークで着信やテキストメッセージをリッスンするシステム プロセスを常に実行し、音楽を常に再生するために iPod プロセスを実行し、アイドル状態のアプリに送信されるバックグラウンド通知を監視します。その他にもさまざまなプロセスがあります。物事は常に起こっています。これがマルチタスクの定義です。

オペレーティング システムのマルチタスク

オリジナルの 1984 Macintosh や PDA の Palm OS シリーズのようなシングルタスク オペレーティング システムは、設計上の制約により、複数のアプリケーションを同時に実行することができません。

80 年代半ば、Apple はクラシックな Mac OS を適応させてアプリ間を切り替え、協調的なマルチタスクを採用したウィンドウ環境を作成しました。このモデルでは、さまざまなアプリが自発的にプロセッサの制御を放棄し、すべてが同時に実行されているように見えます。

このモデルの欠点は、アプリケーションが応答を停止すると、他のアプリケーションがプロセッサ時間を共有できなくなり、マルチタスクの幻想が実質的に破壊される可能性があることです。 Mac OS X などの最新のオペレーティング システムでは、他のアプリケーションをプリエンプトするカーネル タスクが指定されているため、アプリケーションが応答を停止した場合、カーネルは単にアプリケーションを終了するだけで、他のアプリケーションは引き続き動作できます。

マルチタスクを超えて

iPhone、iPod touch、iPad 内の iPhone OS は、このスタイルのプリエンプティブ マルチタスクが可能であるだけでなく、マルチプロセッシング、これにより、異なるタスクを異なるプロセッサ コアで同時に実行できます。

たとえば、ビデオを再生する場合、iPhone は H.264 のデコードに伴う重労働を専用のビデオ プロセッサ コアにスピンオフし、メイン プロセッサ コアが更新のリッスンやユーザー インターフェイスの維持などの他のタスクを処理し続けることができます。

Appleの秘密主義A4プロセッサーiPad の実際には、複数のプロセッサ コアが組み込まれたシステム オン チップであり、それぞれが同時タスクを処理できます。

モバイル環境でのマルチタスク

複数のアプリケーションを同時に実行できることには一定の利点がありますが、同時に 1 つのアプリケーションのみを実行できるようにする iPhone OS のセキュリティ モデルを Apple が意図的に使用することを選択した一連の理由もあります。

1つ目は、リソースが限られていることです。モバイル デバイスの RAM と CPU 能力には限界があるため、複数のアプリを一度にロードして実行すると、モバイル デバイスのパフォーマンスとバッテリ寿命に関連する新たな問題が発生します。また、ユーザーはバックグラウンドで実行されているプロセスを監視および管理する必要があるため、システムの複雑さも増大します。

もう 1 つの問題はセキュリティに関係します。 iPhone OS のようにアプリがユーザーによって簡単に終了されない場合、ユーザーはアプリがまだ実行中であることに気づかない可能性があります。バックグラウンド アプリは価値のあるサービスを提供する可能性がありますが、制限なしにスパイウェア、ウイルス、その他の悪意のあるソフトウェアをインストールする可能性もあります。それはiPhone OSでは不可能です。

PC デスクトップ上の数十億ドル規模のマルウェア問題は、ソフトウェアを自由にインストールすることにメリットとデメリットの両方がある理由を示しています。 Google の Latitude など、無害に見えるバックグラウンド サービスであっても、ユーザーが位置情報の宣伝などに伴う潜在的なリスクを認識するためのセキュリティ資格情報を持っていない場合、ユーザーは目に見えないセキュリティ上の脅威にさらされる可能性があります。

Apple のサンドボックス マルチタスク モデルの例外

Apple の iPhone OS のモバイル向けに最適化されたセキュリティ モデルは、使いやすさ、シンプルさ、パフォーマンスの点で、Microsoft が Windows Mobile でモバイル デバイスに移行したデスクトップ PC モデルよりも、ほとんどのユーザーにとって理にかなっています。ただし、Apple が対処する必要がある問題はまだあります。

1 つ目は、iPhone 2.0 の開発後に Apple が認めたものです。多くのアプリは、ニュースや受信メッセージなどの外部更新を聞くためだけに開いたままにしたいと考えています。 Apple の通知サービスは、この機能をシステム タスクに組み込んだため、iPhone 自体がアップデートをリッスンし、アプリにバッジを付けるか、ユーザーが操作できる通知メッセージを配信するだけです。

通知以外にも、iPad ユーザーに対処してもらいたいマルチタスク関連の機能があります。 1 つは、Pandora ラジオなどのローカル バックグラウンド サービスです。 Apple の次期 iPhone OS 4.0 では、ユーザーがバックグラウンドで実行する特定のアプリを選択したり、それらのサービスをシステムに組み込んだり、特定のバックグラウンド タスクを有効にしたりできるようになると予想されています。

これにより、Pandora などのアプリは、ユーザーがアプリを終了しても継続するバックグラウンド タスクを開始できる可能性があります。 iPad のより高速なプロセッサを使用すると、限られた数のバックグラウンド サービスを実行する機能は、現在の iPhone にあるほど問題ではなくなる可能性があります。

状態とメイン

セキュリティやマルウェアの問題のパンドラの箱を開けずにマルチタスク関連の機能を提供するもう 1 つのアプローチは、システムが現在実行中のアプリの状態を保持できるようにして、ユーザーがアプリをすばやく切り替えられるようにすることです。

これにより、同時に実行できるプライマリ アプリは 1 つだけになるため、システムのプロセッサ、メモリ、バッテリ寿命を消耗することなく、アプリ間を切り替える iPhone OS の既存のシンプルなモデルが強化されます。

iPhone 4.0 のメイン システム アプリに追加サービスを組み込むことで、実際に iPhone OS のセキュリティ モデルを破ったり、ユーザーが管理する多くの新たな複雑さを導入したりすることなく、サードパーティ アプリがマルチタスクやバックグラウンド操作を利用できるようになります。

ダッシュボードウィジェット

Microsoft の Windows Mobile や Google の Android と同じ問題を引き継ぐことなく、マルチタスク スタイルの機能を提供するために Apple が模索できるもう 1 つの道は、オリジナルの Macintosh によって示唆されています。デスク アクセサリ スタイルのウィジェットです。

実際にはアプリ間でマルチタスクを行うことはできませんでしたが、1984 年の初代 Macintosh では、ユーザーが電卓やスクラップブックなどのミニ アプリを主要なアプリケーションと連携して実行することができました。

iPhone の通常の株価、天気、電卓アプリなしで iPad がデモされたという事実は、これらのアプリが iPad 上で全画面ユーティリティから他のアプリ内で呼び出せるデスク アクセサリ ウィジェットに移行したことを示している可能性があります。 Apple 独自の iWork。

iPhone が最初の発表時に発表されていなかった機能 (YouTube ビデオの視聴機能など) を備えてリリースされたのと同じように、iPad の最終リリースでは、最初のプレゼンテーションには含まれていなかった追加機能が導入されることは間違いありません。開発者は、Apple がまだ公表していない iPad のさまざまな機能をすでに知っています。

Apple の iPad の内部: Adob​​e Flash

Apple の iPad 内部: VGA ビデオ出力