コンピューティングプラットフォーム、デジタルプラットフォーム、[1]またはソフトウェアプラットフォームは、ソフトウェアが実行されるインフラストラクチャです。コンピューティングプラットフォームの個々のコンポーネントは抽象化レイヤーの下に難読化される場合がありますが、必要なコンポーネントの合計がコンピューティングプラットフォームを構成します。
場合によっては、特定のソフトウェアに最も関連性の高いレイヤーは、コミュニケーションを容易にするために、それ自体がコンピューティング プラットフォームと呼ばれ、その属性の 1 つだけを使用して全体を参照します (換喩を使用) 。
たとえば、単一のコンピュータシステムでは、これはコンピュータのアーキテクチャ、オペレーティングシステム(OS)、およびランタイムライブラリになります。[2]アプリケーションプログラムやコンピュータビデオゲームの場合、最も重要なレイヤーはオペレーティングシステムであるため、それ自体をプラットフォームと呼ぶことができます(したがって、この文脈では、複数のOSで実行できるソフトウェアに対してクロスプラットフォームという用語が使用されます)。オフロード処理の場合などのマルチコンピュータシステムでは、ホストコンピュータのハードウェア、オペレーティングシステム(OS)、ランタイムライブラリに加えて、アプリケーションプログラミングインターフェイスまたはWebブラウザーを介してアクセスされる処理に利用される他のコンピュータ が含まれます。プログラムコードの実行に必要なコンポーネントである限り、コンピューティングプラットフォームの一部です。
コンポーネント
プラットフォームには以下も含まれる場合があります:
- 小規模な組み込みシステムの場合は、ハードウェアのみ。組み込みシステムは、OS なしでハードウェアに直接アクセスできます。これは、「ベアメタル」上で実行されると呼ばれます。
- ウェブベースのソフトウェアの場合はブラウザ。ブラウザ自体はハードウェア+OSプラットフォーム上で動作しますが、これはブラウザ内で動作するソフトウェアとは関係ありません。[3]
- Excelマクロなどのアプリケーション固有のスクリプト言語で書かれたソフトウェアをホストするスプレッドシートやワードプロセッサなどのアプリケーション。これは、 Microsoft Officeスイートをプラットフォームとして本格的なアプリケーションを作成することにまで拡張できます。 [4]
- すぐに使える機能を提供するソフトウェア フレームワーク。
- クラウドコンピューティングとプラットフォーム・アズ・ア・サービス。ソフトウェアフレームワークの考え方を拡張したもので、アプリケーション開発者は、開発者ではなくプロバイダーがホストするコンポーネントからソフトウェアを構築し、インターネット通信でそれらを結び付けることができます。[5]ソーシャルネットワーキングサイトのTwitterとFacebookも開発プラットフォームと見なされています。[6] [7]
- Java 仮想マシンや.NET CLRなどのアプリケーション仮想マシン (VM) 。アプリケーションは、バイトコードと呼ばれるマシン コードに似た形式にコンパイルされ、VM によって実行されます。
- 仮想化されたハードウェア、OS、ソフトウェア、ストレージを含む完全なシステムの仮想化バージョン。これにより、たとえば、物理的には Mac であるシステム上で一般的な Windows プログラムを実行できるようになります。
一部のアーキテクチャには複数のレイヤーがあり、各レイヤーは上位レイヤーのプラットフォームとして機能します。一般的に、コンポーネントは直下のレイヤーにのみ適合する必要があります。たとえば、Java プログラムは、Java 仮想マシン (JVM) と関連ライブラリをプラットフォームとして使用するように記述する必要がありますが、Windows、Linux、または Macintosh OS プラットフォームで実行するように適合させる必要はありません。ただし、アプリケーションの下のレイヤーである JVM は、各 OS ごとに個別に構築する必要があります。[8]
オペレーティングシステムの例
デスクトップ、ラップトップ、サーバー
- アミガOS、アミガOS4
- Chrome OS について
- UnixおよびUnixライク
- IBM i
- マイクロソフトウィンドウズ
- オープンVMS
- クラシック Mac OS - 2002 年に廃止
- OS/2
- QNX
- カスタムオペレーティングシステムを搭載したミッドレンジコンピュータ
- カスタムオペレーティングシステムを搭載した メインフレームコンピュータ
- ハーモニーOS
携帯

