JP7093979B2 - デバイスプロキシ装置及びそれを含む計算機システム - Google Patents
デバイスプロキシ装置及びそれを含む計算機システム Download PDFInfo
- Publication number
- JP7093979B2 JP7093979B2 JP2021110834A JP2021110834A JP7093979B2 JP 7093979 B2 JP7093979 B2 JP 7093979B2 JP 2021110834 A JP2021110834 A JP 2021110834A JP 2021110834 A JP2021110834 A JP 2021110834A JP 7093979 B2 JP7093979 B2 JP 7093979B2
- Authority
- JP
- Japan
- Prior art keywords
- proxy
- operating system
- driver
- setting information
- interface
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/48—Indexing scheme relating to G06F9/48
- G06F2209/483—Multiproc
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Stored Programmes (AREA)
Description
前記マイクロプロセッサユニットのスレッドが分離された状態で
第1のプロセッサコアにより第1のオペレーティングシステムが駆動される一方、
第2のプロセッサコアにより前記デバイスインターフェースを制御するためのデバイスドライバが駆動され、
前記デバイス設定情報が前記プロセッサ間通信により共有されつつ、
前記デバイス設定情報に基づいて前記第1のオペレーティングシステムのカーネルに前記設定情報を通知するための通知用ドライバインターフェースがロードされて、前記通知用ドライバに前記シナリオ・シーケンス・ファイルが読み込まれることにより、
前記第2のプロセッサコアにより前記デバイスインターフェースに接続されたデバイスが制御されることを特徴とする。
第1のプロセッサにより第1のオペレーティングシステムが駆動される一方、
第2のプロセッサにより前記デバイスインターフェースを制御するためのデバイスドライバが駆動され、
前記デバイス設定情報がバス接続によりプロセッサ間で共有されつつ、
前記デバイス設定情報に基づいて前記オペレーティングシステムのカーネルに前記設定情報を通知するための通知用ドライバインターフェースがロードされて、前記通知用ドライバに前記シナリオ・シーケンス・ファイルが読み込まれることにより、
前記第2のプロセッサにより前記デバイスインターフェースに接続されたデバイスが制御されることを特徴とする。
前記デバイスプロキシ装置は、
第3のプロセッサ(61)と、デバイスインターフェース(63)とを具備し、
第3のプロセッサにより前記デバイスインターフェースを制御するためのデバイスドライバが駆動され、
前記デバイス設定情報が前記デバイスインターフェースを介して共有されつつ、
前記デバイス設定情報に基づいて前記第1のプロセッサが駆動するオペレーティングシステムのカーネルに前記設定情報を通知するための通知用ドライバインターフェースがロードされて、前記通知用ドライバに前記シナリオ・シーケンス・ファイルが読み込まれることにより、
前記第3のプロセッサにより前記デバイスインターフェースに接続されたデバイスが制御されることを特徴とする。
前記デバイスプロキシ装置自身及びその先に接続される後段のデバイスを動作させるために必要なデバイスドライバとしての機能と、
前記オペレーティングシステムとの間で前記デバイスの動作に必要な情報をやりとりする通信機能とを備え、
前記オペレーティングシステムに依存しない形式で記述されたデバイス設定情報を前記オペレーティングシステム側で保持しつつ、
前記通信機能を介して前記オペレーティングシステム側から前記デバイス設定情報を受け取り、
前記デバイス設定情報に基づいて前記オペレーティングシステムのカーネルに登録された前記デバイス設定情報を通知するための通知用ドライバを介してデバイスドライバが前記オペレーティングシステムのカーネルに登録されることを特徴とする。
1)前記デバイスプロキシ装置にデバイスが接続された際、
2)前記オペレーティングシステム上で動作するアプリケーションプログラムが要求する時間内
3)デバイス側から割り込みイベントその他の処理要求があった場合
図1は、デバイスドライバの基本構成を示す概念図である。デバイスドライバ10は、OSのカーネル11とデバイス12との間に位置するプログラムであり、基本構造は、
(a)ドライバインターフェース10A
(b)デバイスドライバ本体10B
(c)デバイスインターフェース10C
という3つの構造からなっている。
ドライバインターフェースはOSとデバイスドライバの境界に位置するインターフェースであり、基本的にはOSごとに異なるが、その機能はOSによらず同じである。ドライバインターフェースの主な機能(ファンクション)の例を以下に示す。
1.初期化(デバイスを初期化する)
2.オープン(デバイスをオープンする)
3.クローズ(デバイスをクローズする)
4.リード(デバイスからコマンドやデータを読み出す)
5.ライト(デバイスにコマンドやデータを書き込む)
6.I/Oコントロール(標準化されていないデバイスの制御)
デバイスインターフェースは、OSのカーネル側からみたデバイスとのインターフェースであり、物理的インターフェースと論理的インターフェース(ロジカルパケットインターフェース)の2種類がある。デバイスインターフェースは、ハードウェアとの物理的な接続形式(結線上の問題)を扱う部分である。物理的インターフェースでは、登録されるデバイスのレジスタが、カーネルのメモリマップ上に展開される。それは主にメモリ共有と割り込み処理を扱う物理的なバス接続であり、デバイスの接続形式によって、例えば、メモリマップドレジスタ(PCIバス接続)、I2C(Inter-Integrated Circuit)バスインターフェースやSPI(Serial Peripheral Interface)バスインターフェースなどの通信型レジスタなどがある。
本実施形態のデバイスドライバ本体10Bは、主に以下の設定情報が記述されている。
1.デバイスの制御に関する設定情報
2.デバイスに設定する設定情報(デバイスに与えるパラメータ)
・カメラA
レジスタ#1.ズーム
レジスタ#2.フォーカス
・カメラB
レジスタ#1.フォーカス
レジスタ#2.ズーム
図3は、第2の実施形態のデバイスドライバの登録方法を示すフローチャートである。
ステップS1では、第1の実施形態で説明した通知用ドライバをカーネルにロードする。OS起動後にデバイスドライバをロードする方法はOSによって異なっている。例えば、OSがLinux(登録商標)である場合は、”insmod”などのコマンドを用いる。OSがWindows(登録商標)である場合には、「.sys」というドライバ定義ファイルを作成してプラグ・アンド・プレイでOSにデバイスドライバの読み込みを行わせることで必要なデバイス設定情報をレジストリに登録する方法が簡便である。その他のOSでもデバイスドライバをカーネルにロードするコマンドがある場合にはそれを利用する。
次に、デバイスを初期化を開始して(ステップS2)、シナリオ・シーケンス・ファイルを読み込む。ステップS1で通知用ドライバのロードが終了し、デバイスは待機状態にある。ここで、初期化を開始して、シナリオ・シーケンス・ファイルの読込を開始する。
この初期化ステップは、具体的には、例えば、デバイスの設定情報(パラメータ)を初期値に設定することや、デバイスの動作を決定する実行スクリプトに記述された実行コマンドを初期化する、或いは、シナリオ・シーケンス・ファイルを基にデバイスドライバを生成するための準備としてメモリ上に作業領域を確保することなどを含む。
S2-1.レジスタのデフォルト値を設定 <OUT側(デバイス側)>
Out側のセンサ部のレジスタ(例えば、デバイスがカメラモジュールであるとした場合、画面サイズ、フォーカスをどこから開始するか(通常は無限大側)、ホワイトバランス(画調)、露出時間などの各種デバイスパレメータ)を初期値に設定する。なお、カメラモジュールは一例であり、あらゆるデバイスの設定値が初期値に設定されることを意味する。
S2-2.ワークメモリのクリア(ワークメモリをゼロで埋める) <IN側>
以上のステップにより、デバイスドライバをカーネルに登録した際には、常に同じ動作が保証されることになる。
次に、シナリオ・シーケンス・ファイルを基にハンドラを生成するメインスレッドを実行する(ステップS3)。このステップS3は特にリードとライトとI/Oコントロールの機能とシーケンスを生成するステップであり、ユーザー権限で実施することができる。たとえば、ユーザー権限でI/Oコントロールを使ってファイルの書き込み属性を変えることもできる。デバイスドライバはこの時点ではじめて自身の動作が確定する。
次に、生成された上記各ハンドラの内容をデバイスドライバとしてカーネルに登録する(ステップS4)。このデバイスドライバは、OS上で利用できるような状態で登録されていればよく、方式や利用形態などを問わず、OSのカーネルに組み込まれていればよい。
デバイスを取り外すときは終了(Terminate)する。
図4(a)、(b)は、(a)マルチコアプロセッサを含む同一筐体の計算機の基本構成を示す概念図、(b)プロセッサを2基含む同一筐体の計算機の基本構成を示す概念図である。計算機20はマルチコアプロセッサのマイクロプロセッサユニット(MPU)21とメモリ22とデバイスインターフェース23(図1の10C)を具備する。マイクロプロセッサユニット21は、主にCPU(Central Processing Unit)であり、FPGA(field-programmable gate array)やマイコンなど、各種のロジックICを用いてもよい。メモリ22は、RAM(Random Access Memory)などの一時記憶装置を指す。
以下に、デバイス設定情報を記述したシナリオ・シーケンス・ファイルの一例を挙げる。
シナリオ・シーケンス・ファイルはデバイスインターフェースに接続されるデバイスのデバイスパラメータとハンドラを生成するための実行スクリプトを記述したファイルであり、スクリプト形式のファイルであるため、テキストエディタで編集できる程度の非常に小さな(例えば2キロバイト以下のような)ファイルサイズのテキストデータで構成することもできる。実装により、JavaScript(登録商標)やXMLなど、OSや計算機のハードウェア(MPU)に依存しない中間言語の形式で記述してもよい。
(a)デバイスインターフェースに関する情報
(b)デバイスの動作内容に関する情報
(c)接続先デバイスに関する情報
である。これらの情報をシナリオ・シーケンス・ファイルに記述し、通知用ドライバを介してカーネルに登録すればよい。
処理命令定義は、シナリオそのものの記述を行う実行コマンドが記述される。なお、デバイス(ハードウェア)に依存して決まっている割り込み番号は「int1」などの予約語として扱う。
処理命令 : 処理内容
wait intr(n) : 割り込みID n の割り込みを待つ
write $addr : OSから受け取ったデータを$addrに書き込む
write $addr,size : OSから受け取ったデータを$addrから書き込む
write data,$addr : dataを$addrに書き込む
read $addr,size : $addrからsizeだけのデータをOSに返す
copy $add1,$add2,size : $add1から$add2にsizeバイト データを転送する
copy $add1,$add2,size : $add1から$add2にsizeバイト データを転送する
copy #dataset(n) : データセットID n を転送する
res data : dataをOSに返す
and mask,$addr : $addrのデータとmaskの論理積を取り、条件分岐式に反映する
or mask,$addr : $addrのデータとmaskの論理和を取り、条件分岐式に反映する
if else endif : シナリオの条件分岐
while endwhile : while~endwhile間を条件ループする
for n endfor : for~endfor間をn回ループする
exit : インターフェースを終了する
処理命令定義には、その他、DMA転送やmutexなどを含む同期の仕組みなどの処理命令が記述される。
データセット定義は、1つ又は複数のデータを1セットとしたデータセットの定義が記述される。データセットは任意の名前のデータ列を定義することができる。データ列には、レジスタと定義内容、書き込み後のタイミングなどを記述する。データセットは複数パターンを登録しておき、目的や場合に合わせて使い分ける。
b $addr and mask n : データセットbを「$addrの内容にmaskの論理積を1バイト書き込み n ミリ秒待つ」データ列と定義する
w $addr or mask n : データセットwを「$addrの内容にmaskの論理和を2バイト書き込み n ミリ秒待つ」データ列と定義する
l $addr data n : データセットlを「$addrの内容にdataを4バイト書き込み n ミリ秒待つ」データ列と定義する
allocate $buffer 16;
allocate $flag 1;
exit;
[term]
free buffer;
free $flag;
exit;
[open] // 何もしない
exit;
[close] // 何もしない
exit;
[I/O-ctrl] // 何もしない
exit;
[read]
or.w #0001,$flag;
if // バッファにデータが有れば
read $recive_data,16; // データを読み出す
write.w 1,$flag
endif
exit;
[write]
write $send_reg,16; // デバイス読み込み開始
wait int1; // 完了割り込み待ち
exit;
[main_thread] // 受信割り込みを待ってバッファに読み出す
while;
wait int1; // 完了割り込み待ち
read $recive_data,buffer,16; // デバイスからバッファにデータを読み出しておく
write.w 1,$flag;
endwhile;
図7(a)及び図7(b)は、いずれも計算機システムのハードウェア構成を示す概念図である。計算機Aは、OSを駆動し、高い計算処理能力を要求されるプログラムを主に実行するが、デバイスの制御は抽象化されたデバイスBが行うため、割り込み処理などの計算を中断させるイベントをデバイス側から直接受け取ることがなくなる。デバイスプロキシ装置B~Eは、いずれも組み込みオペレーティングシステムが搭載されたデバイスプロキシ装置であり、それぞれのデバイスプロキシ装置に例えば入力デバイス、音響デバイス、ハードディスクなどのストレージデバイス、ネットワークデバイスといった各種のデバイスa、b、c、d、eがそれぞれ接続されている。本実施態様では、デバイスプロキシ装置のプロセッサは、下段ほど低速なものが用いられている。例えば、デバイスプロキシ装置Bには安価な100MHzの16ビットマイコンが用いられており、デバイスプロキシ装置C、D及びEには更に安価20MHzの16ビットマイコンが用いられる。或いは、デバイスプロキシ装置Bのプロセッサは、計算機Aがマルチコアのマイクロプロセッサユニットを持つ場合にはその一つのプロセッサコアとしてもよい。
10A ドライバインターフェース
10B デバイスドライバ本体
10C デバイスインターフェース
11 カーネル
12 デバイス
21 マルチコアのマイクロプロセッサユニット(MPU)
22 メモリ
23 デバイスインターフェース(物理的インターフェース及び/又は論理的インターフェース)
31、61 プロセッサ(シングルコア又はマルチコア)
62 メモリ
63 デバイスインターフェース
A 計算機
B,C,D,E デバイスプロキシ装置
a,b,c,d,e デバイス
Claims (10)
- 計算機上で動作するオペレーティングシステムのカーネルとデバイスの間に介在して前記デバイスを代理するデバイスプロキシ装置であって、
前記デバイスプロキシ装置自身及びその先に接続される後段のデバイスを動作させるために必要なデバイスドライバとしての機能と、
前記オペレーティングシステムとの間で前記デバイスの動作に必要な情報をやりとりする通信機能を提供するものであり、
前記オペレーティングシステムに依存しない形式で記述されたデバイス設定情報を前記オペレーティングシステム側で保持しつつ、
前記通信機能を介して前記オペレーティングシステム側から前記デバイス設定情報を受け取り、
前記デバイス設定情報に基づいて前記オペレーティングシステムのカーネルに登録された前記デバイス設定情報を通知するための通知用ドライバを介してデバイスドライバが前記オペレーティングシステムのカーネルに登録されることを特徴とするデバイスプロキシ装置。 - 前記デバイス設定情報は、デバイスにのみ依存するパラメータ及び前記オペレーティングシステムに依存しないコマンドのみを含み、処理の手順を示すシナリオ・シーケンス・ファイルで記述されることを特徴とする請求項1記載のデバイスプロキシ装置。
- 前記デバイス設定情報を受け取るタイミングは、下記1)~3)のいずれかであることを特徴とする請求項1又は請求項2記載のデバイスプロキシ装置。
1)前記デバイスプロキシ装置にデバイスが接続された際、
2)前記オペレーティングシステム上で動作するアプリケーションプログラムが要求する時間内
3)デバイス側から割り込みイベントその他の処理要求があった場合 - オペレーティングシステムを実行する計算機と請求項1乃至請求項3のいずれか1項記載のデバイスプロキシ装置とが前記通信機能を介して接続された計算機システム。
- 前記通信機能はプロセッサ間通信又はデバイスインターフェースを介した通信により実現されることを特徴とする請求項4記載の計算機システム。
- 請求項1乃至請求項3のいずれか1項記載のデバイスプロキシ装置に、さらに別のデバイスプロキシ装置が多段に直列及び/又は並列に接続された計算機システムであって、
それぞれのデバイスプロキシ装置及びそれらに接続される1つ又は複数のデバイスのデバイス設定情報が、いずれも前記計算機のオペレーティンスシステムに依存しない形式で記述されていると共に、前記計算期内又は前記いずれかのデバイスプロキシ装置内に保持されていることを特徴とする請求項4又は請求項5記載の計算機システム。 - 前記デバイスプロキシ装置の少なくとも1つは、オペレーティンスシステムを有しないことを特徴とする請求項6記載の計算機システム。
- 複数のデバイスプロキシ装置が多段に直列接続された構成を具備する計算機システムにおいて、
下段側のデバイスプロキシ装置ほど低速なプロセッサが用いられていることを特徴とする請求項6記載の計算機システム。 - マルチコアプロセッサユニットを搭載する計算機システムにおいて、少なくとも一つのプロセッサユニットが請求項1記載のデバイスプロキシ装置を動作させるために割り当てられる一方、
その他のプロセッサユニットがオペレーティンスシステムを実行するために割り当てられることを特徴とする請求項4乃至8のいずれか1項記載の計算機システム。 - 前記デバイスプロキシ装置に接続されるデバイスから前記オペレーティングシステムにロジカルパケットが送信される際には、
前記デバイスプロキシ装置が、サイズ、制御対象のデバイス名を示すシンボル、可変長その他必要な情報をロジカルパケットのヘッダーに記述して前記オペレーティングシステム側にデータを送信することを特徴とする請求項6記載の計算機システム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014191563 | 2014-09-19 | ||
JP2014191563 | 2014-09-19 | ||
JP2016141471A JP7089840B2 (ja) | 2014-09-19 | 2016-07-19 | デバイスプロキシ装置及びそれを含む計算機システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016141471A Division JP7089840B2 (ja) | 2014-09-19 | 2016-07-19 | デバイスプロキシ装置及びそれを含む計算機システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021157850A JP2021157850A (ja) | 2021-10-07 |
JP7093979B2 true JP7093979B2 (ja) | 2022-07-01 |
Family
ID=55533081
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016514189A Active JP5997868B2 (ja) | 2014-09-19 | 2015-08-31 | デバイスプロキシ装置及びその制御方法 |
JP2016141471A Active JP7089840B2 (ja) | 2014-09-19 | 2016-07-19 | デバイスプロキシ装置及びそれを含む計算機システム |
JP2021110834A Active JP7093979B2 (ja) | 2014-09-19 | 2021-07-02 | デバイスプロキシ装置及びそれを含む計算機システム |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016514189A Active JP5997868B2 (ja) | 2014-09-19 | 2015-08-31 | デバイスプロキシ装置及びその制御方法 |
JP2016141471A Active JP7089840B2 (ja) | 2014-09-19 | 2016-07-19 | デバイスプロキシ装置及びそれを含む計算機システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US11573913B2 (ja) |
JP (3) | JP5997868B2 (ja) |
CN (1) | CN106922189B (ja) |
WO (1) | WO2016043041A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7259348B2 (ja) * | 2018-11-08 | 2023-04-18 | 株式会社リコー | 情報処理装置、情報処理装置の起動方法、及び、情報処理装置の起動プログラム |
CN113094111B (zh) * | 2021-04-16 | 2024-01-09 | 三星(中国)半导体有限公司 | 设备以及设备的启动方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005622A (ja) | 1999-05-26 | 2001-01-12 | Xerox Corp | プリントレットシステム及び方法 |
JP2006133825A (ja) | 2004-11-02 | 2006-05-25 | Seiko Epson Corp | インストールシステム、プッシュインストール装置、インストール実行装置、インストール方法およびインストールプログラム |
JP2007265064A (ja) | 2006-03-29 | 2007-10-11 | Sharp Corp | 記憶装置、デバイス制御装置、デバイス制御プログラム、放送受像機及びデバイス制御方法 |
JP2008192128A (ja) | 2007-01-11 | 2008-08-21 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
WO2009113381A1 (ja) | 2008-03-11 | 2009-09-17 | 日本電気株式会社 | マルチプロセッサシステム、マルチプロセッサシステムのos間デバイス共有方法 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5265252A (en) * | 1991-03-26 | 1993-11-23 | International Business Machines Corporation | Device driver system having generic operating system interface |
JPH1011384A (ja) | 1996-06-24 | 1998-01-16 | Sumitomo Metal Ind Ltd | 入出力標準化装置 |
US6772419B1 (en) * | 1997-09-12 | 2004-08-03 | Hitachi, Ltd. | Multi OS configuration system having an interrupt process program executes independently of operation of the multi OS |
US6141705A (en) | 1998-06-12 | 2000-10-31 | Microsoft Corporation | System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed |
KR100464349B1 (ko) | 2002-08-08 | 2005-01-03 | 삼성전자주식회사 | 디바이스 드라이버 제어 공통화 방법 |
US8640194B2 (en) * | 2004-08-25 | 2014-01-28 | Nec Corporation | Information communication device and program execution environment control method |
JP2007257415A (ja) | 2006-03-24 | 2007-10-04 | Fujitsu Ltd | マルチプロセッサシステム |
US7877760B2 (en) * | 2006-09-29 | 2011-01-25 | Microsoft Corporation | Distributed hardware state management in virtual machines |
US8645668B2 (en) | 2007-01-11 | 2014-02-04 | Sony Corporation | Information processing apparatus, information processing method and computer program |
TW200933487A (en) * | 2008-01-30 | 2009-08-01 | Ralink Technology Corp | External device auto-run a driver installation and method thereof |
JP2009252194A (ja) * | 2008-04-11 | 2009-10-29 | Nec Electronics Corp | データ処理装置、ハードウェアアクセス方法、及びハードウェアアクセスプログラム |
WO2010073316A1 (ja) * | 2008-12-24 | 2010-07-01 | 富士通株式会社 | 構成管理システム、プロキシシステム、構成管理方法 |
JP5392819B2 (ja) | 2009-02-03 | 2014-01-22 | Necシステムテクノロジー株式会社 | ファイル管理装置およびファイル管理方法 |
JP2010181380A (ja) | 2009-02-09 | 2010-08-19 | Tamagawa Seiki Co Ltd | 切換弁を有する分注機構 |
US8225015B2 (en) * | 2009-06-15 | 2012-07-17 | General Electric Company | Systems, methods, and apparatus for medical device interface connectivity |
CN102073493B (zh) * | 2010-12-17 | 2013-08-28 | 曙光信息产业股份有限公司 | 一种多队列的高速存储设备驱动程序设计方法 |
JP2012155515A (ja) * | 2011-01-26 | 2012-08-16 | Renesas Electronics Corp | ソースデバイスドライバ及び実行モジュールの作成方法 |
US9021475B2 (en) * | 2011-05-04 | 2015-04-28 | Citrix Systems, Inc. | Systems and methods for SR-IOV pass-thru via an intermediary device |
US9195518B1 (en) * | 2012-03-27 | 2015-11-24 | Vmware, Inc. | System and method for communicating production virtual machine access events to a service appliance in a virtualized environment |
US9003432B1 (en) * | 2012-06-28 | 2015-04-07 | Emc Corporation | Efficient management of kernel driver performance data |
-
2015
- 2015-08-31 WO PCT/JP2015/074781 patent/WO2016043041A1/ja active Application Filing
- 2015-08-31 JP JP2016514189A patent/JP5997868B2/ja active Active
- 2015-08-31 US US15/512,808 patent/US11573913B2/en active Active
- 2015-08-31 CN CN201580050490.9A patent/CN106922189B/zh active Active
-
2016
- 2016-07-19 JP JP2016141471A patent/JP7089840B2/ja active Active
-
2021
- 2021-07-02 JP JP2021110834A patent/JP7093979B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001005622A (ja) | 1999-05-26 | 2001-01-12 | Xerox Corp | プリントレットシステム及び方法 |
JP2006133825A (ja) | 2004-11-02 | 2006-05-25 | Seiko Epson Corp | インストールシステム、プッシュインストール装置、インストール実行装置、インストール方法およびインストールプログラム |
JP2007265064A (ja) | 2006-03-29 | 2007-10-11 | Sharp Corp | 記憶装置、デバイス制御装置、デバイス制御プログラム、放送受像機及びデバイス制御方法 |
JP2008192128A (ja) | 2007-01-11 | 2008-08-21 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
WO2009113381A1 (ja) | 2008-03-11 | 2009-09-17 | 日本電気株式会社 | マルチプロセッサシステム、マルチプロセッサシステムのos間デバイス共有方法 |
Also Published As
Publication number | Publication date |
---|---|
JP7089840B2 (ja) | 2022-06-23 |
JP5997868B2 (ja) | 2016-09-28 |
US11573913B2 (en) | 2023-02-07 |
CN106922189B (zh) | 2020-02-21 |
US20170351623A1 (en) | 2017-12-07 |
JP2021157850A (ja) | 2021-10-07 |
JP2016197446A (ja) | 2016-11-24 |
CN106922189A (zh) | 2017-07-04 |
JPWO2016043041A1 (ja) | 2017-04-27 |
WO2016043041A1 (ja) | 2016-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5997867B2 (ja) | デバイスドライバ登録装置とこれを用いたデバイスドライバの登録方法 | |
US9329911B2 (en) | Driver initialization for a process in user mode | |
JP7093979B2 (ja) | デバイスプロキシ装置及びそれを含む計算機システム | |
JP2004005637A (ja) | インシステムプログラミングのための方法および構成 | |
JP6413813B2 (ja) | 電子機器、制御装置及びプログラム | |
EP2711845A2 (en) | PCI express switch with logical device capability | |
JP2006155624A (ja) | 仮想化ロジック | |
US20180349297A1 (en) | Virtual host controller for a data processing system | |
US20140351833A1 (en) | Multi-computing environment operating on a single native operating system | |
EP2370897A2 (en) | Composite device emulation | |
US10761868B2 (en) | Device-agnostic driver for virtual machines | |
US11366690B2 (en) | Scheduling commands in a virtual computing environment | |
US8402260B2 (en) | Data processing apparatus having address conversion circuit | |
US10664418B2 (en) | Peripheral device controlling device, operation method thereof, and operation method of peripheral device controlling device driver | |
KR102276696B1 (ko) | 집적 회로 무선장치 | |
CN113849277B (zh) | 网卡测试方法、装置、计算机设备及计算机可读存储介质 | |
US10803007B1 (en) | Reconfigurable instruction | |
US20160034291A1 (en) | System on a chip and method for a controller supported virtual machine monitor | |
TWI790615B (zh) | 虛擬機的裝置直通方法及其伺服器 | |
Gediya et al. | Open-Source Software | |
Vu et al. | On-demand reconfiguration for coprocessors in mixed criticality multicore systems | |
Sinkkonen | Asymmetric multiprocessing of Linux and hard real-time systems | |
JP6138482B2 (ja) | 組み込みシステム | |
Zhou | A lightweight DSP framework for OMAP3530-driven embedded devices | |
JP2014063510A (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210730 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210730 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220418 |
|
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: 20220601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220613 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7093979 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |