次の方法で共有


WOW64_LDT_ENTRY 構造体 (winnt.h)

64 ビット システム上の 32 ビット スレッドの記述子テーブル内のエントリについて説明します。 この構造体は、64 ビット システムでのみ有効です。

構文

typedef struct _WOW64_LDT_ENTRY {
  WORD  LimitLow;
  WORD  BaseLow;
  union {
    struct {
      BYTE BaseMid;
      BYTE Flags1;
      BYTE Flags2;
      BYTE BaseHi;
    } Bytes;
    struct {
      DWORD BaseMid : 8;
      DWORD Type : 5;
      DWORD Dpl : 2;
      DWORD Pres : 1;
      DWORD LimitHi : 4;
      DWORD Sys : 1;
      DWORD Reserved_0 : 1;
      DWORD Default_Big : 1;
      DWORD Granularity : 1;
      DWORD BaseHi : 8;
    } Bits;
  } HighWord;
} WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY;

メンバー

LimitLow

セグメント内の最後のバイトのアドレスの下位部分。

BaseLow

セグメントのベース アドレスの下位部分。

HighWord

記述子の高次部分。 このメンバーは、必要な詳細レベルに応じて、バイトまたはビットのコレクションとして解釈される場合があります。

HighWord.Bytes

HighWord.Bytes.BaseMid

セグメントのベース アドレスの中間ビット (16 ~ 23)。

HighWord.Bytes.Flags1

Bits 構造体の TypeDplPres メンバーの値。

HighWord.Bytes.Flags2

Bits 構造体の LimitHiSysReserved_0Default_Bigおよび粒度の各メンバーの値。

HighWord.Bytes.BaseHi

セグメントのベース アドレスの上位ビット (24 ~ 31)。

HighWord.Bits

HighWord.Bits.BaseMid

セグメントのベース アドレスの中間ビット (16 ~ 23)。

HighWord.Bits.Type

セグメントの種類。 このメンバーには、次のいずれかの値を指定できます。

HighWord.Bits.Dpl

記述子の特権レベル。 このメンバーは、0 (最も特権が高い) ~ 3 (最小特権) の範囲の整数値です。

HighWord.Bits.Pres

現在のフラグ。 このメンバーは、セグメントが物理メモリに存在する場合は 1、存在しない場合は 0 です。

HighWord.Bits.LimitHi

セグメント内の最後のバイトのアドレスの上位ビット (16 ~ 19)。

HighWord.Bits.Sys

システム・プログラマーが使用できるスペース。 このメンバーは、システム固有の方法でセグメントをマークするために使用できます。

HighWord.Bits.Reserved_0

予約済み。

HighWord.Bits.Default_Big

セグメントのサイズ。 セグメントがデータ セグメントの場合、セグメントが 64 キロバイト (KB) を超える場合は 1、セグメントが 64 KB 以下の場合は 0 が含まれます。

セグメントがコード セグメントの場合、このメンバーには 1 が含まれます。 セグメントは、既定の (ネイティブ モード) 命令セットで実行されます。

HighWord.Bits.Granularity

粒度。 このメンバーには、セグメントがバイト粒度の場合は 0、セグメントがページ粒度の場合は 1 が含まれます。

HighWord.Bits.BaseHi

セグメントのベース アドレスの上位ビット (24 ~ 31)。

注釈

Wow64GetThreadSelectorEntry 関数は、記述子テーブル内のエントリからの情報をこの構造体に格納します。 この情報を使用して、セグメント相対アドレスを線形仮想アドレスに変換できます。

セグメントのベース アドレスは、セグメント内のオフセット 0 のアドレスです。 この値を計算するには、 BaseLowBaseMidBaseHi の各メンバーを組み合わせます。

セグメントの制限は、セグメント内でアドレス指定できる最後のバイトのアドレスです。 この値を計算するには、 LimitLow メンバーと LimitHi メンバーを組み合わせます。

WOW64_LDT_ENTRY構造体は、32 ビット プロセスの LDT_ENTRY 構造体と同じ 64 ビット プロセスのレイアウトを持ちます。

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
Header winnt.h (Windows.h を含む)

関連項目

デバッグ構造体

Wow64GetThreadSelectorEntry