ホーム
製品リスト
ダウンロード
オンラインショップ
お問い合わせ
会社概要
ブログ
検索
ダウンロード
ショップ
お問い合わせ
会社概要
ブログ
Toggle navigation
Jungo
製品ホーム
製品
WinDriver 製品一覧
WinDriver PCI
WinDriver USB
WinDriver for Servers
Windows ドライバーのデジタル署名サービス
WHQL (HLK) プレテスト代行サービス
ダウンロード
WinDriver PCI
WinDriver USB
価格
技術情報
テクニカル情報
マニュアル ダウンロード
テクニカル ドキュメント
FAQ
リリースノート
ブログ
お問い合わせ
テクニカル ドキュメント #45
Doc ID:
45
製品:
WinDriver
Version:
--
COPY_TO_USER_OR_KERNEL および COPY_FROM_USER_OR_KERNEL とは何ですか?また、いつ使用しますか?
COPY_TO_USER_OR_KERNEL および COPY_FROM_USER_OR_KERNEL マクロは、Kernel PlugIn 内からユーザー モードのメモリ アドレスにアクセスする際に、ユーザー モードのメモリ アドレスから/へデータ (必要に応じて) をコピーするのに使用されます。データをコピーすることによって、たとえユーザー モード プロセスのコンテキストが、IO オペレーションの最中に変更しても、ユーザー モードのアドレスを正常に使用することができます。これは特に長いオペレーション (ユーザー モード プロセスのコンテキストの変更) には最適です。
[コピーを行うのにマクロを使用することで、対応するすべての OS の汎用的な解決策となります]。
KP_IntAtIrql() または KP_IntAtDpc() 関数ないからユーザー モード データへアクセスする場合、これらの関数を実行する前に、先ず、Kernel PlugIn の変数にデータをコピーしてください。
WinDriver\include\kpstdlib.h ヘッダ ファイルに、COPY_TO_USER_OR_KERNEL および COPY_FROM_USER_OR_KERNEL マクロを定義します。
COPY_TO_USER_OR_KERNEL マクロを使用した例、サンプルの kptest.c ファイル (WinDriver\kerplug\kptest\kermode ディレクトリ以下) の KP_Call() の実装を参照してください。または、DriverWizard で生成した \kerplug\kp_xxx.c ファイル (WinDriver v5.20 以降) の KP_XXX_Call() の実装を参照してください
ユーザー モードと Kernel PlugIn ルーティン (例、KpIntAtIrql() および KpIntAtDpc()) 間のデータ バッファの共有に関しては、
テクニカル ドキュメント #41
を参照してください。
このサイトでは、サイトや広告を改善するために Cookie を使用します。サイトを利用することで、Cookie の使用に同意するものといたします。詳細は
プライバシーについて
をご覧ください。
同意する