JP6564838B2 - インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置 - Google Patents

インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置 Download PDF

Info

Publication number
JP6564838B2
JP6564838B2 JP2017243992A JP2017243992A JP6564838B2 JP 6564838 B2 JP6564838 B2 JP 6564838B2 JP 2017243992 A JP2017243992 A JP 2017243992A JP 2017243992 A JP2017243992 A JP 2017243992A JP 6564838 B2 JP6564838 B2 JP 6564838B2
Authority
JP
Japan
Prior art keywords
operating system
core
operating
time
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017243992A
Other languages
English (en)
Other versions
JP2019016340A (ja
Inventor
リ、ヤン
Original Assignee
北京▲東▼土科技股▲分▼有限公司
北京科▲銀▼京成技▲術▼有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京▲東▼土科技股▲分▼有限公司, 北京科▲銀▼京成技▲術▼有限公司 filed Critical 北京▲東▼土科技股▲分▼有限公司
Publication of JP2019016340A publication Critical patent/JP2019016340A/ja
Application granted granted Critical
Publication of JP6564838B2 publication Critical patent/JP6564838B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45575Starting, stopping, suspending or resuming virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Description

本発明は組み込みオペレーティングシステム技術分野に関し、特にインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置に関する。
組み込みオペレーティングシステム(Embedded Operating System,EOS)とは、組み込みシステムに用いるオペレーティングシステムであり、このシステムのリアルタイム性と専門性が高い、操作が便利で簡単等の利点があるため、広く応用されているシステムソフトウェアである。現在、組み込みオペレーティングシステムは、主にマルチスレッド組み込みオペレーティングシステム、マルチプロセスマルチスレッド組み込みオペレーティングシステム、仮想化組み込み操作オペレーティングシステムに分かれる。
従来技術において、多種類の組み込みオペレーティングシステムに対して、1つの中央プロセッサ(Central Processing Unit,CPU)はこのうちのある1種類の組み込みオペレーティングシステムしか運行できず、多種類の組み込みオペレーティングシステムを同時に運行できない。このため、1CPUのみを用いてもニーズの異なる応用シーンを満たすことができず、多種類の応用シーンでは適用できず、操作性と使用性能を低下させる。
本発明の実施形態はインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置を提供しており、従来技術において1CPUが1種類の組み込みオペレーティングシステムしか運行できず、ニーズの異なる応用シーンを満たすことができないという問題を解決する。
本発明の実施形態は以下の具体的な技術手段を提供する。
インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム調整運行方法において、前記インダストリアル・インターネットオペレーティングシステムは、応用層設備と、クラウド制御層設備と、フィールド層設備とを含み、前記クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含む。前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信し、前記方法は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用し、前記方法は、
事前に設定した仮想化技術を用いて、マルチコア中央プロセッサ(CPU)の第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1つの仮想マシン(VM)を創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応するステップと、
第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行するステップとを含む。
好ましくは、
前記第1コアにおいて1つの仮想マシンモニタ(VMM)を用いて前記少なくとも1VMを管理し、前記少なくとも1VMをノンルート(non−root)状態にて運行し、前記VMMをルート(root)状態にて運行するステップをさらに含む。
好ましくは、
もし前記マルチコアCPUにVMXモードに設定されているコアが存在すれば、パーティション結合(partition−merge)方法により前記複数VMXモードに設定されているコアのロジックパーティションを結合し、前記第1オペレーティングシステムを前記複数VMXモードに設定されているコアに相応のVM上にて同時に運行するステップをさらに含む。
好ましくは、前記マルチコアCPUの第1コアにおいて複数VMを創設する場合、前記第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、
時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断するステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行するステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行するステップとを含み、
前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和である。
好ましくは、
事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てるステップをさらに含む。
好ましくは、前記VM間での通信方式は、
送信側のVMは、共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認するステップと、
第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加するステップと、
前記受信側のVMが返した第2データを受信する。前記第2データは、前記受信側のVMに前記データ書き込みリクエストを獲得するステップとを含み、
前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、 前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載しており、
前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものである。
好ましくは、前記物理パーティションと前記ロジックパーティション、前記ロジックパーティションと前記ロジックパーティション間での通信方式は、
遠隔手続き呼び出しRPC通信または基準に基づくsocketポート通信のいずれか1つを含む。
好ましくは、前記第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する運行方式は、ホストhostモードまたはゲストguestモードのいずれか1つを含む。
マルチオペレーティングシステム調整運行装置において、前記インダストリアル・インターネットオペレーティングシステムは、応用層設備と、クラウド制御層設備と、フィールド層設備とを含み、前記クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含み、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信し、前記装置は、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用し、前記装置は、
事前に設定した仮想化技術を用いて、マルチコア中央プロセッサ(CPU)の第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1つの仮想マシン(VM)を創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する、第1運行ユニットと、
第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する、第2運行ユニットとを含み、
各VMはそれぞれ1つのロジックパーティションに対応する。
好ましくは、前記第1運行ユニットは、
前記第1コアにおいて1つの仮想マシンモニタ(VMM)を用いて前記少なくとも1VMを管理し、前記少なくとも1VMをノンルート(non−root)状態にて運行し、前記VMMをルート(root)状態にて運行する。
好ましくは、前記第1運行ユニットは、
もし前記マルチコアCPUにVMXモードに設定されているコアが存在すれば、パーティション結合方法により前記複数VMXモードに設定されているコアのロジックパーティションを結合し、前記第1オペレーティングシステムを同前記複数VMXモードに設定されているコアに相応のVM上にて同時に運行する。
好ましくは、前記マルチコアCPUの第1コアにおいて複数VMを創設する場合、前記第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、第1運行ユニットはさらに、
時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断する。ここで、前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和であるステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行するステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行するステップとを含む。
好ましくは、リソース割り当てユニットをさらに含み、
事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てる。
好ましくは、前記VM間での通信方式は、
送信側のVMの通信ユニットをさらに含み、
共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認し、
第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加し、前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載し、
前記受信側のVMが返した第2データを受信する。前記第2データは、前記受信側のVMに前記データ書き込みリクエストを獲得し、前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものとする。
好ましくは、前記物理パーティションと前記ロジックパーティション、前記ロジックパーティションと前記ロジックパーティション間での通信方式は、
遠隔手続き呼び出しRPC通信または基準に基づくsocketポート通信のいずれか1つを含む。
好ましくは、前記第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する運行方式は、ホストhostモードまたはゲストguestモードのいずれか1つを含む。
コンピュータ読み取り可能記憶媒体は、そのコンピュータプログラムを記憶しており、前記コンピュータプログラムがプロセッサにより実行される時に前記インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法のいずれか1つの方法のステップを実現する。
本発明の実施形態において、事前に設定した仮想化技術を用いて、マルチコアCPUの第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1VMを創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応する。第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する。このように、1つのマルチコアCPU、第1コア事前に設定した仮想化技術の採用、第1コア仮想化ならびに第2コアに対して、仮想化せずとも1マルチコアCPUのロジックパーティションと物理パーティションが共存する状態を実現する。ひいては、マルチコアCPUの物理パーティションとロジックパーティションに基づき、1マルチコアCPU上にて多種のオペレーティングシステムの同時調整運行を実現し、ニーズの異なる応用シーンを満たすことができる。
本発明の実施形態におけるインダストリアル・インターネットオペレーティングシステムの機能チャートである。 本発明の実施形態におけるインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法プロセスである。 本発明の実施形態におけるマルチオペレーティングシステム運行の混合構造システムの運行体系構造である。 本発明の実施形態における2コアCPU windows(登録商標)7とRTOSの調整運行体系構造である。 本発明の実施形態における4コアCPU windows7とRTOSの調整運行体系構造である。 本発明の実施形態における4コアCPU windows7、テーラリング版linux(登録商標)とRTOSの調整運行体系構造である。 本発明の実施形態におけるインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置構造を示す図である。
以下に本発明に係る実施形態において図面を結合して本発明の実施形態における技術方案について詳細に、完全に説明するが、次に陳述する実施形態は単に本発明のいくつかの実施形態であり、その全てではない。本分野の一般の技術者にとって、創造性的労働をしなくても、これらの実施形態に基づいてその他の実施形態を容易に獲得することができ、全て本発明の保護範囲に属することは明白である。
実際の応用について、インダストリアル・インターネットオペレーティングシステムは、ネットワーク化インダストリアル制御、クラウドインダストリアル制御、可視化工場ならびにインダストリアル・ビッグデータ分析等の基礎システムを実現し、制御メッセージフロー、管理メッセージフローならびにサプライチェーンメッセージフロー間で互いに結合する統一システムも実現し、インダストリアルフィールド制御性の信頼性保障を実現する。図1はインダストリアル・インターネットオペレーティングシステムの機能チャートであり、インダストリアル・インターネットオペレーティングシステムは、応用層設備、クラウド制御層設備およびフィールド層設備を少なくとも含む。ここで、応用層設備は、統一したインダストリアル・モデリング標準モジュール、ソフトウェア定義インダストリアル・プロセスモジュールおよびインダストリアル・可視化管理モジュールを少なくとも含む。クラウド制御層は、インダストリアル・リアルタイムデータベース、人工智能プラットフォームおよびインダストリアル・ビッグデータ分析プラットフォームを少なくとも含む。フィールド層は、フィールドバス通信プロトコルモジュール、インダストリアル・プロセス制御管理モジュール、異種フィールド設備集積モジュールおよびインダストリアル・管理ソフトウェアロードモジュールを少なくとも含む。この他に、インダストリアル・インターネットオペレーティングシステムは、カバー応用層、クラウド制御層およびフィールド層のインダストリアル・データ安全モジュールをさらに含む。インダストリアルリアルタイムオペレーティングシステムモジュールに対して、従来技術では1つの中央プロセッサ(Central Processing Unit,CPU)は1種類の組み込みオペレーティングシステムしか運行できず、ニーズの異なる応用シーンを満たすことができないという技術問題が存在する。
前記技術問題を解決するため、本発明の実施形態において、マルチコアCPUに対して、ロジックパーティションと物理パーティションが共存する状態を実現する。第1コアに対して、仮想化技術を用いて第1オペレーティングシステムを第1コアの仮想マシン(Virtual Manufacturing,VM)上にて運行する。第2コアに対して、仮想化技術を用いず、第2オペレーティングシステムを第2コア上にて直接運行する。
以下に具体的な実施形態を用いて本発明手段を詳細に説明するが、本発明は以下の実施形態の限りではないことは明白である。
図2は、本発明の実施形態におけるインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法の具体的なプロセスである。
ステップ200において、事前に設定した仮想化技術を用いて、マルチコアCPUの第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1VMを創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応する。
ここで、インダストリアル・インターネットオペレーティングシステムは、応用層設備、クラウド制御層設備およびフィールド層設備を含む。クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含む。インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信する。さらに、本発明の実施形態におけるマルチオペレーティングシステム運行方法は、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用する。
実際には、マルチコアCPUは少なくとも2コアを含み、各コア間で互いに独立している。
本発明の実施形態において、1マルチコアCPUにおいて異なるオペレーティングシステムを運行できるようにするため、事前に設定した仮想化技術を用いて、マルチコアCPUにおける一部のコアにおいて仮想化処理を行い、少なくとも1VMを創設する。その後、第1オペレーティングシステムの運行を起動し、第1オペレーティングシステムをVM上にて運行させる。
ここで、事前に設定した仮想化技術は、例えばVT−x技術でもよい。VT−xは、intelがVirtualization仮想化技術を運用する上での1つの命令セットであり、ソフトウェアに基づく仮想化解決手段の柔軟性と安定性の向上に役立つ。
ここで、マルチコアCPUは、例えばx86アーキテクチャに基づくCPUでもよく、他のタイプのCPUでもよい。本発明の実施形態においてはこの限りではない。
さらに、第1コアにおいて1つの仮想マシンモニタ(Virtual Machine Monitor,VMM)を用いて前記少なくとも1VMを管理し、前記少なくとも1VMをノンルート(non−root)状態にて運行し、前記VMMを根(root)状態にて運行する。
つまり、第1コアは1VMMと複数VMを含むことができ、各VM上にて単独のオペレーティングシステムを運行できる。
例えば、マルチコアCPUのうちの1コアをコア1とすれば、コア1上にて1つの独立したVMMを運行し、VMMをroot状態にて運行し、コア1において2つのVMを創設する。即ち、ロジックパーティションは2つとなる。この2VMはnon−root状態にて運行し、2つの異なるオペレーティングシステムをそれぞれこの2VM上にて運行できる。
説明が必要なことは、本発明の実施形態において、もしマルチコアCPUに複数VMXモードに設定されているコアが存在すれば、各VMXモードに設定されているコアも全て1VMMのみ含む。即ち、VMMは単独のコア上でのみ運行し、各コアは全て1つの独立したVMMエンティティを運行し、各コアにおけるVMM間で互いに干渉しない。このように、VMMは単独のコア上でのみ運行し、VMMの安全性と信頼性をさらに向上させることができる。
さらに、もし前記マルチコアCPUにVMXモードに設定されているコアが存在すれば、パーティション結合方法により前記複数VMXモードに設定されているコアのロジックパーティションを結合し、前記第1オペレーティングシステムを同前記複数VMXモードに設定されているコアに相応のVM上にて同時に運行するステップを含む。
例えば、マルチコアCPUに2VMXモードに設定されているコアがあり、それぞれコア1とコア2とし、コア1に1VM1と1VMM1を含み、コア2にVM2とVMM2を含むのであれば、VM1とVM2にそれぞれ対応するロジックパーティションを結合できる。このように、1つのオペレーティングシステムは、コア1とコア2におけるVM1とVM2上にて同時に運行できる。即ち、1つのオペレーティングシステムエンティティは、この2VMXモードに設定されているコアを同時に独占できる。
ここで、第1オペレーティングシステムを第1コアにおけるVM上にて運行する運行方式は、ホスト(host)モードまたはゲスト(guest)モードのいずれか1つを含む。
具体的に、1)hostモードでは、CPUが基本入出力システム(Basic Input Output System,BIOS)に電源を入れて起動後、VMMミラーを直接起動して運行する。VMM自身が例えばリソース割り当てのような簡単な処理を実行後、VMMはこの運行するコアをVMXモードに設定させ、VMM上のVMを介してwindows(即ち、第1オペレーティングシステム)ミラーを起動して運行する。windows運行プロセスにおいて、VMMはほとんど作業しない。
2)guestモードでは、CPUがBIOSに電源を入れて起動後、VMMミラーを直接起動して運行する。VMM自身が例えばリソース割り当てのような簡単な処理を実行後、VMMはこの運行するコアVMXモードに設定させ、VMM上のVMを介してwindowsミラーを起動して運行する。ならびにwindows運行プロセスにおいて、VMMはwindowsがアクセスした設備に対して相応の仮想化を実行する。
さらに、マルチコアCPUの第1コアにおいて複数VMを創設する場合、第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、
まず、時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断する。ここで、前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和であるステップを含む。
ここで、時間スケジューリング表は若干の時間窓により構成されており、時間窓は非アイドル時間窓とアイドル時間窓に分けることができる。ここで、非アイドル時間窓は1仮想マシンの運行時間に対応し、アイドル時間窓では仮想マシンを運行しない。
その後、現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行する。
現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行する。
さらに、もし複数の第2VMにおける各第2VMに対するならば、予め設定した時間の長さを周期としてラウンドロビン運行を行う。
このように、本発明の実施形態において、複数VMの運行スケジューリングに対して、時間スケジューリング表、優先順位スケジューリング演算法ならびにタイムスライスに基づくスケジューリング演算法の三者を結合した混合スケジューリングを実現でき、異なるユーザーのサービスニーズを満たす。かつ、時間スケジューリング表において第1タイマーと第2タイマーを設置し、それぞれ時間窓とメインフレーム時間の切り換えを制御し、従来時間スケジューリング表がシステム時計を用いることにより仮想マシンの切り換えならびにメインフレームの切り換えに遅延が発生する現象を効果的に回避できる。
さらに、複数VM間での通信方式は、
まず、送信側のVMは、共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認できる。
ここで、前記共有メモリは物理メモリから独立したメモリ空間を割り付け、VM起動前にVMM共有メモリの予め設定した配置表に基づき、当該共有メモリを全てのアクセス権限を有するVMへマッピングする。アクセス権限を有するVMは当該共有メモリに直接アクセスできる。ここで、アクセス権限は読み取り権限、書き込み権限または読み取り/書き込み権限を含むことができる。
ここで、共有メモリの予め設定した配置表において、アクセスを許したVMの識別子、共有メモリ空間物理開始アドレス、共有メモリ空間サイズ、各VMアクセス共有メモリのロジック開始アドレスならびに各VMアクセス共有メモリのアクセス権限を含むことができる。
かつ、VMMは各アクセス権限を有するVMに領域空間を配分し、VMは共有メモリを初期化し、各自のIPI(Inter−Processor Interrupt、プロセッサ間割り込み)割り込み処理関数ならびに処理請求を創設するタスクをインストールする。初期時、各VMは各自の領域空間を初期化しなければならない。
つまり、VMMは共有メモリを予め配置し、共有メモリの配置表を設置し、ひいては各VMに?共有メモリを介してデータ通信させることができる。
その後、第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加する。ここで、前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載する。
最後に、前記受信側のVMが返した第2データを受信する。前記第2データは、前記受信側のVMに前記データ書き込みリクエストを獲得し、前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものとする。
このように、本発明の実施形態において、VM間ではVMMが予め配置した共有メモリを介して通信でき、VMMを介さずとも仮想マシンが共有メモリをアクセスする時、VMMは仮想マシンと頻繁に切り換えることにより、仮想マシンの安全性検査とページ授権の問題を解決し、通信効率を高める。
ステップ210において、第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する。
つまり、本発明の実施形態において、第2コアに対して、仮想化機能を起動せず、第2オペレーティングシステムを裸の第2コア上、即ち第2コアの物理パーティション上にて直接運行する。
ここで、前記物理パーティションと前記ロジックパーティション、前記ロジックパーティションと前記ロジックパーティション間での通信方式は、
遠隔手続き呼び出し(Remote Procedure Call Protocol,RPC)通信または基準に基づくsocketポート通信のいずれか1つを含む。
このように、第2コアにおける第2オペレーティングシステムは、前記通信方式により第1コアにおける第1オペレーティングシステムの対応機能と応用を使用できる。
好ましくは、第1オペレーティングシステムは安全性に対する要求は高いが、リアルタイム性に対する要求は高くないシステムであり、第2オペレーティングシステムは安全性リアルタイム性に対する要求は高いシステムである。このように、システムの運行性能と効率をさらに高めることができる。
さらに、第1オペレーティングシステムと第2オペレーティングシステムを運行する時は、それぞれのシステムに運行リソースを割り当てしなければならない。具体的に、
事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てる。
ここで、リソース配置表について、ユーザーは検出したコンピュータシステムリソースと実際のニーズに基づき予め設置することができる。
このように、事前に設定したリソース配置表に基づき、それぞれ各オペレーティングシステムにコンピュータシステムリソースを割り当て、各オペレーティングシステムを割り当てたコンピュータシステムリソースにそれぞれ独立してアクセスさせることができる。
本発明の実施形態において、事前に設定した仮想化技術を用いて、第1コアをVMXモードに設定させ、第1コアにおいて少なくとも1VMを創設し、第1オペレーティングシステムを第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応する。第2オペレーティングシステムを第2コアにおける物理パーティション上にて直接運行し、1マルチコアCPUのロジックパーティションと物理パーティションを共存させる。ひいては、マルチコアCPUの物理パーティションとロジックパーティションに基づき、1マルチコアCPU上にて多種のオペレーティングシステムの同時調整運行を実現し、ニーズの異なる応用シーンを満たすことができる。
図3は、本発明の実施形態におけるマルチオペレーティングシステム運行の混合構造システムの運行体系構造であり、具体的に
1マルチコアCPUを含み、coreXとcoreYはともにマルチコアCPUのある1コアである。
具体的に、
1)coreXは、事前に設定した仮想化技術を用いて、これをVMXモードに設定させる。1VMと1VMMを少なくとも含み、VMをnon−root状態にて運行し、VMMをroot状態にて運行する。
ここで、各VM上にて1つのオペレーティングシステムを運行できる。例えば、図2に示すようにwindows7はVM1上にて運行し、リアルタイムオペレーティングシステム(Real Time Operating System,RTOS)はVM2上にて運行し、GOSシステムはVMn上にて運行する。
かつ、異なるコアの複数VMはパーティション結合により、1つのオペレーティングシステムを複数コアのVM上にて同時に運行させることができる。
VMMは単一コア上にて運行し、各コアは独立したVMMのみ運行し、ミラーを実行できる。VMMは、複数VM、VM上の仮想リソースならびに調整して使用するリソースを管理できる。複数コア上にてVMMを運行し、ミラーを実行する時、対応するのは複数VMMエンティティである。
2)coreYは、VMMを無効にし、オペレーティングシステムを裸コアcoreYにて直接運行する。好ましくは、例えば図2に示すRTOSをcoreY上にて運行するようなリアルタイム性要求が高いシーンに使用する。
ここで、物理パーティションとロジックパーティション、ロジックパーティションとロジックパーティション間での通信方式は、遠隔手続き呼び出しRPC通信または基準に基づくsocketポート通信を少なくとも含む。
例えば、coreYにおけるRTOSシステムは、RPCによりcoreXにおけるwindows7の対応機能と応用プログラムを使用できる。
つまり、本発明の実施形態において、マルチコアCPUに対してマルチコアCPUを区分でき、コアcoreXに対して仮想化技術を用いることができ、VMXを有効にし、VMを創設し、リソースを割り当て、ロジックパーティションを区分し、VM上にて第1オペレーティングシステムを運行する。コアcoreYに対してVMXを無効にし、物理パーティションを直接使用して、物理パーティション上にて第2オペレーティングシステムを運行する。
本発明の実施形態において、マルチオペレーティングシステム調整運行の混合構造システムの運行体系は、ロジックパーティションと物理パーティションが共存する状態を実現した。多種の応用シーンに適用でき、多種の異なるタイプのオペレーティングシステムを同時に運行できる。これにより、1マルチコアCPUが異なるニーズの異なる応用シーンを満たすことができる。
以下に具体的な応用シーンを例に挙げ、前記実施形態を詳細に説明する。
[応用シーン1]
図4は、本発明の実施形態における2コアCPU windows7とRTOSの調整運行体系構造である。
図4では、マルチコアCPUは2コアを含み、それぞれcore0とcore1とする。ここで、core0上にてVMXを有効にし、1VM1、即ち1つのロジックパーティションを有し、non−root状態にて運行する。VMMをさらに含み、root状態にて運行する。core1VMXを無効にし、1つの物理パーティションを含む。
具体的にwindows7とRTOSを調整運行する時、
1)windows7はVM1上にて運行し、core0を独占する。
2)RTOSは物理コア上にて直接運行する。
3)RTOSはRPCによりwindows7における対応機能を使用できる。
このように、2コアCPU上にて2種類の異なるオペレーティングシステムを同時に調整運行することを実現する。
[応用シーン2]
図5は、本発明の実施形態における4コアCPU windows7とRTOSの調整運行体系構造である。
図5では、マルチコアCPUは4コアを含み、それぞれcore0、core1、core2およびcore3とする。ここで、1コアを区分してRTOSを運行できる。残りの3コアはwindows7を運行し、core0、core1およびcore2のロジックパーティションにおいてパーティション結合ができる。さらに、core0、core1およびcore2上にて1つの独立したVMMエンティティを運行し、VMM間で互いに干渉しない。
具体的にwindows7とRTOSを調整運行する時、
1)1つのwindows7エンティティは、VM1、VM2、VM3にて運行する。VM1はcore0から独占し、VM2はcore1から独占し、VM3はcore2から独占する。このため、1つのwindows7エンティティはcore0、core1およびcore2を独占する。
2)core0、core1、core2上にてそれぞれ単独のVMMエンティティを運行する。
3)RTOSはコアcore3上にて直接運行する。
4)RTOSはRPCによりwindows7における対応機能を使用できる。
このように、4コアCPU上にて2種類の異なるオペレーティングシステムを同時に調整運行することを実現する。
[応用シーン3]
図6は、本発明の実施形態における4コアCPU windows7、テーラリング版linuxとRTOSの調整運行体系構造である。
図6では、マルチコアCPUは4コアを含み、それぞれcore0、core1、core2およびcore3とする。ここで、core3はRTOSを運行し、core0、core1およびcore2を仮想化しなければならず、core0とcore1を用いてwindows7を運行できる。core2はテーラリング版linuxを運行し、core0とcore1のロジックパーティションにおいてパーティション結合ができる。さらにcore0、core1およびcore2上にて1つの独立したVMMエンティティを運行し、VMM間で互いに干渉しない。
具体的にwindows7、テーラリング版linuxおよびRTOSを調整運行する時、
1)1つのwindows7エンティティは、VM1、VM2にて運行する。VM1はcore0から独占し、VM2はから独占する。このため、1つのwindows7エンティティはcore0とcore1を独占する。
2)1つのテーラリング版linuxエンティティはVM3上にて運行し、core2を独占する。
3)core0、core1、core2上にてそれぞれ単独のVMMエンティティを運行する。
4)RTOSは物理コアcore3上にて直接運行する。テーラリング版linuxは外部からすればRTOSの一部分であり、RTOSはRPCによりテーラリング版linuxにおける対応ファイルシステム、ネットワークプロトコルスタックの機能を使用できる。
5)RTOSはRPCによりwindows7における対応機能を使用でき、windows7は主にディスプレイ機能を提供する。
このように、4コアCPU上にて3種類の異なるオペレーティングシステムを同時に調整運行することを実現する。
前記実施形態に基づき、図7は本発明の実施形態において、インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置である。ここで、インダストリアル・インターネットオペレーティングシステムは、応用層設備、クラウド制御層設備およびフィールド層設備を含む。前記クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含む。前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信する。前記装置は、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用する。前記装置は具体的に、
事前に設定した仮想化技術を用いて、マルチコアCPUの第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1VMを創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応する、第1運行ユニット70と、
第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する、第2運行ユニット71とを含む。
好ましくは、前記第1運行ユニット70はさらに、
前記第1コアにおいて1VMMを用いて前記少なくとも1VMを管理し、前記少なくとも1VMをnon−root状態にて運行し、前記VMMをroot状態にて運行する。
好ましくは、前記第1運行ユニット70はさらに、
もし前記マルチコアCPUにVMXモードに設定されているコアが存在すればパーティション結合方法により前記複数VMXモードに設定されているコアのロジックパーティションを結合し、前記第1オペレーティングシステムを同前記複数VMXモードに設定されているコアに相応のVM上にて同時に運行する。
好ましくは、前記マルチコアCPUの第1コアにおいて複数VMを創設する場合、前記第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、第1運行ユニット70はさらに、
時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断する。ここで、前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和であるステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行するステップと、
現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行するステップとを含む。
好ましくは、リソース割り当てユニット72をさらに含み、
事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てる。
好ましくは、送信側のVMの通信ユニット73は、
共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認するステップと、
第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加する。ここで、前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載するステップと、
前記受信側のVMが返した第2データを受信する。前記第2データは、前記受信側のVMに前記データ書き込みリクエストを獲得し、前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものとするステップとを含む。
好ましくは、前記物理パーティションと前記ロジックパーティション、前記ロジックパーティションと前記ロジックパーティション間での通信方式は、
RPC通信または基準に基づくsocketポート通信のいずれか1つを含む。
好ましくは、前記第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する運行方式は、hostモードまたはguestモードのいずれか1つを含む。
コンピュータ読み取り可能記憶媒体は、このコンピュータプログラムを記憶しており、前記コンピュータプログラムがプロセッサにより実行される時に実現する前記任意方法実施形態におけるインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法である。
総じて、本発明の実施形態において、事前に設定した仮想化技術を用いて、マルチコアCPUの第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1VMを創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行し、各VMはそれぞれ1つのロジックパーティションに対応する。第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する。このように、1つのマルチコアCPU、第1コア事前に設定した仮想化技術の採用、第1コア仮想化ならびに第2コアに対して、仮想化せず1つのマルチコアCPUのロジックパーティションと物理パーティションが共存する状態を実現する。ひいては、マルチコアCPUの物理パーティションとロジックパーティションに基づき、1つのマルチコアCPU上にて多種類のオペレーティングシステムの同時調整運行を実現し、ニーズの異なる応用シーンを満たすことができる。
本分野の技術者として、本出願は実施形態の方法、システム、およびコンピュータプログラム製品を提供できることは明白である。したがって、本分野の技術者として、本発明は完全なハードウェア実施形態、完全なソフトウェア実施形態、またはソフトウェアとハードウェアの両方を結合した実施形態を採用できることがわかるはずである。また、本発明は1つまたは複数のコンピュータプログラム製品の形式を採用できる。当該製品は、コンピュータ使用可能なプログラムコードを含むコンピュータ利用可能な記憶媒体(ディスク記憶装置、CD−ROM、光学記憶装置などを含むがそれとは限らない)において実施する。
本発明は本願実施形態の手段、デバイス(システム)およびコンピュータプログラム製品のフローチャートおよび/またはブロック図を参照して陳述したものである。コンピュータプログラム命令でフローチャートおよび/またはブロック図のなかのすべてのチャートおよび/またはブロック、ならびにフローチャートおよび/またはブロック図のなかのチャートおよび/またはブロックの組み合わせを実現させることができると理解すべきである。これらのコンピュータプログラム命令を汎用コンピュータ、専用コンピュータ、組み込み式処理機あるいはその他のプログラミングできるデータ処理装置のプロセッサーに提供することによって機械的命令を生成させ、コンピュータあるいはその他のプログラミングできるデータ処理装置のプロセッサーが実行する命令を通じてフローチャートの1つあるいは複数のチャートおよび/またはブロック図の1つあるいは複数のブロックに指定された機能を実行するのに用いる装置を形成させる。
これらのコンピュータプログラム命令はコンピュータあるいはその他のプログラミングできるデータ処理装置を誘導して特定の方式で働くコンピュータが読み取れる記憶装置のなかに保存することも可能で、当該コンピュータが読み取れる記憶装置のなかに保存している命令にコマンド装置を含む製造品を生成させ、当該コマンド装置はフローチャートの1つあるいは複数のチャートおよび/またはブロック図の1つあるいは複数のブロックに指定された機能を実現する。
これらのコンピュータプログラム命令はコンピュータあるいはその他のプログラミングできる処理装置に搭載することも可能で、コンピュータあるいはその他のプログラミングできるデバイスの上で一連の操作ステップを実行させてコンピュータで実現する処理を生成させることによって、コンピュータあるいはその他のプログラミングできるデバイスの上で実行する命令にフローチャートの1つあるいは複数のチャートおよび/またはブロック図1つあるいは複数のブロックに指定された機能を実現するのに用いるステップを提供させる。
無論、本分野の技術者は本発明の精神と範囲を逸脱せずに本発明に対する種々の変更と変形を行うことができる。このようにして、本発明のこれらの修正と変形は本発明の権利請求および同等の技術範囲内に属するものであり、本発明はこれらの変更と変形を含むことを意図する。

