ターゲット環境サービス
ターゲット プラットフォームおよびカスタム サービスは、アプリケーションおよびコンポーネントの実行をサポートするために、オペレーティング システムによって実行されるタスクを補完します。サービス コードは、アプリケーション コードをターゲットの実装から分離します。プラットフォーム サービスは以下で構成されます。
スケジューリングおよびタスク実行サービス
通信サービス (デバイス ドライバー、送受信、クライアント/サーバー、メッセージトリガー、データ転送の通信のサポートを含む)
補助サービス (タイマー、不揮発性メモリ、パラメーターの調整、測定サービスなど)
カスタム サービスには、特殊なデバイス ドライバーやミドルウェアが含まれます。
下図とそれに続く表に、組み込みシステムのアプリケーションおよびコンポーネントのコードが通常連携するサービスを示します。

| サービス | 説明 |
|---|---|
| スケジューラ | サンプル時間 (周期またはオフセット) またはイベントおよび実行順序に基づいて、実行するタスクを選択します。サービスの目標には、スループットの最大化、待ち時間の最小化、レイテンシの最小化、公平性の最大化、および期限の遵守などがあります。 |
| 受信側 | アプリケーションやコンポーネント、不揮発性メモリ、またはターゲット環境から入力データを受信します。 |
| 送信側 | アプリケーションやコンポーネント、不揮発性メモリ、またはターゲット環境に出力データを送信します。 |
| データ転送 | 呼び出し可能なエントリポイント関数間でのデータの共有を処理します。呼び出し可能な関数は、ターゲット環境のソフトウェアで呼び出すことができるエントリポイントです。このサービスは、初期値の設定を含め、共有データの完全な所有権をもちます。 |
| 不揮発性メモリ | 不揮発性メモリに対してデータの読み書きを行います。 |
| タイマー | 特定の刻み分解能をもつ時間刻みなど、時間に関する特性を実装します。 |
| パラメーターの調整 | アルゴリズム コードの実行中にパラメーター値へのアクセスおよび変更を行えるようにします。 |
| 測定 | アルゴリズム コードの実行中に信号データへのアクセスおよび読み取りを行えるようにします。 |
モデルを設計する際は、アルゴリズムの側面に加え、アプリケーションまたはコンポーネントがターゲット環境サービスとどのように連携するかを考慮します。対話は、生成されたコード インターフェイスを介して行われます。コード ジェネレーターでサービスと対話できるインターフェイス コードを生成するには、サービス関数名やデータ アクセス メソッドなど、ターゲット環境のインターフェイス要件に関する情報をコード ジェネレーターに提供する必要があります。たとえば、モデルの入力端子は、ターゲット プラットフォームの受信側サービスへのリクエストを表します。定義済みのコード インターフェイスに入力端子をマッピングすることで、サービス リクエスト用のインターフェイス コードの生成方法をコード ジェネレーターに知らせます。