JP2010244324A - 画面表示処理装置 - Google Patents
画面表示処理装置 Download PDFInfo
- Publication number
- JP2010244324A JP2010244324A JP2009092838A JP2009092838A JP2010244324A JP 2010244324 A JP2010244324 A JP 2010244324A JP 2009092838 A JP2009092838 A JP 2009092838A JP 2009092838 A JP2009092838 A JP 2009092838A JP 2010244324 A JP2010244324 A JP 2010244324A
- Authority
- JP
- Japan
- Prior art keywords
- computer
- frame buffer
- hardware
- screen display
- display device
- 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.)
- Pending
Links
Images
Landscapes
- Digital Computer Display Output (AREA)
Abstract
【課題】 複数のハードウェアを通信手段で接続して画面表示装置を共有するシステムにおいて、データ通信量の増大を抑制しつつ、各ハードウェアの選択の自由度向上を可能とした画面表示処理装置を提供する。
【解決手段】 2つのハードウェア、HW1、HW2を接続して、HW2に接続された表示装置を共有する画面表示処理装置において、各OS1〜4に対応してフレームバッファ11a、11c〜11eを配置し、描画画面データを共通形式で格納するとともに、HW1のフレームバッファ11aと同期するフレームバッファ11bをHW2内に配置し、LCDコントローラ15bは、各フレームバッファ11b〜11eの描画画面データを合成することにより、LCDに出力する画像を生成する。
【選択図】 図1
【解決手段】 2つのハードウェア、HW1、HW2を接続して、HW2に接続された表示装置を共有する画面表示処理装置において、各OS1〜4に対応してフレームバッファ11a、11c〜11eを配置し、描画画面データを共通形式で格納するとともに、HW1のフレームバッファ11aと同期するフレームバッファ11bをHW2内に配置し、LCDコントローラ15bは、各フレームバッファ11b〜11eの描画画面データを合成することにより、LCDに出力する画像を生成する。
【選択図】 図1
Description
本発明は、複数のオペレーティングシステムや処理装置で共通の表示装置を用いるための画面表示処理装置に関する。
計算機を利用したシステムでは、その出力装置として画面表示装置が用いられている。一般的なオペレーティングシステム(OS:Operating System)における画面表示は、図3に示されるように、計算機200上で稼働しているアプリケーション6からユーザーインターフェースミドルウェア(UIMW:user interface middleware)5に対して指示を行い、このUIMW5がGPU(Graphic Processing Unit)ドライバ2を通じてグラフィックハードウェア(描画装置)1に対して描画指示を行うことにより行われている(図3参照)。しかし、この方法は、OSが描画装置を占有していることを前提としたものであるため、同一のハードウェア上で複数のOSを稼働させる場合や複数のハードウェアで画面表示装置を共有する場合を考慮したものではない。特許文献1記載の技術は、仮想マシンをグラフィックハードウェア空間へと適用することにより、仮想マシン上で稼働する各OSから描画装置への直接アクセスを可能とし、各OSが単独で稼働している場合と同様に描画装置を利用することができるようにするものである。
この特許文献1の技術は、接続されるハードウェア、OSの数が増えると、描画装置側の負担が増大するほか、複数のハードウェアを組み合わせて共通の描画装置を利用して表示を行うような場合には、この描画装置を各ハードウェアが直接制御できるものである必要があり、ハードウェアの選択に制約が生じる。また、接続されるハードウェアによってハードウェアと描画装置との通信遅延時間に差が生じるため、各ハードウェアでの描画の排他制御における問題となるほか、データ通信量の増大を招く。
そこで本発明は、複数のハードウェアを通信手段で接続して画面表示装置を共有するシステムにおいて、データ通信量の増大を抑制しつつ、各ハードウェアの選択の自由度向上を可能とした画面表示処理装置を提供することを課題とする。
上記課題を解決するため、本発明に係る画面表示処理装置は、少なくとも1つのOSを稼働させる第1の計算処理部と、表示装置に接続される描画装置を備える第1の計算機と、少なくとも1つのOSを稼働させる第2の計算処理部を備える第2の計算機と、各計算機を接続する通信手段とを備え、第1、第2の計算処理部で稼働しているオペレーティングシステムそれぞれから第1の計算機に接続された表示装置に画面を表示する処理を行う画面表示処理装置において、各計算処理部に設けられ、各OSに対応して、描画画面データを共通形式で保持する第1のフレームバッファ(FB:Frame Buffer)と、第1の計算機に設けられ、描画装置の指示により第2の計算機の第11のFBと同期する第2のFBと、をさらに備えており、描画装置は、第1の計算機の各FBの描画画面データをコピーまたは合成することにより、表示装置への出力画像を生成することを特徴とする。
第1の計算機は、描画装置の制御機能を有するOSを少なくとも一つ稼働させており、第1の計算機または第2の計算機のいずれかで稼働している描画装置の制御機能を有しないOSに通知して描画装置の制御を行うOS間通信手段をさらに備えているとよい。
本発明によれば、各OSは、専用のFBへの出力を行うため、複数のOSからのアクセスがなく、排他制御を行う必要がない。また、最終的な描画はFBのデータを必要に応じて合成すればよいので、描画装置側の負担も小さい。FBに共通形式で格納する機能を実現すれば足りるため、ハードウェアの選択の自由度も向上する。第2の計算機から、第1の計算機への描画データの送信は、描画装置の指示に基づいて行われるので、特に、第2の計算機で稼働しているOSから表示装置へと表示している画像を更新する必要がない場合には描画データを送信する必要がなく、第2の計算機が描画装置に直接アクセスする場合に比較して、データ送信量を抑制できる。
以下、添付図面を参照して本発明の好適な実施の形態について詳細に説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の参照番号を附し、重複する説明は省略する。
図1に、本発明に係る画面表示処理装置の実施形態をブロック図として示す。画面表示処理装置である計算システム100は、複数の計算機により構成され、各計算機上で稼働する1つないし複数のOS上でアプリケーション6が稼働している。アプリケーション6は、OSが提供するUIMW5を通じて各OSに対して用意されている表示プラットフォーム4に対して画面制御を行う。この表示プラットフォーム4間で連携をとるため、OS間通信3機能が用意される。描画装置である描画ハードウェア群1は、表示プラットフォーム4から直接、またはGPUドライバ2を通じて制御されることで、図示していない表示装置への描画が行われる。
図2は、図1の装置による画面表示処理例を説明する図である。ここでは描画装置を保持していないハードウェア装置であるHW1と、描画装置を保持しているハードウェア装置であるHW2とを組み合わせて動作させる場合を例に説明する。
HW1上では、OSとして単独のOS1が稼働し、HW2上では、3つのOS(OS2、OS3、OS4)が稼働しており、それぞれアプリケーションとしてAP60〜64が作動している。HW1上には、OS1に対応して描画装置へと出力を行う描画画面のデータを保持するフレームバッファ(FB:Frame Buffer)11aがそのRAM領域上に配置されている。一方、HW2には、各OS(OS2、OS3、OS4)に対応するFB11c〜11eとHW1上のFB11aに対応するFB11bとがそのRAM領域上に配置されている。これらのFB11b〜11eは、RAM上のそれぞれ異なる領域に配置されている。
HW1のFB11aは、表示装置であるLCDを制御することが可能なLCDコントローラ15aに接続されており、LCDコントローラ15aの出力は、キャプチャー回路14を通じてFB11bに入力されている。したがって、HW1には、表示装置は直接接続されていない。FB11aとFB11bとの接続は、これに限られるものではなく、これらを専用または汎用のデータ転送路(例えば、PCI-SIG社の提唱するPCI Express規格)により行ってもよい。
HW2上で稼働するOS2、OS3は、フレームバッファドライバ13a、13bを有しており、両者は、OS間通信機能12により接続されている。OS3のフレームバッファドライバ13bは、自身のFB11dに加えて、OS4のFB11eを管理する機能を有している。これらの各OS上に配置されるFB11と、フレームバッファドライバ13とが上記表示プラットフォーム4に該当する。なお、各FB11は少なくとも2画面分の描画データを保持することが可能な構成となっている。
HW2の4つのFB11b〜11eは、表示装置であるLCDを制御することが可能なLCDコントローラ15bに接続されており、LCDコントローラ15bは、表示装置であるLCDに接続されている。このLCDコントローラ15bは、フレームバッファドライバ13aに接続されており、描画ハードウェアの制御は、OS2が主体となって行われる。すなわち、OS2がマスターとなり、スレーブとなるOS1、OS3、OS4の処理要求を受けて下位層である描画装置への実際の描画を行う。
各OS1〜4は、対応するFB11a、c〜eの描画データを独立して更新する。各OSからFB11上に配置されている描画データを更新する場合には、まず、表示プラットフォームに対して描画データの切り替え要求を発行する。ここでいう表示プラットフォームとは、フレームバッファドライバ13を有する場合は当該フレームバッファドライバ13であるが、フレームバッファドライバ13を有さず、各OSがアプリケーション等から直接フレームバッファにアクセスできる場合には、当該フレームバッファになる(図中では、OS1のAP60が該当する)。切り替え要求が表示プラットフォームから受理されると、各OSはFB11a、11c〜11eの現在出力側でない側のバッファを出力された描画データで更新する。データ更新が完了したら、更新した側のバッファを出力側に切り替え、各OSは対応するLCDコントローラ15a、15bに対して更新処理の完了を通知する。ここで、マスターであるOS2以外のOSからの完了通知は、OS間通信やハードウェア間の通信を通じてフレームバッファドライバ13aへと送られ、フレームバッファドライバ13aからLCDコントローラ15bへと伝達され、コントローラ15bからの通知は逆の順序を通じて各OSに通知される。
また、LCDコントローラ15bの設定の変更は、表示プラットフォーム4への要求を統合して、マスターとなるOS2から実行される。このとき、表示装置への描画処理実行中に変更が行われないよう、LCDコントローラ15bからのVSYNC割り込みを受信した段階で変更を行うとともに、FB11の更新処理もこれに同期して統合して行われる。
一方、FB11bの内容は、FB11aの書き替え完了に同期して書き替えられる。なお、全ての更新に同期するのではなく、フレームバッファドライバ13aまたはLCDコントローラ15bからの指示に基づいて、FB11aの書き替えタイミングより低い周期で、あるいは、これらの指示があった場合にのみ同期を行うようにしてもよい。
LCDコントローラ15bは、FB11b〜11eの出力側に格納されている描画データを合成することで、LCDへの画像出力を行う。ここで、合成に際しては、例えば、指定された順序で重ね合わせたり、指定した領域上にペーストする形式など各種の合成手法を採用することができる。
本実施形態によれば、各FB11a、c〜eは、各OS1〜OS4に対応して専用に設けられたものであるため、複数のOSからのアクセスを考慮する必要がなく、排他制御を行う必要がないので、無駄がない。一方、最終的な出力は、各FB11b〜11eの画面合成を行うことで容易に生成できる。また、一般的なOSは、占有するFBの存在を前提としているため、既存のシステムの構成を変更することなくOSの流用が行える。
また、異なるハードウェア間をまたぐデータ転送についても、予め設けられたデータバッファに必要に応じてデータを転送しているため、LCDコントローラ15bは内部のバッファとのデータ転送のみを行えば足り、合成に伴うデータ転送やオーバーヘッドの発生を抑制することができる。
さらに、共通したインターフェース方式を表示プラットフォームに採用することで、OSに下位層の構造を意識させることなくシステムを構築することができる。そのため、OSやハードウェアの選択自由度も向上する。また、OS間通信機能を用いることにより、必要に応じて描画装置への処理要求を伝達したり、アクセス状態情報を共有して排他制御を行うこともできる。
11b-11e…各フレームバッファ、1…描画ハードウェア群、2…GPUドライバ、3…OS間通信、4…表示プラットフォーム、5…ユーザーインターフェースミドルウェア、6、61〜64…アプリケーション、11a〜11e…フレームバッファ、12…OS間通信機能、13a、13b…フレームバッファドライバ、14…キャプチャー回路、15a、15b…LCDコントローラ、100…計算システム、200…計算機。
Claims (2)
- 少なくとも1つのオペレーティングシステムを稼働させる第1の計算処理部と、表示装置に接続される描画装置を備える第1の計算機と、少なくとも1つのオペレーティングシステムを稼働させる第2の計算処理部を備える第2の計算機と、各計算機を接続する通信手段とを備え、前記第1、第2の計算処理部で稼働しているオペレーティングシステムそれぞれから前記第1の計算機に接続された表示装置に画面を表示する処理を行う画面表示処理装置において、
前記各計算処理部に設けられ、前記各オペレーティングシステムに対応して、描画画面データを共通形式で保持する第1のフレームバッファと、
前記第1の計算機に設けられ、前記描画装置の指示により前記第2の計算機のフレームバッファと同期する第2のフレームバッファと、をさらに備えており、
前記描画装置は、前記第1の計算機の各フレームバッファの描画画面データをコピーまたは合成することにより、表示装置への出力画像を生成することを特徴とする画面表示処理装置。 - 前記第1の計算機は、前記描画装置の制御機能を有するオペレーティングシステムを少なくとも一つ稼働させており、前記第1の計算機または前記第2の計算機のいずれかで稼働している前記描画装置の制御機能を有しないオペレーティングシステムに通知して前記描画装置の制御を行うオペレーティングシステム間通信手段をさらに備えていることを特徴とする請求項1記載の画面表示処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009092838A JP2010244324A (ja) | 2009-04-07 | 2009-04-07 | 画面表示処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009092838A JP2010244324A (ja) | 2009-04-07 | 2009-04-07 | 画面表示処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010244324A true JP2010244324A (ja) | 2010-10-28 |
Family
ID=43097275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009092838A Pending JP2010244324A (ja) | 2009-04-07 | 2009-04-07 | 画面表示処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010244324A (ja) |
-
2009
- 2009-04-07 JP JP2009092838A patent/JP2010244324A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1834272A1 (en) | Display system and host device for outputing image signal and method therefor | |
US20100156854A1 (en) | Display system, module and method | |
JP5045428B2 (ja) | 画像表示システム、画像表示方法及びプログラム | |
US6844879B2 (en) | Drawing apparatus | |
JP2010534344A (ja) | アビオニックおよび非アビオニック装置のための表示システム | |
JP2008145825A (ja) | 画像処理装置および画像処理装置の制御方法およびプログラム | |
JP2002244646A (ja) | データ処理システム及びデータ処理方法、コンピュータプログラム、記録媒体 | |
JP2010244324A (ja) | 画面表示処理装置 | |
JP2020177072A (ja) | 車両用装置、車両用装置の制御方法 | |
CN107340983A (zh) | 一种电子设备双显示方法、装置及电子设备 | |
JP2009188859A (ja) | プロジェクタ、投写システムおよび投写方法 | |
JP2020177073A (ja) | 車両用装置、車両用装置の制御方法 | |
JP6105841B2 (ja) | 画像表示装置及びその制御方法、プログラム、並びに記憶媒体 | |
JP3985451B2 (ja) | 画像処理装置および画像表示装置 | |
JP3862519B2 (ja) | ディスプレイ装置及びそのプログラム並びにそれを備えたシステムにおける各装置のプログラム | |
JP2010072335A (ja) | 表示装置とその駆動方法、及び携帯端末 | |
JP2006350368A (ja) | 画像表示システム、ホスト装置、および画像表示装置 | |
JP3914454B2 (ja) | 表示制御装置 | |
JP2020148991A (ja) | 表示装置、表示システム及び表示方法 | |
WO2019123937A1 (ja) | 操作受付装置、制御システム、制御方法、及び、制御プログラム | |
CN116126272A (zh) | 投屏方法、装置、电子设备及非易失性存储介质 | |
JP2009169635A (ja) | 画像表示システム、及び画像表示装置、並びに画像表示方法 | |
JP2013250708A (ja) | 画像表示システム | |
JP2020177074A (ja) | 車両用装置、車両用装置の制御方法 | |
JP2000267650A (ja) | 画像表示装置 |