Claims (11)

  1. インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法であって、
    前記インダストリアル・インターネットオペレーティングシステムは、応用層設備と、クラウド制御層設備と、フィールド層設備とを含み、前記クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含み、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信し、前記方法は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用し、前記方法は、
    事前に設定した仮想化技術を用いて、マルチコア中央プロセッサ(CPU)の第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1つの仮想マシン(VM)を創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行するステップと、
    第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行するステップとを含み、
    各VMはそれぞれ1つのロジックパーティションに対応し、
    前記マルチコアCPUの第1コアにおいて複数VMを創設する場合、前記第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、
    時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断するステップと、
    現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行するステップと、
    現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行するステップとを含み、
    前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和であることを特徴とするインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法。
  2. 前記第1コアにおいて1つの仮想マシンモニタ(VMM)を用いて前記少なくとも1VMを管理し、前記少なくとも1VMをノンルート(non−root)状態にて運行し、前記VMMをルート(root)状態にて運行するステップをさらに含むことを特徴とする請求項1に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法。
  3. 事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てるステップをさらに含むことを特徴とする請求項1に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法。
  4. 前記VM間での通信方式は、
    送信側のVMは、共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認するステップと、
    第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加するステップと、
    前記受信側のVMが返した第2データを受信するステップとを含み、
    前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載し、
    前記第2データは、前記受信側のVMが前記データ書き込みリクエストを獲得し、前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものであることを特徴とする請求項1に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法。
  5. 前記第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する運行方式は、ホストhostモードまたはゲストguestモードのいずれか1つを含むことを特徴とする請求項1に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法。
  6. インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置であって、
    前記インダストリアル・インターネットオペレーティングシステムは、応用層設備と、クラウド制御層設備と、フィールド層設備とを含み、前記クラウド制御層設備は、インダストリアルリアルタイムクラウドオペレーティングシステムモジュールを含み、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールは、応用層との間でデータ分析収集し、フィールド層へ制御命令を送信し、前記装置は、前記インダストリアルリアルタイムクラウドオペレーティングシステムモジュールに応用し、前記装置は、
    事前に設定した仮想化技術を用いて、マルチコア中央プロセッサ(CPU)の第1コアをVMXモードに設定させ、前記マルチコアCPUの第1コアにおいて少なくとも1つの仮想マシン(VM)を創設し、第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する、第1運行ユニットと、
    第2オペレーティングシステムを前記マルチコアCPUの第2コアにおける物理パーティション上にて直接運行する、第2運行ユニットとを含み、
    各VMはそれぞれ1つのロジックパーティションに対応し、
    前記マルチコアCPUの第1コアにおいて複数VMを創設する場合、前記第1オペレーティングシステムを運行する複数VM間でのスケジューリングでは、第1運行ユニットは、
    時間スケジューリング表において、時間スケジューリング表の時間窓切り換えを制御する第1タイマーおよび時間スケジューリング表のメインフレーム時間切り換えを制御する第2タイマーが設置されている場合、現在時刻が前記時間スケジューリング表の非アイドル時間窓内にあるか否かを判断し、前記メインフレーム時間は、時間スケジューリング表において各時間窓の長さの和であり、
    現在時刻が前記時間スケジューリング表における非アイドル時間窓内にあれば、前記非アイドル時間窓から準備状態にある第1VMを獲得し、運行し、
    現在時刻が前記時間スケジューリング表における非アイドル時間窓内になければ、優先順位の準備列から準備状態にある第2VMを獲得し、運行することを特徴とするインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置。
  7. 前記第1運行ユニットは、
    前記第1コアにおいて1つの仮想マシンモニタ(VMM)を用いて前記少なくとも1VMを管理し、前記少なくとも1VMをノンルート(non−root)状態にて運行し、前記VMMをルート(root)状態にて運行することを特徴とする請求項に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置。
  8. 事前に設定したリソース配置表におけるコンピュータシステムリソースとオペレーティングシステムの対応関係に基づき、前記第1オペレーティングシステムと第2オペレーティングシステムにそれぞれ相応のコンピュータシステムリソースを割り当てるリソース割り当てユニットをさらに含むことを特徴とする請求項に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置。
  9. 前記VM間での通信方式は、
    送信側のVMの通信ユニットをさらに含み、
    前記送信側のVMの通信ユニットは、
    共有メモリにおける少なくとも読み取り可能権限を有する受信側のVMの領域空間を確認し、
    第1データを前記領域空間に書き込み、前記領域空間にデータ書き込みリクエストを追加し、前記データ書き込みリクエストは、前記第1データの前記領域空間における位置識別子、前記送信側のVMの識別子ならびに前記リクエストの操作タイプを搭載し、
    前記受信側のVMが返した第2データを受信する。前記第2データは、前記受信側のVMに前記データ書き込みリクエストを獲得し、前記位置識別子に基づき前記第1データを獲得後、前記リクエストの操作タイプに基づき前記第1データに対して対応する操作を実行後に獲得したものとすることを特徴とする請求項に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置。
  10. 前記第1オペレーティングシステムを前記第1コアにおけるVM上にて運行する運行方式は、ホストhostモードまたはゲストguestモードのいずれか1つを含むことを特徴とする請求項に記載のインダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行装置。
  11. コンピュータプログラムを記憶しており、前記コンピュータプログラムがプロセッサにより実行される時に請求項1からのいずれか1つの方法のステップを実現することを特徴とするコンピュータ読み取り可能記憶媒体。