- アンドロイド
- バダ- 2013年に廃止
- BlackBerry OS - 2013年に廃止
- BlackBerry 10 - 2022年に販売終了
- 組み込みLinux
- ファイアOS
- Firefox OS - 2016年に廃止
- Huawei スマートフォンモデルおよびHuawei MatePad タブレットのHarmonyOS
- iOS
- iPadOS
- カイOS
- ルネOS
- AppleのNewtonデバイス上のNewton OS
- Palm OS - 2009年に廃止
- Symbian - 2012年に廃止
- セイルフィッシュOS
- ティゼン
- Ubuntuタッチ
- ウェブOS
- Windows Mobile - 2010年に廃止
- Windows Phone - 2017年に廃止
ソフトウェアの例
- ショックウェーブ
- ワイヤレス用バイナリ ランタイム環境(BREW)
- ココア
- ココアタッチ
- 。ネット
- フラッシュ
- ジャワ
- ライブコード
- マイクロソフト
- Mozilla Prism、XUL、XULRunner
- Mozilla WebExtensions APIはGoogle ChromeのAPIをモデルにしています。 [9] [10] [11]そのため、Firefoxの拡張機能はChromeの拡張機能とほぼ互換性があります。[12]
- ウェブプラットフォーム
- Oracle データベース
- クォート
- SAP ネットウィーバー
- スマートフェイス
- ユニバーサル Windows プラットフォーム
- HMS コア
- 倉頡
- アークTS
- アークUI
- ファーウェイ フェニックスエンジン
- フェニックスエンジンレイショップ
ハードウェアの例
- ARMアーキテクチャベースのデバイス
- Raspberry PiまたはGumstixフル機能の小型コンピューター
- LinuxやBSD系などのUnix系システムを搭載したARMサーバー
- さまざまなメーカーのChromeBook
- IBM PC互換機
- IBM System pおよびIBM Power Systemsコンピュータ
- IBM z/Architectureメインフレーム
- S-100バスをベースにしたCP/Mコンピュータ。おそらく最も初期のマイクロコンピュータプラットフォームである。
- ビデオゲーム機、あらゆる種類(PlayStation、Xbox、Nintendo)
- 3DO Interactive Multiplayerはメーカーにライセンス供与された
- Apple Pippin、ビデオゲームコンソール開発用のマルチメディアプレーヤープラットフォーム
- スーパーコンピュータのアーキテクチャ
参照
参考文献
- ^ 「プラットフォームについて語るときに私が語ること」martinfowler.com . 2018年3月18日閲覧。
- ^ 「プラットフォーム」。
- ^ Andrew Binstock (2012 年 7 月 2 日)。「Google によるブラウザのプラットフォームとしての再定義」。Dr . Dobbs。
- ^ Chip Wilson、Alan Josephson。「ソフトウェア + サービスのプラットフォームとしての Microsoft Office」。Microsoft Developer Network。
- ^ 「PAAS とは何か?」Interoute。 2015 年 10 月 22 日時点のオリジナルよりアーカイブ。2014 年 1 月 28 日閲覧。
- ^ 「Twitter 開発プラットフォーム - Twitter 開発者」。
- ^ 「Facebook 開発プラットフォームが開始...」Facebook 2006 年 8 月 15 日。
- ^ 「Java のバイトコードにおけるプラットフォーム独立性」。Stack Overflow。
- ^ 「Firefox アドオン開発の将来」。Mozillaアドオン ブログ。2018年 12 月 15 日閲覧。
- ^ 「互換性機能の今後の変更」 。Mozilla Add-ons ブログ。2018年 12 月 15 日閲覧。
- ^ 「Firefox 57 でレガシー拡張機能を有効にする方法 - gHacks Tech News」www.ghacks.net . 2017 年 8 月 12 日. 2018 年 12 月 14 日閲覧。
- ^ 「Google Chrome 拡張機能の移植」。Mozilla。2018年12 月 30 日閲覧。
