JP2007080287A - コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ - Google Patents
コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ Download PDFInfo
- Publication number
- JP2007080287A JP2007080287A JP2006306991A JP2006306991A JP2007080287A JP 2007080287 A JP2007080287 A JP 2007080287A JP 2006306991 A JP2006306991 A JP 2006306991A JP 2006306991 A JP2006306991 A JP 2006306991A JP 2007080287 A JP2007080287 A JP 2007080287A
- Authority
- JP
- Japan
- Prior art keywords
- filter
- mode
- kernel
- kernel mode
- user mode
- 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.)
- Granted
Links
Images
Classifications
-
- 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/544—Buffers; Shared memory; Pipes
-
- 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/468—Specific access rights for resources, e.g. using capability register
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
Abstract
【解決手段】カーネル・モード・ドライバと通信したいまたはこれを操作したいユーザ・モード・プロセスは対応するユーザ・モード・プロキシと通信するか、または、これを操作することによって行なうことができる。ユーザ・モードへ移行することなく、データがカーネル・モード・ドライバからカーネル・モード・ドライバへ渡されるようなカーネルでの処理ストリームを作成するので、カーネル・モード・ドライバを相互接続できる。このようなカーネル・モード・ドライバのユーザ・モード・プロキシによって、ユーザ・モード・プロセスは、慣れているユーザ・モードプロトコルを用いて、これらのカーネル・モードを操作できるようになる。
【選択図】図3
Description
本明細書で用いている術語「ユーザ・モード」は、ユーザによって書かれた大半のプログラムが動作するオペレーティング・システムにおける動作レベルを表わしている。ユーザ・モード動作レベルは、通常もっとも安全なレベルであり、ひとつのアプリケーション・プログラムまたはプロセスが別のアプリケーション・プログラムまたはプロセスと干渉しないように相当量のオーバヘッドを有している。更に、システム資源へのアクセスは特定インタフェースを経由して高度に制御されており、動作プライオリティは一般に、最低か、そうでなければもっとも低いもののひとつである。
以下の本発明では、これを実施するために用いられる1つまたは2つ以上の実施例の構造、または処理のどちらかを説明するための図面を用いることによって説明している。このように図面を用いて本発明を示すことは、本発明の範囲を制限するものと考えるべきではない。本発明はカーネル・モード動作のユーザ・モード・プロキシのための方法およびシステムの両方を意図している。本発明の実施例は、本発明を実現するためにソフトウェアを用いる汎用コンピュータを含み得る。特殊用途または専用コンピュータも本発明を実施するために用いることができ、本発明の範囲に含まれるべきものである。
背景の部分ですでに説明したように、図1は、従来技術の原理およびアーキテクチャにしたがって構成され実現された、オーディオ・データのストリームを処理するのに適したフィルタ・グラフを表わしている。簡単に参照すると、リーダ24、デコンプレッサ28、効果コンポーネント30、サウンド・レンダリング・ブロック36は、図示したように、フィルタ・グラフで相互に接続された一連のユーザ・モード・フィルタを形成している。制御エージェント26はフィルタ・グラフの動作を調整し制御する。オーディオ・データはリーダ24の制御下でディスク20からディスク・ドライバ22経由で取り出される。リーダ24はデータをデコンプレッサ28に渡し、デコンプレッサ28はデータを展開してから効果コンポーネント30に渡す。効果コンポーネント30は効果フィルタ32を使用し、効果フィルタ32は効果プロセッサ34を使用してデータを処理し何らかの効果を実現することができる。処理後、効果コンポーネント30はデータをレンダリングするためにサウンド・レンダリング・ブロック36へ渡す。サウンド・レンダリング・ブロック36はデータをサウンド・レンダリング・ドライバ38へ渡し、ここでデータをサウンド・カード40へ転送してレンダリングし、スピーカ42から再生する。
図3を次に参照すると、本発明の原理が組み込まれた図2のフィルタ・グラフを示す図面が示してある。図3に図示してあるように、本発明によって実現されたフィルタ・グラフと図2に図示したように実現されたフィルタ・グラフの間の唯一の相違点は、カーネル・モード・フィルタの各々に対してのプロキシ・フィルタの追加である。図3において、これらのプロキシ・フィルタは、リーダ・ドライバ50のためのプロキシ(代理)として機能するリーダ・プロキシ・フィルタ64、デコンプレッサ52のためのプロキシとして機能するデコンプレッサ・プロキシ・フィルタ66、効果フィルタ54のためのプロキシとして機能する効果フィルタ・プロキシ68、サウンド・レンダリング・ドライバ58のためのプロキシとして機能するサウンド・レンダリング・プロキシ70によって図示してある。つまり、ひとつの側面において、本発明の特徴は、カーネル・モード・フィルタにユーザ・モード・プロキシ・フィルタを提供することである。したがって、本発明の幾つかの実施例は、カーネル・モード・フィルタの代理に適したユーザ・モード・プロキシ・フィルタを形成するための手段を含む。図3において、リーダ・プロキシ・フィルタ64、デコンプレッサ・プロキシ・フィルタ66、効果フィルタ・プロキシ68、サウンド・レンダリング・プロキシ70は全てこうした手段の例である。
22,48,214,262 ディスク・ドライバ
24,190,242 リーダ
26,44 制御エージェント
28,52,182,192,230,244 デコンプレッサ
30 効果コンポーネント
32,54,196,232 効果フィルタ
34,56,208,236 効果プロセッサ
36,58 サウンド・レンダリング
40,60,210,238 サウンド・カード
42,62,212,240 スピーカ
50,180,228 リーダ・ドライバ
64 リーダ・プロキシ
66,194,246 デコンプレッサ・プロキシ
68,198 効果フィルタ・プロキシ
70 サウンド・レンダリング・プロキシ
74,78,98,120,134,156 カーネル・モード・フィルタ
76,80,118,136 プロキシ・フィルタ
90 汎用プロキシ・フィルタ
92,164 レジストリ
94,166 問合せ
96 カーネル・フィルタ/拡張/他の情報
101 フィルタ設定
104 拡張
108 フィルタ・ピン
110 制御
116 インタフェース
124,128 制御/拡張
142 プロパティ・フレーム
146 ホルダ
148 プロパティ・ページ
158 汎用プロキシ・フィルタ
160 包含フィルタ
168 カーネル・フィルタ/他の情報
170 ピン
174 包含/他の情報
184 変換フィルタ
186 照明フィルタ
188,256,258 ビデオ・レンダラ
198,234 サウンド・レンダラ
200 サウンド・レンダラ・プロキシ
202 変換プロセッサ
204 照明プロセッサ
206,260 ビデオ・カード
220,266,268 クロック
224 プロキシ・クロック
248 変換
250 変換プロキシ
252 照明
254 照明プロキシ
260 ビデオ・カード
270 フォワーダ
Claims (9)
- カーネル・モードにおけるデータ・ストリームの処理をユーザ・モードにおけるデータ・ストリームの処理と同期させる方法であって、
複数のカーネル・モード・フィルタを互いに接続して、前記複数のカーネル・モード・フィルタのひとつでデータをまず処理してから、前記複数のカーネル・モード・フィルタのもうひとつへと処理したデータを渡すことにより、データを処理するのに適したカーネル・モード処理グラフを形成し、前記複数の各カーネル・モード・フィルタによりデータが順次処理されるようにするステップであって、ユーザ・モードで動作し、前記複数のカーネル・モード・フィルタの少なくとも2つに対応するユーザ・モード・プロキシ・フィルタの、対応するユーザ・モード・接続点を相互接続するクライアントプロセスに応答して、前記複数のカーネル・モード・フィルタの前記少なくとも2つが有する接続点を互いに接続するステップと、
前記カーネル・モード処理グラフにおいて、前記複数のカーネル・モード・フィルタが時間を識別できるようにするカーネル・モード・クロックを作成するステップと、
複数のユーザ・モードフィルタを互いに接続して、前記複数のユーザ・モードフィルタのひとつでまずデータを処理してから、前記複数のユーザ・モードフィルタのもうひとつへ処理したデータを渡すことにより、データを処理するのに適したユーザ・モード処理グラフを形成して、前記ユーザ・モード処理グラフにおいて前記複数の各ユーザ・モードフィルタによりデータが処理されるようにするステップと、
前記ユーザ・モード処理グラフで前記複数のユーザ・モード・フィルタが時間を識別できるようにするユーザ・モード・クロックを作成するステップと、
前記ユーザ・モード・クロックまたは前記カーネル・モード・クロックのどちらか一方をマスタ・クロックとするために選択し、前記ユーザ・モード・クロックまたは前記カーネル・モード・クロックのどちらかをスレーブ・クロックとするために選択し、次に前記スレーブ・クロックを前記マスタ・クロックに同期させることで、前記カーネル・モード処理グラフと前記ユーザ・モード処理グラフが同期するようにするステップとを備えることを特徴とする方法。 - 前記ユーザ・モード・クロックがマスタ・クロックとして選択されたときにフォワーダを作成し、前記フォワーダは前記マスタ・クロックからの現在時刻を取得して前記現在時刻を前記スレーブ・クロックへ転送するように動作し、前記カーネル・モード・クロックが前記フォワーダから前記現在時刻を取得できるようにするステップを更に備えることを特徴とする請求項1に記載のカーネル・モードにおけるデータ・ストリームの処理をユーザ・モードにおけるデータ・ストリームの処理と同期させる方法。
- 前記カーネル・モード・クロックがマスタ・クロックとして選択された場合に前記カーネル・モード・クロックを前記ユーザ・モード・クロックで代理するステップを更に備え、前記ユーザ・モード・クロックは前記カーネル・モード・クロックから現在時刻を取得することを特徴とする請求項1に記載のカーネル・モードにおけるデータ・ストリームの処理をユーザ・モードにおけるデータ・ストリームの処理と同期させる方法。
- 前記カーネル・モード処理グラフを用いて前記データ・ストリームを処理するステップをさらに備えることを特徴とする請求項1に記載の方法。
- 前記ユーザ・モード処理グラフを用いて前記データ・ストリームを処理するステップをさらに備えることを特徴とする請求項1に記載の方法。
- 前記ユーザ・モード処理グラフに含まれる、前記ユーザ・モード・フィルタのサブセットを用いて前記データ・ストリームを処理するステップと、
前記ユーザ・モード・フィルタのサブセットの1つを用いて、前記ユーザ・モードと前記カーネル・モードとを分離するセキュリティ境界を横断して前記データ・ストリームを、前記カーネル・モード処理グラフの前記カーネル・モード・フィルタのサブセットに含まれる前記カーネル・モード・フィルタの1つに送信するステップと、
前記カーネル・モード処理グラフの前記カーネル・モード・フィルタのサブセットを用いて前記データ・ストリームを処理するステップとをさらに備えることを特徴とする請求項1に記載の方法。 - ユーザ・モード・プロキシ・フィルタを用いて、カーネル・モードフィルタグラフにおける2つの対応するカーネル・モード・フィルタを互いに接続する方法であり、前記カーネル・モード・フィルタの各々は、ユーザ・モードに渡すことなく前記接続されたカーネル・モード・フィルタの間でデータが直接流れるように、データを処理する方法であって、
第1のユーザ・モード・プロキシ・フィルタと第1のカーネル・モード・フィルタの間の接続を作成して、前記第1のユーザ・モード・プロキシ・フィルタを操作するクライアントプロセスによって、前記カーネル・モード・フィルタグラフの前記第1のカーネル・モード・フィルタの構成を形成できるようにするステップと、
第2のユーザ・モード・プロキシ・フィルタと第2のカーネル・モード・フィルタの間の接続を作成して、前記第2のユーザ・モード・プロキシ・フィルタを操作する前記クライアントプロセスによって、前記カーネル・モード・フィルタグラフの前記第2のカーネル・モード・フィルタの構成を形成できるようにするステップと、
前記クライアントプロセスが、ユーザ・モードの相互接続を作成するために、定義されている手順を用いて、前記第1のユーザ・モード・プロキシ・フィルタと前記第2のユーザ・モード・プロキシ・フィルタとを相互接続するステップであって、前記ユーザ・モードの相互接続は、前記ユーザ・モードの相互接続が前記クライアントプロセスの観点からは実際の相互接続に見えるが、前記カーネル・モード・フィルタグラフによって処理されるデータは前記ユーザ・モードの相互接続を介して流れず、
前記第1のユーザ・モード・プロキシ・フィルタおよび前記第2のユーザ・モード・プロキシ・フィルタが、前記カーネル・モード・フィルタグラフの少なくとも一部を表す、対応するカーネル・モードの相互接続を設定することによって、前記ユーザ・モードの相互接続に応答するステップであって、前記カーネル・モードの相互接続を、前記第1のカーネル・モード・フィルタと前記第2のカーネル・モード・フィルタとの間で形成して、前記第1のユーザ・モード・プロキシ・フィルタと前記第2のユーザ・モード・プロキシ・フィルタとの間を通らずに、前記第1のカーネル・モード・フィルタと前記第2のカーネル・モード・フィルタの間でデータが直接流れるようにすることを特徴とする方法。 - ユーザ・モード・プロキシ・フィルタを用いて、カーネル・モードフィルタグラフにおける2つの対応するカーネル・モード・フィルタを互いに接続する方法であり、前記カーネル・モード・フィルタの各々は、ユーザ・モードに渡すことなく前記接続されたカーネル・モード・フィルタの間でデータが直接流れるように、データを処理する方法であって、
第1のユーザ・モード・プロキシ・フィルタのインスタンスを作成し、前記第1のユーザ・モード・プロキシ・フィルタと第1のカーネル・モード・フィルタとの間の接続を形成して、前記第1のユーザ・モード・プロキシ・フィルタを操作するクライアントプロセスによって、前記カーネル・モード・フィルタ・グラフにおける前記第1のカーネル・モード・フィルタの構成を形成できるようにするステップであって、前記第1のカーネル・モード・フィルタは、前記第1のカーネル・モード・フィルタを他のカーネル・モード・フィルタに接続可能な、少なくとも1つの第1の接続点を有し、前記第1のユーザ・モード・プロキシ・フィルタは、前記第1のカーネル・モード・フィルタの前記少なくとも1つの第1の接続点に対応する、少なくとも1つの第1のユーザ・モード・接続点を有し、
第2のユーザ・モード・プロキシ・フィルタのインスタンスを作成し、前記第2のユーザ・モード・プロキシ・フィルタと第2のカーネル・モード・フィルタとの間の接続を形成して、前記第2のユーザ・モード・プロキシ・フィルタを操作する前記クライアントプロセスによって、前記カーネル・モード・フィルタ・グラフにおける前記第2のカーネル・モード・フィルタの構成を形成できるようにするステップであって、前記第2のカーネル・モード・フィルタは、前記第2のカーネル・モード・フィルタを他のカーネル・モード・フィルタに接続可能な、少なくとも1つの第2の接続点を有し、前記第2のユーザ・モード・プロキシ・フィルタは、前記第2のカーネル・モード・フィルタの前記少なくとも1つの第2の接続点に対応する、少なくとも1つの第2のユーザ・モード・接続点を有し、
前記クライアントプロセスが、ユーザ・モードの相互接続を作成するために、定義されている手順を用いて、前記第1のユーザ・モード・プロキシ・フィルタの前記少なくとも1つの第1のユーザ・モード・接続点と、前記第2のユーザ・モード・プロキシ・フィルタの前記少なくとも1つの第2のユーザ・モード・接続点とを相互接続するステップであって、前記ユーザ・モードの相互接続は、前記ユーザ・モードの相互接続が前記クライアントプロセスの観点からは実際の相互接続に見えるが、前記カーネル・モード・フィルタグラフによって処理されるデータは前記ユーザ・モードの相互接続を介して流れず、
前記第1のユーザ・モード・プロキシ・フィルタおよび前記第2のユーザ・モード・プロキシ・フィルタが、前記カーネル・モード・フィルタグラフの少なくとも一部を表す、対応するカーネル・モードの相互接続を設定することによって、前記ユーザ・モードの相互接続に応答するステップであって、前記カーネル・モードの相互接続を、前記第1のカーネル・モード・フィルタの前記少なくとも1つの第1の接続点と、前記第2のカーネル・モード・フィルタの前記少なくとも1つの第2の接続点との間で形成して、前記第1のユーザ・モード・プロキシ・フィルタと前記第2のユーザ・モード・プロキシ・フィルタとの間を通らずに、前記第1のカーネル・モード・フィルタの前記少なくとも1つの第1の接続点と、前記第2のカーネル・モード・フィルタの前記少なくとも1つの第2の接続点との間でデータが直接流れるようにすることを特徴とする方法。 - コンピュータに請求項1乃至8のいずれかに記載の方法を実現させるためのプログラムを記録したことを特徴とするコンピュータで読取可能な媒体。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/825,855 US6212574B1 (en) | 1997-04-04 | 1997-04-04 | User mode proxy of kernel mode operations in a computer operating system |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18062397A Division JP4508298B2 (ja) | 1997-04-04 | 1997-06-20 | コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007080287A true JP2007080287A (ja) | 2007-03-29 |
JP4313815B2 JP4313815B2 (ja) | 2009-08-12 |
Family
ID=25245069
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18062397A Expired - Fee Related JP4508298B2 (ja) | 1997-04-04 | 1997-06-20 | コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ |
JP2006306991A Expired - Fee Related JP4313815B2 (ja) | 1997-04-04 | 2006-11-13 | コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP18062397A Expired - Fee Related JP4508298B2 (ja) | 1997-04-04 | 1997-06-20 | コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ |
Country Status (4)
Country | Link |
---|---|
US (1) | US6212574B1 (ja) |
EP (1) | EP0871115A3 (ja) |
JP (2) | JP4508298B2 (ja) |
CA (1) | CA2208295C (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100916301B1 (ko) * | 2007-10-01 | 2009-09-10 | 한국전자통신연구원 | 커널 api 대화식 실행 장치 및 방법 |
Families Citing this family (96)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11330046A (ja) | 1998-05-08 | 1999-11-30 | Mitsubishi Electric Corp | 半導体装置の製造方法及び半導体装置 |
KR100270916B1 (ko) * | 1998-10-17 | 2000-11-01 | 서평원 | 망 관리 시스템 및 클래스 동적 추가 방법 |
US6385661B1 (en) * | 1998-10-19 | 2002-05-07 | Recursion Software, Inc. | System and method for dynamic generation of remote proxies |
US6871350B2 (en) * | 1998-12-15 | 2005-03-22 | Microsoft Corporation | User mode device driver interface for translating source code from the user mode device driver to be executed in the kernel mode or user mode |
US6711624B1 (en) * | 1999-01-13 | 2004-03-23 | Prodex Technologies | Process of dynamically loading driver interface modules for exchanging data between disparate data hosts |
US6748440B1 (en) * | 1999-05-12 | 2004-06-08 | Microsoft Corporation | Flow of streaming data through multiple processing modules |
US7007096B1 (en) | 1999-05-12 | 2006-02-28 | Microsoft Corporation | Efficient splitting and mixing of streaming-data frames for processing through multiple processing modules |
US6658477B1 (en) * | 1999-05-12 | 2003-12-02 | Microsoft Corporation | Improving the control of streaming data through multiple processing modules |
US6438750B1 (en) * | 1999-06-18 | 2002-08-20 | Phoenix Technologies Ltd. | Determining loading time of an operating system |
US6598169B1 (en) * | 1999-07-26 | 2003-07-22 | Microsoft Corporation | System and method for accessing information made available by a kernel mode driver |
US6513157B1 (en) * | 1999-11-30 | 2003-01-28 | Recursion Software, Inc. | System and method for dynamically aggregating objects |
US6678743B1 (en) | 1999-11-30 | 2004-01-13 | Recursion Software, Inc. | Method for moving objects in a distributed computing environment |
US6947965B2 (en) | 1999-11-30 | 2005-09-20 | Recursion Software, Inc. | System and method for communications in a distributed computing environment |
CA2397740C (en) | 2000-01-14 | 2015-06-30 | Catavault | Method and system for secure registration, storage, management and linkage of personal authentication credentials data over a network |
US6754709B1 (en) * | 2000-03-29 | 2004-06-22 | Microsoft Corporation | Application programming interface and generalized network address translator for intelligent transparent application gateway processes |
US6646195B1 (en) * | 2000-04-12 | 2003-11-11 | Microsoft Corporation | Kernel-mode audio processing modules |
US6961631B1 (en) * | 2000-04-12 | 2005-11-01 | Microsoft Corporation | Extensible kernel-mode audio processing architecture |
US7043697B1 (en) * | 2000-05-15 | 2006-05-09 | Intel Corporation | Virtual display driver |
US7134141B2 (en) * | 2000-06-12 | 2006-11-07 | Hewlett-Packard Development Company, L.P. | System and method for host and network based intrusion detection and response |
US7343419B1 (en) * | 2000-10-05 | 2008-03-11 | Aol Llc | Rerouting media to selected media applications |
EP1329097A1 (en) * | 2000-10-17 | 2003-07-23 | Koninklijke Philips Electronics N.V. | Method of controlling an arrangement of hardware components |
US6774919B2 (en) * | 2000-12-06 | 2004-08-10 | Microsoft Corporation | Interface and related methods for reducing source accesses in a development system |
US6954581B2 (en) | 2000-12-06 | 2005-10-11 | Microsoft Corporation | Methods and systems for managing multiple inputs and methods and systems for processing media content |
US7114161B2 (en) * | 2000-12-06 | 2006-09-26 | Microsoft Corporation | System and related methods for reducing memory requirements of a media processing system |
US6912717B2 (en) | 2000-12-06 | 2005-06-28 | Microsoft Corporation | Methods and systems for implementing dynamic properties on objects that support only static properties |
US6959438B2 (en) | 2000-12-06 | 2005-10-25 | Microsoft Corporation | Interface and related methods for dynamically generating a filter graph in a development system |
US7114162B2 (en) | 2000-12-06 | 2006-09-26 | Microsoft Corporation | System and methods for generating and managing filter strings in a filter graph |
US6834390B2 (en) * | 2000-12-06 | 2004-12-21 | Microsoft Corporation | System and related interfaces supporting the processing of media content |
US6983466B2 (en) * | 2000-12-06 | 2006-01-03 | Microsoft Corporation | Multimedia project processing systems and multimedia project processing matrix systems |
US7287226B2 (en) | 2000-12-06 | 2007-10-23 | Microsoft Corporation | Methods and systems for effecting video transitions represented by bitmaps |
US6961943B2 (en) * | 2000-12-06 | 2005-11-01 | Microsoft Corporation | Multimedia processing system parsing multimedia content from a single source to minimize instances of source files |
US7447754B2 (en) * | 2000-12-06 | 2008-11-04 | Microsoft Corporation | Methods and systems for processing multi-media editing projects |
US6882891B2 (en) | 2000-12-06 | 2005-04-19 | Microsoft Corporation | Methods and systems for mixing digital audio signals |
US6768499B2 (en) * | 2000-12-06 | 2004-07-27 | Microsoft Corporation | Methods and systems for processing media content |
US7103677B2 (en) * | 2000-12-06 | 2006-09-05 | Microsoft Corporation | Methods and systems for efficiently processing compressed and uncompressed media content |
US6829687B2 (en) * | 2000-12-28 | 2004-12-07 | International Business Machines Corporation | Volume data net backup |
EP1282037A1 (fr) * | 2001-08-03 | 2003-02-05 | Drecq Daniel Technologies D 2 T | Programme informatique de pilotage d'interface en temps réel |
US7571445B2 (en) * | 2001-11-29 | 2009-08-04 | Dell Products L.P. | System and method for dynamic device driver support in an open source operating system |
US7600222B2 (en) * | 2002-01-04 | 2009-10-06 | Microsoft Corporation | Systems and methods for managing drivers in a computing system |
US7234144B2 (en) * | 2002-01-04 | 2007-06-19 | Microsoft Corporation | Methods and system for managing computational resources of a coprocessor in a computing system |
CN100541471C (zh) * | 2002-02-15 | 2009-09-16 | 科学园株式会社 | 使用基于网络的输入装置的输入特征的个人鉴别方法、以及网络系统 |
JPWO2003069491A1 (ja) * | 2002-02-15 | 2005-06-09 | サイエンスパーク株式会社 | 電子計算機の入力装置の入力特徴を用いた個人認証方法、そのプログラム及びプログラムの記録媒体 |
US7219352B2 (en) | 2002-04-15 | 2007-05-15 | Microsoft Corporation | Methods and apparatuses for facilitating processing of interlaced video images for progressive video displays |
US7451457B2 (en) * | 2002-04-15 | 2008-11-11 | Microsoft Corporation | Facilitating interaction between video renderers and graphics device drivers |
US7024672B2 (en) * | 2002-06-26 | 2006-04-04 | Microsoft Corporation | Process-mode independent driver model |
US6974082B2 (en) * | 2002-07-15 | 2005-12-13 | Monode Marking Products, Inc. | Hardware integration system |
BR0313826A (pt) * | 2002-08-27 | 2005-07-05 | Halliburton Energy Serv Inc | Garrafa de amostra de fluido de formação, ferramenta de avaliação de formação monofásica, pistão de pressurização, método para coleta de amostra de fluido furo abaixo, e, método para extrair uma amostra de fluido monofásica de uma formação de furo de poço e manter a amostra em uma única fase |
CN100450122C (zh) * | 2002-09-23 | 2009-01-07 | 艾利森电话股份有限公司 | 中间件应用消息/事件模型 |
US7448049B1 (en) | 2002-10-18 | 2008-11-04 | Crossroads Systems, Inc. | System and method of supporting kernel functionality |
EP1429246A1 (en) * | 2002-12-13 | 2004-06-16 | Sun Microsystems, Inc. | Apparatus and method for switching mode in a computer system |
US20040243783A1 (en) * | 2003-05-30 | 2004-12-02 | Zhimin Ding | Method and apparatus for multi-mode operation in a semiconductor circuit |
US7643675B2 (en) * | 2003-08-01 | 2010-01-05 | Microsoft Corporation | Strategies for processing image information using a color information data structure |
US7158668B2 (en) * | 2003-08-01 | 2007-01-02 | Microsoft Corporation | Image processing using linear light values and other image processing improvements |
US7139002B2 (en) * | 2003-08-01 | 2006-11-21 | Microsoft Corporation | Bandwidth-efficient processing of video images |
US7784058B2 (en) * | 2003-09-22 | 2010-08-24 | Trigence Corp. | Computing system having user mode critical system elements as shared libraries |
US7188195B2 (en) | 2003-11-14 | 2007-03-06 | Hewlett-Packard Development Company, L.P. | DMA slot allocation |
US7669113B1 (en) * | 2004-01-30 | 2010-02-23 | Apple Inc. | Media stream synchronization using device and host clocks |
WO2006031723A2 (en) * | 2004-09-13 | 2006-03-23 | Coretrace Corporation | Method and system for license management |
US7640552B2 (en) * | 2004-10-29 | 2009-12-29 | Microsoft Corporation | Multimedia filter resilience |
US7149832B2 (en) * | 2004-11-10 | 2006-12-12 | Microsoft Corporation | System and method for interrupt handling |
US7581051B2 (en) * | 2005-05-16 | 2009-08-25 | Microsoft Corporation | Method for delivering interrupts to user mode drivers |
US8533709B2 (en) * | 2005-08-04 | 2013-09-10 | Microsoft Cororation | Changing frequency of a virtual programmable interrupt timer in virtual machines to control virtual time |
US7788664B1 (en) * | 2005-11-08 | 2010-08-31 | Hewlett-Packard Development Company, L.P. | Method of virtualizing counter in computer system |
US7668621B2 (en) * | 2006-07-05 | 2010-02-23 | The United States Of America As Represented By The United States Department Of Energy | Robotic guarded motion system and method |
US7620477B2 (en) * | 2006-07-05 | 2009-11-17 | Battelle Energy Alliance, Llc | Robotic intelligence kernel |
US7801644B2 (en) * | 2006-07-05 | 2010-09-21 | Battelle Energy Alliance, Llc | Generic robot architecture |
US7584020B2 (en) * | 2006-07-05 | 2009-09-01 | Battelle Energy Alliance, Llc | Occupancy change detection system and method |
US8965578B2 (en) | 2006-07-05 | 2015-02-24 | Battelle Energy Alliance, Llc | Real time explosive hazard information sensing, processing, and communication for autonomous operation |
US7587260B2 (en) * | 2006-07-05 | 2009-09-08 | Battelle Energy Alliance, Llc | Autonomous navigation system and method |
US8271132B2 (en) | 2008-03-13 | 2012-09-18 | Battelle Energy Alliance, Llc | System and method for seamless task-directed autonomy for robots |
US8355818B2 (en) * | 2009-09-03 | 2013-01-15 | Battelle Energy Alliance, Llc | Robots, systems, and methods for hazard evaluation and visualization |
US8073564B2 (en) * | 2006-07-05 | 2011-12-06 | Battelle Energy Alliance, Llc | Multi-robot control interface |
US7974738B2 (en) * | 2006-07-05 | 2011-07-05 | Battelle Energy Alliance, Llc | Robotics virtual rail system and method |
US7211980B1 (en) | 2006-07-05 | 2007-05-01 | Battelle Energy Alliance, Llc | Robotic follow system and method |
TW200820125A (en) * | 2006-10-24 | 2008-05-01 | Sunplus Technology Co Ltd | Image processing method and system for personal computer |
US20080235246A1 (en) * | 2007-03-20 | 2008-09-25 | Arun Hampapur | Filter sequencing based on a publish-subscribe architecture for digital signal processing |
US8549537B2 (en) * | 2008-01-10 | 2013-10-01 | Industrial Technology Research Institute | Middleware bridge system and method |
US20090296685A1 (en) * | 2008-05-29 | 2009-12-03 | Microsoft Corporation | User-Mode Prototypes in Kernel-Mode Protocol Stacks |
GB2471463A (en) * | 2009-06-29 | 2011-01-05 | Nokia Corp | Software component wrappers for multimedia subcomponents that control the performance of the multimedia function of the subcomponents. |
US8521995B2 (en) * | 2009-12-15 | 2013-08-27 | Intel Corporation | Handling operating system (OS) transitions in an unbounded transactional memory (UTM) mode |
US8316194B2 (en) | 2009-12-15 | 2012-11-20 | Intel Corporation | Mechanisms to accelerate transactions using buffered stores |
US9477515B2 (en) | 2009-12-15 | 2016-10-25 | Intel Corporation | Handling operating system (OS) transitions in an unbounded transactional memory (UTM) mode |
US8806511B2 (en) | 2010-11-18 | 2014-08-12 | International Business Machines Corporation | Executing a kernel device driver as a user space process |
US8533812B1 (en) * | 2011-03-03 | 2013-09-10 | Symantec Corporation | Systems and methods for securing access to kernel devices |
US9317225B2 (en) * | 2011-05-25 | 2016-04-19 | Xerox Corporation | Method and apparatus for dynamically configuring a filter pipeline for a print driver |
US9348927B2 (en) | 2012-05-07 | 2016-05-24 | Smart Security Systems Llc | Systems and methods for detecting, identifying and categorizing intermediate nodes |
US9325676B2 (en) | 2012-05-24 | 2016-04-26 | Ip Ghoster, Inc. | Systems and methods for protecting communications between nodes |
US10778659B2 (en) | 2012-05-24 | 2020-09-15 | Smart Security Systems Llc | System and method for protecting communications |
US9436474B2 (en) | 2012-07-27 | 2016-09-06 | Microsoft Technology Licensing, Llc | Lock free streaming of executable code data |
US10382595B2 (en) | 2014-01-29 | 2019-08-13 | Smart Security Systems Llc | Systems and methods for protecting communications |
US9578062B2 (en) * | 2014-04-03 | 2017-02-21 | Palo Alto Research Center Incorporated | Portable proxy for security management and privacy protection and method of use |
US9817776B2 (en) | 2015-01-19 | 2017-11-14 | Microsoft Technology Licensing, Llc | Memory descriptor list caching and pipeline processing |
FR3034220B1 (fr) * | 2015-03-27 | 2017-03-10 | Damien Plisson | Amelioration d'emission de flux multimedia |
US11194930B2 (en) | 2018-04-27 | 2021-12-07 | Datatrendz, Llc | Unobtrusive systems and methods for collecting, processing and securing information transmitted over a network |
CN109343977B (zh) * | 2018-09-21 | 2021-01-01 | 新华三技术有限公司成都分公司 | 跨态通信方法和通道驱动装置 |
CN111294293B (zh) * | 2018-12-07 | 2021-08-10 | 网宿科技股份有限公司 | 一种基于用户态协议栈的网络隔离方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0231594A3 (en) * | 1986-01-22 | 1988-04-27 | Mts Systems Corporation | Interactive multilevel hierarchical data flow programming system |
US5642171A (en) * | 1994-06-08 | 1997-06-24 | Dell Usa, L.P. | Method and apparatus for synchronizing audio and video data streams in a multimedia system |
US5793961A (en) * | 1994-11-18 | 1998-08-11 | Intel Corporation | Computer system with data conference capability |
US5727212A (en) * | 1995-04-12 | 1998-03-10 | International Business Machines Corporation | Object oriented device driver system for procedural device drivers |
-
1997
- 1997-04-04 US US08/825,855 patent/US6212574B1/en not_active Expired - Lifetime
- 1997-06-19 EP EP97304297A patent/EP0871115A3/en not_active Withdrawn
- 1997-06-19 CA CA002208295A patent/CA2208295C/en not_active Expired - Fee Related
- 1997-06-20 JP JP18062397A patent/JP4508298B2/ja not_active Expired - Fee Related
-
2006
- 2006-11-13 JP JP2006306991A patent/JP4313815B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100916301B1 (ko) * | 2007-10-01 | 2009-09-10 | 한국전자통신연구원 | 커널 api 대화식 실행 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP4313815B2 (ja) | 2009-08-12 |
CA2208295A1 (en) | 1998-10-04 |
CA2208295C (en) | 2009-12-22 |
JPH10283198A (ja) | 1998-10-23 |
EP0871115A3 (en) | 1998-12-16 |
US6212574B1 (en) | 2001-04-03 |
JP4508298B2 (ja) | 2010-07-21 |
EP0871115A2 (en) | 1998-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4313815B2 (ja) | コンピュータ・オペレーティング・システムにおけるカーネル・モード動作のユーザ・モード・プロキシ | |
US6658477B1 (en) | Improving the control of streaming data through multiple processing modules | |
US7200676B2 (en) | Transmitting and receiving messages through a customizable communication channel and programming model | |
US7392298B2 (en) | Apparatus and method for flexible web service deployment | |
US7330878B2 (en) | Method and system for remote control of a local system | |
JP4495410B2 (ja) | コンピューティングシステムおよびその方法 | |
US6938087B1 (en) | Distributed universal communication module for facilitating delivery of network services to one or more devices communicating over multiple transport facilities | |
US20050240944A1 (en) | Method and apparatus for adapting and hosting legacy user interface controls | |
US20060064701A1 (en) | Multi-instance input device control | |
US6633929B1 (en) | Method and system for abstracting network device drivers | |
US6934746B2 (en) | Image and sound input-output control | |
JP5046161B2 (ja) | ネットワーク・エッジ・コンピューティング向けのアプリケーション分割 | |
US20140201418A1 (en) | Net-centric adapter for interfacing enterprises systems to legacy systems | |
CN101411164B (zh) | 用于呈现远程可视合成的方法 | |
Lohse et al. | Network-integrated multimedia middleware (NMM) | |
JP2003076563A (ja) | 分散オブジェクトミドルウェア連携方法及びプログラムを記録した記録媒体並びにプログラム | |
CN113176957B (zh) | 一种基于rpc的远程应用自动化系统 | |
JP3836615B2 (ja) | 協調動作ユニット及び協調動作ユニット用プログラムを記録した記録媒体 | |
Coulson et al. | Experiences in implementing a distributed object platform for multimedia applications | |
Hartikainen et al. | Node-based architecture for lightweight middleware | |
Sward | Using ada in a service-Ooriented architecture | |
JPH11306152A (ja) | ディレクタ生成装置およびディレクタ生成プログラム記憶媒体 | |
JP2002544739A (ja) | ストリーミングデータフレームの分割及び混合 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081226 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090325 |
|
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: 20090417 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090515 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120522 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130522 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130522 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |