詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com 序文HarmonyOS は、ローカル プログラムでのリモート タスクの呼び出しをサポートします。この機能は、下位レベルの分散タスク スケジューリング サブシステムによってサポートされており、オープン ソースの OpenHarmony コードに提供されています。分散タスク スケジューリング サブシステムをより包括的に理解し把握するために、分散リモート起動という単純な機能から始めて、Hongmeng のオープン ソース コードを使用して詳細な調査を行いました。 以下のテキストで特に指定がない限り、ここで言及されている Harmony システムは、オープン ソースの Harmony システム (OpenHarmony 3.0 LTS バージョン) を指します。 OpenHarmony アーキテクチャ図 概要オープンソースの Hongmeng ドキュメントから始めましょう: 分散タスク スケジューリング モジュールは、マスター スレーブ デバイス サービス プロキシ メカニズムを通じて OpenHarmony オペレーティング システム上に分散サービス プラットフォームを確立し、マスター デバイス (OpenHarmony を搭載したスマート スクリーン デバイス) がスレーブ デバイス (IP カメラ、スポーツ ウォッチ、その他の小メモリ OpenHarmony デバイス) の FA を起動することをサポートします。 スマート スクリーンの番組開始リマインダーを例にとると、スマート スクリーンのお気に入り番組メニューで、[番組開始後にリマインダーを表示する] ボタンをクリックします。プログラムが開始すると、スマート スクリーンにスポーツ ウォッチのプログラム開始リマインダー FA が表示されます。この FA を通じて、ユーザーはお気に入りのプログラムが開始されたことをすぐに知ることができ、コラボレーションと相互支援の効果が得られます。 FA: 機能アビリティは、ユーザーと対話するために使用されるインターフェースを備えたアビリティを表します。 リモート スタート: デバイス間で FA を開始します。これは、ローカルで FA を開始することに対応します。 オープンソースの Hongmeng システム内のアプリケーションは、能力に基づいて FA と PA に分けられます。 FA はインターフェースを備えたアプリケーションであると簡単に理解できます。 分散サービスプラットフォーム分散タスク スケジューリングの前提は、デバイスが分散サービス プラットフォームを確立し、独自の機能を登録する必要があることです。 オープンソースの Hongmeng は、軽量、小型、標準の 3 種類のデバイスをサポートしています。 標準デバイスでは、オープンソースの Hongmeng では分散サービス プラットフォームがデフォルトでオンになっており、開発者は通常、分散タスク スケジューリング機能を使用するために追加の作業を行う必要はありません。 軽量で小型のデバイスでは、スタートアップ コード自体に分散サービス プラットフォーム関数の呼び出しを実装する必要があります。詳細については、「分散ソフトバスサブシステム」を参照してください。関連するコードリポジトリと呼び出し API については、[Distributed Soft Bus]、[Distributed Soft Bus Lite] を参照してください。 同じLAN 上記のコード ウェアハウスの説明では、次の点が繰り返し強調されています。 検出エンドデバイスと検出対象エンドデバイスが同じLAN内にあることを確認する必要がある。 これは、オープンソースの Hongmeng システムは現在 coap プロトコルを使用しており、当面は coap プロトコルのみをサポートしているためです。ソースコードからもわかるように、今後はBLEやUSBなど他の方式にも拡張される予定です。
オープンソースの Hongmeng CoAP プロトコルで使用されるデフォルトのポートは 5684 で、UDP ブロードキャストを介してローカル エリア ネットワークに公開されます。デバッグ中にデバイスが見つからない場合は、このポートを介してパケットをキャプチャして分析できます。
分散タスクスケジューリングプロセスたまたま、オープンソースの Hongmeng 標準システムをサポートする開発ボード Hi3516D を 2 つ持っています。そこで、標準システムの分散タスク スケジューリングを例に、オープン ソース Hongmeng システムの分散タスク スケジューリング プロセスについて説明します。開発言語が異なることを除けば、軽量システムと小規模システムの基本的な手順は同じです。 オープンソースの Hongmeng システム開発 FA は現在、js/eTS 言語のみをサポートしています。 このデモは分散計算機を参照します。説明の便宜上、多くの簡略化が行われており、ここではエラー処理は無視されています。 特定の API リファレンス コード リポジトリ: DeviceManager コンポーネント。 ステップ1: デバイスマネージャーを作成する
DeviceManager 関連のインターフェースを使用する前に、createDeviceManager インターフェースを通じて DeviceManager インスタンスを作成する必要があります。 ステップ2: 信頼できるデバイスのリストを取得する
ステップ3: 周辺機器の動的監視用のコールバック関数を登録する
ステップ4: 近くにある新しいデバイスを検出して認証する
新しいデバイスを一緒に使用する前に、認証する必要があります。オープンソースの Hongmeng システムにはユーザー登録メカニズムがないため、認証には別の開発フレームワークのサポートが必要です。オープンソースの Hongmeng は、簡単に使用できるポップアップ PIN コード認証メカニズムをサポートするために、標準システムにシンプルな HAP プログラムを提供します。 現在のバージョンでは PIN コード認証のみがサポートされており、PIN コード認証には認証プロンプト インターフェイス、PIN コード表示インターフェイス、および PIN コード入力インターフェイスを提供する必要があります。 現在、システムにはネイティブ レイヤーを介してポップアップを直接表示する機能がないため、ここでは一時的な FA を使用して、対応するインターフェイスにポップアップを表示します。 FA は、システム アプリケーションとしてプリセットされている DeviceManager_UI.hap です。 具体的な動作は次のとおりです。
ステップ5: リモートでFAを呼び出す上記の手順 1 ~ 4 は標準的な周辺機器管理手順であるため、後で使用するために関数ライブラリにカプセル化できます。 信頼できるデバイス配列を取得した後、適切なポップアップ ウィンドウまたは選択インターフェイスで、接続するデバイスの 1 つを選択するようにユーザーに求めることができます。
リモートFAを開始する手順:
リクエストを受信すると、リモート デバイスは対応するパラメータを使用して対応する FA を起動し、起動時にパラメータを取得できます。
具体的な API については、Huawei の Hongmeng 開発ドキュメントを参照してください。一部の内容はオープンソースの Hongmeng システムと異なる場合がありますのでご了承ください。ご自身で判断してください。 コンパイルして実行する上記の手順は、DevEco Studio 3.0.0.600 x64 で正常に記述され、2 つの Hi3516D デバイス間で正常に実行されます。コード(配布されたリモートブート.zip)を添付します。 オープンソースの Hongmeng システムに HAP プログラムをインストールする場合は、まず署名し、DevEco Studio で関連する設定を行う必要があります。具体的な手順については、オープンソースの Hongmeng ドキュメントを参照してください。 HAP プログラムをアップロードしてインストールするには、開発ツール hdc を使用する必要があります。詳細についてはドキュメントを参照してください。 まとめオープンソースの Hongmeng システムの分散タスク スケジューリングの基本機能は当初から改善されていましたが、使用方法のドキュメントが比較的分散しており、サブシステムごとに参照する必要があり、少し不便です。 次のステップでは、分散ソフト バスと分散データについて学習し、オープン ソースの Hongmeng システムがアプリケーション間のデータ相互作用機能をどのようにカプセル化しているかを確認します。 また、ソースコードを見ると、オープンソースの Hongmeng システムにはすでに分散アプリケーションフロー (移行) 操作機能が搭載されており、時間があるときに学習することができます。 詳細については、以下をご覧ください。 51CTOとHuaweiが共同で構築したHongmengテクノロジーコミュニティ https://harmonyos..com |
<<: クラウド、持続可能性、デジタル導入 - 2022 年のアジア太平洋地域の技術予測
>>: ハイブリッド クラウドの 4 つのハイブリッド モードの特徴は何ですか?
私は多くの安価な VPS を使用しましたが、その中にはかつて「最も安い VPS」と考えられていたもの...
OVH のアジア太平洋データセンターの VPS がセール中です: シンガポール VPS、オーストラリ...
李佳奇はWeChatミニプログラムに新しいビジネス「屋台」を開設した。最近、李佳琦のライブ放送室の公...
Raksmart Japanクラウドサーバーが日本・東京で正式に販売開始。米国シリコンバレー、ロサン...
はじめに:ジャック・マー氏の「地元の生活サービスは5時か6時の太陽であり、商品電子商取引よりも規模が...
Yue Zhixuan 氏の「リンクのためだけではなく、ソフトテキストの書き方の品質を無視することは...
SSD Nodes, Inc は、米国デラウェア州に登録された会社で、登録番号は 5098270 で...
ゲーム運営は、退屈ではありますが、非常に重要なポジションです。ゲームのドル箱とプレイヤーのベビーシッ...
【編集後記】この記事の著者は @wbuild です。記事では、デザイナーの成長過程を3つの段階に分け...
月給5,000~50,000のこれらのプロジェクトはあなたの将来ですマーケティングは企業の収益性の鍵...
zgovpsは、IIJ回線を標準搭載し、800Mbpsの帯域幅、最新の超高性能AMD Ryzen9 ...
bandwagon は、中国における bandwagonhost の略称です。bandwagonho...
ホストオンはどうですか?ホストは良いですか? Hosteons の AMD Ryzen+NVMe に...
ハイパーコンバージェンスからスタートし、中国市場にハイパーコンバージェンスを成功裏に導入したNuta...
Ramnode は設立され、現在では格安 VPS リストで 2 位にランクされています。安定性と G...