次の方法で共有


FN_VMB_SERVER_CHANNEL_INIT_SET_MMIO_MEGABYTES コールバック関数 (vmbuskernelmodeclientlibapi.h)

VmbServerChannelInitSetMmioMegabytes 関数は、デバイス用に予約するゲスト メモリ マップ I/O (MMIO) 領域の量 (メガバイト) を指定します。

構文

FN_VMB_SERVER_CHANNEL_INIT_SET_MMIO_MEGABYTES FnVmbServerChannelInitSetMmioMegabytes;

NTSTATUS FnVmbServerChannelInitSetMmioMegabytes(
  VMBCHANNEL Channel,
  UINT16 MmioMegabytes,
  UINT16 MmioMegabytesOptional
)
{...}

パラメーター

Channel

チャネルのハンドル。

MmioMegabytes

予約する MMIO 領域の量 (メガバイト単位)。

MmioMegabytesOptional

予約する追加のオプションの MMIO 領域の量 (メガバイト単位)。

戻り値

VmbServerChannelInitSetMmioMegabytes は、次の状態値を返します。

リターン コード 形容
STATUS_INVALID_PARAMETER_1
チャネルの の値が無効であるか、無効な状態 (Disabled など) です。
STATUS_INVALID_PARAMETER
MmioMegabytesMmioMegabytesOptional の値は 0 です。 これらのパラメーターの 1 つが 0 より大きい必要があります

備考

この関数は、ドライバー作成者にとって便利な機能として存在します。 ゲスト プラグ アンド プレイ マネージャーとやり取りし、メモリ マップされた I/O 領域を直接要求することで、それが行われる可能性があります。 Windows および Linux VMBus ドライバーには、クライアントに代わって MMIO 領域を予約する容量が必要です。 この関数を使用すると、サーバー エンドポイントは、予約する MMIO 領域の適切な量を提案できます。

大事な

この関数は、Vmbkmcl.sys バス ドライバーによって提供される VMBus カーネル モード クライアント ライブラリ (KMCL) インターフェイスを介して呼び出されます。 これは、KMCL_SERVER_ONLY_METHODS 構造体からアクセスされるサーバー専用の関数です。

詳細については、KMCL_SERVER_ONLY_METHODSの「解説」セクションを参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 10 バージョン 1809
ヘッダー vmbuskernelmodeclientlibapi.h