JP2017243992A 2017-07-03 2017-12-20 インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置 Active JP6564838B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710534181.X 2017-07-03
CN201710534181.XA CN107479943B (zh) 2017-07-03 2017-07-03 基于工业互联网操作系统的多操作系统运行方法及装置

Publications (2)

Publication Number Publication Date
JP2019016340A JP2019016340A (ja) 2019-01-31
JP6564838B2 true JP6564838B2 (ja) 2019-08-21

Family

ID=60596459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017243992A Active JP6564838B2 (ja) 2017-07-03 2017-12-20 インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置

Country Status (4)

Country Link
US (1) US10656961B2 (ja)
EP (1) EP3425503A1 (ja)
JP (1) JP6564838B2 (ja)
CN (1) CN107479943B (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6777050B2 (ja) * 2017-09-21 2020-10-28 株式会社デンソー 仮想化システム、仮想化プログラム、及び、記憶媒体
CN109445847B (zh) * 2018-07-09 2021-09-17 北京东土科技股份有限公司 工业服务器微内核架构实现方法
CN109032029B (zh) * 2018-08-14 2020-12-08 北京东土科技股份有限公司 工业服务器对外通信方法、系统、装置及工业服务器
CN110245585A (zh) * 2019-05-28 2019-09-17 艾贝科技(深圳)有限公司 倒车后视系统实现方法、装置、计算机设备及其存储介质
CN110427246B (zh) * 2019-06-29 2023-06-20 西南电子技术研究所(中国电子科技集团公司第十研究所) 多核虚拟分区重构系统
US20230195481A1 (en) * 2019-07-02 2023-06-22 Vmware, Inc. Hybrid partitioning of virtualization on multiple core systems
KR102363718B1 (ko) * 2021-07-21 2022-02-17 국방과학연구소 실시간 운영체제에서 파티션 별 장치 리소스를 할당하는 방법 및 그 장치
CN117389677A (zh) * 2022-07-05 2024-01-12 华为云计算技术有限公司 一种基于云计算技术的服务器以及云系统
CN114924811B (zh) * 2022-07-20 2022-11-11 南方电网数字电网研究院有限公司 多核芯片的固件部署及执行方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075938A (en) * 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US7552426B2 (en) * 2003-10-14 2009-06-23 Microsoft Corporation Systems and methods for using synthetic instructions in a virtual machine
US7574709B2 (en) * 2004-04-30 2009-08-11 Microsoft Corporation VEX-virtual extension framework
CN101361036B (zh) * 2005-12-23 2016-01-13 英特尔公司 变更虚拟机监控器中的调度器的方法和装置
JP4756603B2 (ja) * 2006-10-10 2011-08-24 ルネサスエレクトロニクス株式会社 データプロセッサ
US8046570B2 (en) * 2007-02-06 2011-10-25 Microsoft Corporation Supporting multiple operating systems in media devices
EP2083525A1 (en) * 2008-01-28 2009-07-29 Merging Technologies S.A. System to process a plurality of audio sources
JP2011022934A (ja) * 2009-07-17 2011-02-03 Toyota Motor Corp 電子制御ユニット、異常検出方法
CN101727351B (zh) * 2009-12-14 2012-09-05 北京航空航天大学 面向多核平台的虚拟机监控器非对称调度器及其调度方法
CN102110023B (zh) * 2009-12-25 2012-11-21 中国长城计算机深圳股份有限公司 一种多用户操作系统并行运行的控制方法、系统及计算机
JP5791478B2 (ja) * 2011-11-29 2015-10-07 三菱電機株式会社 情報処理装置
CN103150217B (zh) * 2013-03-27 2016-08-10 无锡江南计算技术研究所 多核处理器操作系统设计方法
JP5584811B2 (ja) * 2013-10-30 2014-09-03 株式会社日立製作所 仮想計算機の制御方法、仮想化プログラム及び仮想計算機システム
JP6111181B2 (ja) * 2013-10-31 2017-04-05 株式会社日立製作所 計算機の制御方法及び計算機
WO2015103376A1 (en) * 2014-01-06 2015-07-09 Johnson Controls Technology Company Vehicle with multiple user interface operating domains
CN104516782B (zh) * 2014-12-26 2020-05-12 上海迈微软件科技有限公司 用于进行智能系统运行环境切换的方法及其设备
US10817425B2 (en) * 2014-12-26 2020-10-27 Intel Corporation Hardware/software co-optimization to improve performance and energy for inter-VM communication for NFVs and other producer-consumer workloads
WO2016172514A1 (en) * 2015-04-24 2016-10-27 Siemens Aktiengesellschaft Improving control system resilience by highly coupling security functions with control
EP3278213A4 (en) * 2015-06-05 2019-01-30 C3 IoT, Inc. SYSTEMS, METHODS AND DEVICES FOR AN APPLICATION DEVELOPMENT PLATFORM OF AN INTERNET OF THE THINGS OF A COMPANY
US9921888B1 (en) * 2016-08-23 2018-03-20 General Electric Company Mixed criticality control system
CN106873553B (zh) * 2017-02-09 2020-01-21 北京东土科技股份有限公司 基于工业互联网操作系统的现场设备控制管理方法及装置

Also Published As

Publication number Publication date
JP2019016340A (ja) 2019-01-31
CN107479943B (zh) 2020-02-21
CN107479943A (zh) 2017-12-15
EP3425503A1 (en) 2019-01-09
US20190004846A1 (en) 2019-01-03
US10656961B2 (en) 2020-05-19

Similar Documents

Publication Publication Date Title
JP6564838B2 (ja) インダストリアル・インターネットオペレーティングシステムに基づくマルチオペレーティングシステム運行方法および装置
JP6355114B2 (ja) リソース処理方法、オペレーティング・システム、およびデバイス
US9600339B2 (en) Dynamic sharing of unused bandwidth capacity of virtualized input/output adapters
JP5599804B2 (ja) 仮想ストレージの割り当て方法
US9639292B2 (en) Virtual machine trigger
JP2016541072A5 (ja)
KR102140730B1 (ko) Gpu 기반의 딥러닝 개발 환경 제공 시스템 및 방법
CN113778612A (zh) 基于微内核机制的嵌入式虚拟化系统实现方法
EP3701373B1 (en) Virtualization operations for directly assigned devices
RU2543962C2 (ru) Аппаратно-вычилистельный комплекс виртуализации и управления ресурсами в среде облачных вычислений
CN113568734A (zh) 基于多核处理器的虚拟化方法、系统、多核处理器和电子设备
CN114816665B (zh) 混合编排系统及超融合架构下虚拟机容器资源混合编排方法
WO2015090195A1 (zh) 操作系统实例创建方法及装置
US8402191B2 (en) Computing element virtualization
CN117331704B (zh) 图形处理器gpu调度方法、装置和存储介质
CN113703913B (zh) 设备测试方法及装置
KR20230034195A (ko) 하이브리드 가상 머신 관리자의 시스템 및 동작 방법
Wu et al. Heterogeneous diskless remote booting system on cloud operating system
CN117785387A (zh) 一种融合架构的构建方法、融合处理方法及系统
CN116028164A (zh) 设备虚拟化方法以及装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190603

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190709

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190729

R150 Certificate of patent or registration of utility model

Ref document number: 6564838

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250