Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

mialpha.h File Reference

Go to the source code of this file.

Classes

struct  _MMCOLOR_TABLES
struct  _MMPRIMARY_COLOR_TABLES
struct  _MMPTE_SOFTWARE
struct  _MMPTE_TRANSITION
struct  _MMPTE_PROTOTYPE
struct  _MMPTE_LIST
struct  _MMPTE_SUBSECTION
struct  _MMPTE

Defines

#define MM_EMPTY_LIST   (-1)
#define MM_EMPTY_PTE_LIST   0xFFFFFFFFUI64
#define MI_PTE_BASE_FOR_LOWEST_KERNEL_ADDRESS   (MiGetPteAddress (PTE_BASE))
#define MM_KSEG0_BASE   KSEG0_BASE
#define MASK_43   0x7FFFFFFFFFFUI64
#define PDE_KTBASE   PDE_TBASE
#define PDE_TOP   0xFFFFFE01FFFFFFFFUI64
#define MM_PAGES_IN_KSEG0   (ULONG)(((KSEG2_BASE - KSEG0_BASE) >> PAGE_SHIFT))
#define MM_USER_ADDRESS_RANGE_LIMIT   0xFFFFFFFFFFFFFFFF
#define MM_MAXIMUM_ZERO_BITS   53
#define MM_SYSTEM_SPACE_START   0xFFFFFE0600000000UI64
#define MM_SYSTEM_CACHE_START   0xFFFFFE0800000000UI64
#define MM_SYSTEM_CACHE_END   0xFFFFFF0800000000UI64
#define MM_MAXIMUM_SYSTEM_CACHE_SIZE   ((MM_SYSTEM_CACHE_END - MM_SYSTEM_CACHE_START) >> PAGE_SHIFT)
#define MM_SYSTEM_CACHE_WORKING_SET   0xFFFFFE0600000000UI64
#define MM_SESSION_SPACE_DEFAULT   0xFFFFFE0400000000UI64
#define MM_SYSTEM_VIEW_START   MM_SESSION_SPACE_DEFAULT
#define MM_SYSTEM_VIEW_START_IF_HYDRA   (KI_USER_SHARED_DATA - MM_SYSTEM_VIEW_SIZE)
#define MM_SYSTEM_VIEW_SIZE   (48 * 1024 * 1024)
#define MM_SYSTEM_VIEW_SIZE_IF_HYDRA   MM_SYSTEM_VIEW_SIZE
#define MM_PAGED_POOL_START   ((PVOID)0xFFFFFF0800000000)
#define MM_LOWEST_NONPAGED_SYSTEM_START   ((PVOID)0xFFFFFF2800000000)
#define MM_NONPAGED_POOL_END   ((PVOID)(0xFFFFFF6800000000 - (16 * PAGE_SIZE)))
#define NON_PAGED_SYSTEM_END   ((PVOID)0xFFFFFFFFFFFFFFF0)
#define MM_SYSTEM_SPACE_END   0xFFFFFFFFFFFFFFFFUI64
#define MM_MINIMUM_SYSTEM_PTES   5000
#define MM_MAXIMUM_SYSTEM_PTES   (16*1024*1024)
#define MM_DEFAULT_SYSTEM_PTES   11000
#define MM_MAX_INITIAL_NONPAGED_POOL   (96 * 1024 * 1024)
#define MM_MAX_ADDITIONAL_NONPAGED_POOL   (((SIZE_T)128 * 1024 * 1024 * 1024) - 16)
#define MM_MAX_PAGED_POOL   ((SIZE_T)128 * 1024 * 1024 * 1024)
#define MM_MAX_DEFAULT_NONPAGED_POOL   ((SIZE_T)8 * 1024 * 1024 * 1024)
#define GH3   (3)
#define GH3_PAGE_SIZE   (PAGE_SIZE << 9)
#define GH2   (2)
#define GH2_PAGE_SIZE   (PAGE_SIZE << 6)
#define GH1   (1)
#define GH1_PAGE_SIZE   (PAGE_SIZE << 3)
#define GH0   (0)
#define GH0_PAGE_SIZE   PAGE_SIZE
#define __1GB   (0x40000000)
#define MM_VIRTUAL_PAGE_FILLER   (13 - 12)
#define MM_VIRTUAL_PAGE_SIZE   (43 - 13)
#define MM_PROTO_PTE_ALIGNMENT   ((ULONG)MM_MAXIMUM_NUMBER_OF_COLORS * (ULONG)PAGE_SIZE)
#define MAX_PAGE_FILES   (8)
#define PAGE_PARENT_MASK   0x1FFFFFFFFUI64
#define MM_VA_MAPPED_BY_PPE   (0x200000000UI64)
#define PAGE_DIRECTORY1_MASK   0x1FFFFFFFFUI64
#define PAGE_DIRECTORY2_MASK   0x7FFFFFUI64
#define MM_VA_MAPPED_BY_PDE   (0x800000)
#define LOWEST_IO_ADDRESS   (0)
#define PTE_SHIFT   (3)
#define PHYSICAL_ADDRESS_BITS   (48)
#define MM_MAXIMUM_NUMBER_OF_COLORS   1
#define MM_NUMBER_OF_COLORS   (1)
#define MM_COLOR_MASK   (0)
#define MM_COLOR_ALIGNMENT   (0)
#define MM_COLOR_MASK_VIRTUAL   (0)
#define MM_SECONDARY_COLORS_DEFAULT   ((1024 * 1024) >> PAGE_SHIFT)
#define MM_SECONDARY_COLORS_MIN   (2)
#define MM_SECONDARY_COLORS_MAX   (2048)
#define HYPER_SPACE   ((PVOID)0xFFFFFE0200000000)
#define FIRST_MAPPING_PTE   0xFFFFFE0200000000UI64
#define NUMBER_OF_MAPPING_PTES   639
#define LAST_MAPPING_PTE   (FIRST_MAPPING_PTE + (NUMBER_OF_MAPPING_PTES * PAGE_SIZE))
#define IMAGE_MAPPING_PTE   ((PMMPTE)((ULONG_PTR)LAST_MAPPING_PTE + PAGE_SIZE))
#define ZEROING_PAGE_PTE   ((PMMPTE)((ULONG_PTR)IMAGE_MAPPING_PTE + PAGE_SIZE))
#define WORKING_SET_LIST   ((PVOID)((ULONG_PTR)ZEROING_PAGE_PTE + PAGE_SIZE))
#define MM_MAXIMUM_WORKING_SET   ((((ULONG_PTR)4 * 1024 * 1024 * 1024 * 1024) - (64 * 1024 * 1024)) >> PAGE_SHIFT)
#define HYPER_SPACE_END   0xFFFFFE03FFFFFFFFUI64
#define MM_WORKING_SET_END   0xFFFFFE0400000000UI64
#define MM_PTE_VALID_MASK   0x1105
#define MM_PTE_PROTOTYPE_MASK   0x2
#define MM_PTE_DIRTY_MASK   0x4
#define MM_PTE_TRANSITION_MASK   0x4
#define MM_PTE_GLOBAL_MASK   0x10
#define MM_PTE_WRITE_MASK   0x10000
#define MM_PTE_COPY_ON_WRITE_MASK   0x20000
#define MM_PTE_OWNER_MASK   0x2200
#define MM_PTE_NOACCESS   0x0
#define MM_PTE_READONLY   0x4
#define MM_PTE_READWRITE   (MM_PTE_WRITE_MASK)
#define MM_PTE_WRITECOPY   (MM_PTE_WRITE_MASK | MM_PTE_COPY_ON_WRITE_MASK)
#define MM_PTE_EXECUTE   0x4
#define MM_PTE_EXECUTE_READ   0x4
#define MM_PTE_EXECUTE_READWRITE   (MM_PTE_WRITE_MASK)
#define MM_PTE_EXECUTE_WRITECOPY   (MM_PTE_WRITE_MASK | MM_PTE_COPY_ON_WRITE_MASK)
#define MM_PTE_NOCACHE   0x0
#define MM_PTE_GUARD   0x0
#define MM_PTE_CACHE   0x0
#define MM_PROTECT_FIELD_SHIFT   3
#define MI_MAXIMUM_PTE_WORKING_SET_INDEX   (1 << _HARDWARE_PTE_WORKING_SET_BITS)
#define MM_ZERO_PTE   0
#define MM_ZERO_KERNEL_PTE   0
#define MM_DEMAND_ZERO_WRITE_PTE   (MM_READWRITE << MM_PROTECT_FIELD_SHIFT)
#define MM_KERNEL_DEMAND_ZERO_PTE   (MM_READWRITE << MM_PROTECT_FIELD_SHIFT)
#define MM_KERNEL_NOACCESS_PTE   (MM_NOACCESS << MM_PROTECT_FIELD_SHIFT)
#define MM_PTE_CLEAN   1
#define MM_PTE_DIRTY   0
#define MM_STACK_ALIGNMENT   0x0
#define MM_STACK_OFFSET   0x0
#define PDE_PER_PAGE   1024
#define PTE_PER_PAGE   1024
#define PTE_PER_PAGE_BITS   11
#define MM_USER_PAGE_TABLE_PAGES   1024
#define MI_MAKE_VALID_PTE(OUTPTE, FRAME, PMASK, PPTE)
#define MI_MAKE_VALID_PTE_TRANSITION(OUTPTE, PROTECT)
#define MI_MAKE_TRANSITION_PTE(OUTPTE, PAGE, PROTECT, PPTE)
#define MI_MAKE_TRANSITION_PTE_VALID(OUTPTE, PPTE)
#define MI_SET_PTE_IN_WORKING_SET(PTE, WSINDEX)
#define MI_GET_WORKING_SET_FROM_PTE(PTE)   (ULONG)(PTE)->u.Hard.SoftwareWsIndex
#define MI_SET_PTE_WRITE_COMBINE(PTE)
#define MI_SET_PTE_DIRTY(PTE)   (PTE).u.Hard.FaultOnWrite = MM_PTE_DIRTY
#define MI_SET_PTE_CLEAN(PTE)   (PTE).u.Hard.FaultOnWrite = MM_PTE_CLEAN
#define MI_IS_PTE_DIRTY(PTE)   ((PTE).u.Hard.FaultOnWrite != MM_PTE_CLEAN)
#define MI_SET_GLOBAL_BIT_IF_SYSTEM(OUTPTE, PPTE)
#define MI_SET_GLOBAL_STATE(PTE, STATE)   (PTE).u.Hard.Global = STATE;
#define MI_ENABLE_CACHING(PTE)
#define MI_DISABLE_CACHING(PTE)
#define MI_IS_CACHING_DISABLED(PPTE)   FALSE
#define MI_SET_PFN_DELETED(PPFN)   (((ULONG_PTR)(PPFN)->PteAddress) = ((((ULONG_PTR)(PPFN)->PteAddress) << 1) >> 1))
#define MI_IS_PFN_DELETED(PPFN)   ((((ULONG_PTR)(PPFN)->PteAddress) >> 63) == 0)
#define MI_CHECK_PAGE_ALIGNMENT(PAGE, COLOR)
#define MI_INITIALIZE_HYPERSPACE_MAP(HYPER_PAGE)
#define MI_GET_PAGE_COLOR_FROM_PTE(PTEADDRESS)   ((ULONG)((MmSystemPageColor++) & MmSecondaryColorMask))
#define MI_GET_PAGE_COLOR_FROM_VA(ADDRESS)   ((ULONG)((MmSystemPageColor++) & MmSecondaryColorMask))
#define MI_GET_PAGE_COLOR_FROM_SESSION(_SessionSpace)   ((ULONG)((_SessionSpace->Color++) & MmSecondaryColorMask))
#define MI_PAGE_COLOR_PTE_PROCESS(PTE, COLOR)   ((ULONG)((*(COLOR))++) & MmSecondaryColorMask)
#define MI_PAGE_COLOR_VA_PROCESS(ADDRESS, COLOR)   ((ULONG)((*(COLOR))++) & MmSecondaryColorMask)
#define MI_GET_NEXT_COLOR(COLOR)   ((COLOR+1) & MM_COLOR_MASK)
#define MI_GET_PREVIOUS_COLOR(COLOR)   ((COLOR-1) & MM_COLOR_MASK)
#define MI_GET_SECONDARY_COLOR(PAGE, PFN)   ((ULONG)(PAGE & MmSecondaryColorMask))
#define MI_GET_COLOR_FROM_SECONDARY(SECONDARY_COLOR)   (0)
#define MI_GET_MODIFIED_PAGE_BY_COLOR(PAGE, COLOR)   PAGE = MmModifiedPageListByColor[COLOR].Flink
#define MI_GET_MODIFIED_PAGE_ANY_COLOR(PAGE, COLOR)
#define MI_MAKE_VALID_PTE_WRITE_COPY(PPTE)
#define MI_DETERMINE_OWNER(PPTE)   ((PMMPTE)(PPTE) <= MiHighestUserPte)
#define MI_SET_ACCESSED_IN_PTE(PPTE, ACCESSED)
#define MI_GET_ACCESSED_IN_PTE(PPTE)   0
#define MI_SET_OWNER_IN_PTE(PPTE, OWNER)   ((PPTE)->u.Hard.UserReadAccess = (PPTE)->u.Hard.UserWriteAccess = OWNER)
#define MI_GET_OWNER_IN_PTE(PPTE)   ((PPTE)->u.Hard.UserReadAccess)
#define CLEAR_FOR_PAGE_FILE   0xF8
#define MI_SET_PAGING_FILE_INFO(OUTPTE, PPTE, FILEINFO, OFFSET)
#define MiPteToProto(lpte)   ((PMMPTE)((lpte)->u.Proto.ProtoAddress))
#define MiProtoAddressForPte(proto_va)   (((ULONG_PTR)proto_va << 16) | MM_PTE_PROTOTYPE_MASK)
#define MiProtoAddressForKernelPte(proto_va)   MiProtoAddressForPte(proto_va)
#define MiGetSubsectionAddress(lpte)   ((PSUBSECTION)((lpte)->u.Subsect.SubsectionAddress))
#define MiGetSubsectionAddressForPte(VA)   ((ULONG_PTR)VA << 16)
#define MiGetPpeAddress(va)   ((PMMPTE)PDE_TBASE + MiGetPpeOffset(va))
#define MiGetPdeAddress(va)   MiGetPteAddress(MiGetPteAddress(va))
#define MiGetPdeAddress64(va)   MiGetPteAddress(MiGetPteAddress(va))
#define MiGetPteAddress(va)   ((PMMPTE)(((((ULONG_PTR)(va) & MASK_43) >> PTI_SHIFT) << 3) + PTE_BASE))
#define MiGetPteAddress64(va)   ((PMMPTE)(((((ULONG_PTR)(va) & MASK_43) >> PTI_SHIFT) << 3) + PTE_BASE))
#define MiGetPpeOffset(va)   ((ULONG)(((ULONG_PTR)(va) >> PDI1_SHIFT) & PDI_MASK))
#define MiGetPdeOffset(va)   ((ULONG)(((ULONG_PTR)(va) >> PDI2_SHIFT) & PDI_MASK))
#define MiGetPpePdeOffset(va)   ((ULONG)((ULONG_PTR)(va) >> PDI2_SHIFT))
#define MiGetPteOffset(va)   ((ULONG)(((ULONG_PTR)(va) >> PTI_SHIFT) & PDI_MASK))
#define MiGetVirtualAddressMappedByPpe(PPE)   MiGetVirtualAddressMappedByPte(MiGetVirtualAddressMappedByPde(PPE))
#define MiGetVirtualAddressMappedByPde(Pde)   MiGetVirtualAddressMappedByPte(MiGetVirtualAddressMappedByPte(Pde))
#define MiGetVirtualAddressMappedByPte(Pte)   ((PVOID)((LONG_PTR)(((LONG_PTR)(Pte) - PTE_BASE) << (PAGE_SHIFT + VA_SHIFT - 3)) >> VA_SHIFT))
#define MiGetVirtualAddressMappedByPte64(Pte)   ((PVOID)((LONG_PTR)(((LONG_PTR)(Pte) - PTE_BASE64) << (PAGE_SHIFT + VA_SHIFT - 3)) >> VA_SHIFT))
#define MiGetVirtualPageNumberMappedByPte64(Pte)   ((PVOID)(((ULONG_PTR)(Pte) - PTE_BASE64) >> 3))
#define MiIsVirtualAddressOnPpeBoundary(VA)   (((ULONG_PTR)(VA) & PAGE_DIRECTORY1_MASK) == 0)
#define MiIsVirtualAddressOnPdeBoundary(VA)   (((ULONG_PTR)(VA) & PAGE_DIRECTORY2_MASK) == 0)
#define MiIsPteOnPpeBoundary(PTE)   (((ULONG_PTR)(PTE) & (MM_VA_MAPPED_BY_PDE - 1)) == 0)
#define MiIsPteOnPdeBoundary(PTE)   (((ULONG_PTR)(PTE) & (PAGE_SIZE - 1)) == 0)
#define GET_PAGING_FILE_NUMBER(PTE)   ((ULONG)(((PTE).u.Soft.PageFileLow)))
#define GET_PAGING_FILE_OFFSET(PTE)   ((ULONG)(((PTE).u.Soft.PageFileHigh)))
#define IS_PTE_NOT_DEMAND_ZERO(PTE)   ((PTE).u.Long & ~0xFE)
#define MI_MAKING_VALID_PTE_INVALID(SYSTEM_WIDE)
#define MI_MAKING_MULTIPLE_PTES_INVALID(SYSTEM_WIDE)
#define MI_MAKE_PROTECT_WRITE_COPY(PTE)
#define MI_SET_PAGE_DIRTY(PPTE, VA, PFNHELD)
#define MI_NO_FAULT_FOUND(TEMP, PPTE, VA, PFNHELD)
#define MI_CAPTURE_DIRTY_BIT_TO_PFN(PPTE, PPFN)
#define MI_IS_PHYSICAL_ADDRESS(Va)
#define MI_CONVERT_PHYSICAL_TO_PFN(Va)
#define MI_CONVERT_PHYSICAL_BUS_TO_PFN(Pa)   ((PFN_NUMBER)((Pa).QuadPart >> ((CCHAR)PAGE_SHIFT)))
#define MI_PTE_LOOKUP_NEEDED   ((ULONG64)0xffffffff)
#define MI_GET_PAGE_FRAME_FROM_PTE(PTE)   ((PFN_NUMBER)(PTE)->u.Hard.PageFrameNumber)
#define MI_GET_PAGE_FRAME_FROM_TRANSITION_PTE(PTE)   ((PFN_NUMBER)(PTE)->u.Trans.PageFrameNumber)
#define MI_GET_PROTECTION_FROM_SOFT_PTE(PTE)   ((ULONG)(PTE)->u.Soft.Protection)
#define MI_GET_PROTECTION_FROM_TRANSITION_PTE(PTE)   ((ULONG)(PTE)->u.Trans.Protection)
#define MI_WRITE_VALID_PTE(_PointerPte, _PteContents)   (*(_PointerPte) = (_PteContents))
#define MI_WRITE_INVALID_PTE(_PointerPte, _PteContents)   (*(_PointerPte) = (_PteContents))
#define MI_WRITE_VALID_PTE_NEW_PROTECTION(_PointerPte, _PteContents)   (*(_PointerPte) = (_PteContents))
#define MiFillMemoryPte(Destination, Length, Pattern)   RtlFillMemoryUlonglong((Destination), (Length), (Pattern))
#define MI_IS_PAGE_TABLE_ADDRESS(VA)   ((PVOID)(VA) >= (PVOID)PTE_BASE && (PVOID)(VA) <= (PVOID)PDE_TOP)
#define MI_IS_KERNEL_PAGE_TABLE_ADDRESS(VA)   ((PVOID)(VA) >= (PVOID)MiGetPteAddress(MmSystemRangeStart) && (PVOID)(VA) <= (PVOID)PDE_TOP)
#define MI_IS_PAGE_DIRECTORY_ADDRESS(VA)   ((PVOID)(VA) >= (PVOID)PDE_UBASE && (PVOID)(VA) <= (PVOID)PDE_TOP)
#define MI_IS_HYPER_SPACE_ADDRESS(VA)   ((PVOID)(VA) >= (PVOID)HYPER_SPACE && (PVOID)(VA) <= (PVOID)HYPER_SPACE_END)
#define MI_IS_PROCESS_SPACE_ADDRESS(VA)
#define MI_IS_PTE_PROTOTYPE(PTE)   ((PTE) > (PMMPTE)PDE_TOP)
#define MI_IS_SYSTEM_CACHE_ADDRESS(VA)
#define MI_BARRIER_SYNCHRONIZE(TimeStamp)
#define MI_BARRIER_STAMP_ZEROED_PAGE(PointerTimeStamp)   (*(PULONG)PointerTimeStamp = KeReadMbTimeStamp())
#define MI_FLUSH_SINGLE_SESSION_TB(Virtual, Invalid, AllProcessors, PtePointer, PteValue, PreviousPte)
#define MI_FLUSH_ENTIRE_SESSION_TB(Invalid, AllProcessors)   KeFlushEntireTb (Invalid, AllProcessors);

Typedefs

typedef _MMCOLOR_TABLES MMCOLOR_TABLES
typedef _MMCOLOR_TABLESPMMCOLOR_TABLES
typedef _MMPRIMARY_COLOR_TABLES MMPRIMARY_COLOR_TABLES
typedef _MMPRIMARY_COLOR_TABLESPMMPRIMARY_COLOR_TABLES
typedef _MMPTE_SOFTWARE MMPTE_SOFTWARE
typedef _MMPTE_TRANSITION MMPTE_TRANSITION
typedef _MMPTE_PROTOTYPE MMPTE_PROTOTYPE
typedef _MMPTE_LIST MMPTE_LIST
typedef _MMPTE_SUBSECTION MMPTE_SUBSECTION
typedef _MMPTE MMPTE
typedef _MMPTEPMMPTE

Variables

ULONG MmSecondaryColorMask
PMMCOLOR_TABLES MmFreePagesByColor [2]
ULONG MmTotalPagesForPagingFile


Define Documentation

#define __1GB   (0x40000000)
 

Definition at line 276 of file axp64/mialpha.h.

#define CLEAR_FOR_PAGE_FILE   0xF8
 

Definition at line 1396 of file axp64/mialpha.h.

#define FIRST_MAPPING_PTE   0xFFFFFE0200000000UI64
 

Definition at line 377 of file axp64/mialpha.h.

#define GET_PAGING_FILE_NUMBER PTE   )     ((ULONG)(((PTE).u.Soft.PageFileLow)))
 

Definition at line 1937 of file axp64/mialpha.h.

#define GET_PAGING_FILE_OFFSET PTE   )     ((ULONG)(((PTE).u.Soft.PageFileHigh)))
 

Definition at line 1959 of file axp64/mialpha.h.

#define GH0   (0)
 

Definition at line 268 of file axp64/mialpha.h.

#define GH0_PAGE_SIZE   PAGE_SIZE
 

Definition at line 269 of file axp64/mialpha.h.

#define GH1   (1)
 

Definition at line 261 of file axp64/mialpha.h.

#define GH1_PAGE_SIZE   (PAGE_SIZE << 3)
 

Definition at line 262 of file axp64/mialpha.h.

#define GH2   (2)
 

Definition at line 254 of file axp64/mialpha.h.

#define GH2_PAGE_SIZE   (PAGE_SIZE << 6)
 

Definition at line 255 of file axp64/mialpha.h.

#define GH3   (3)
 

Definition at line 247 of file axp64/mialpha.h.

#define GH3_PAGE_SIZE   (PAGE_SIZE << 9)
 

Definition at line 248 of file axp64/mialpha.h.

#define HYPER_SPACE   ((PVOID)0xFFFFFE0200000000)
 

Definition at line 375 of file axp64/mialpha.h.

#define HYPER_SPACE_END   0xFFFFFE03FFFFFFFFUI64
 

Definition at line 393 of file axp64/mialpha.h.

#define IMAGE_MAPPING_PTE   ((PMMPTE)((ULONG_PTR)LAST_MAPPING_PTE + PAGE_SIZE))
 

Definition at line 384 of file axp64/mialpha.h.

#define IS_PTE_NOT_DEMAND_ZERO PTE   )     ((PTE).u.Long & ~0xFE)
 

Definition at line 1981 of file axp64/mialpha.h.

#define LAST_MAPPING_PTE   (FIRST_MAPPING_PTE + (NUMBER_OF_MAPPING_PTES * PAGE_SIZE))
 

Definition at line 381 of file axp64/mialpha.h.

#define LOWEST_IO_ADDRESS   (0)
 

Definition at line 315 of file axp64/mialpha.h.

#define MASK_43   0x7FFFFFFFFFFUI64
 

Definition at line 151 of file axp64/mialpha.h.

#define MAX_PAGE_FILES   (8)
 

Definition at line 293 of file axp64/mialpha.h.

#define MI_BARRIER_STAMP_ZEROED_PAGE PointerTimeStamp   )     (*(PULONG)PointerTimeStamp = KeReadMbTimeStamp())
 

Definition at line 2722 of file axp64/mialpha.h.

#define MI_BARRIER_SYNCHRONIZE TimeStamp   ) 
 

Value:

if ((ULONG)TimeStamp == KeReadMbTimeStamp()) { \ KeSynchronizeMemoryAccess(); \ }

Definition at line 2690 of file axp64/mialpha.h.

#define MI_CAPTURE_DIRTY_BIT_TO_PFN PPTE,
PPFN   ) 
 

Value:

if (((PPFN)->u3.e1.Modified == 0) && \ ((PPTE)->u.Hard.FaultOnWrite == MM_PTE_DIRTY)) { \ (PPFN)->u3.e1.Modified = 1; \ if (((PPFN)->OriginalPte.u.Soft.Prototype == 0) && \ ((PPFN)->u3.e1.WriteInProgress == 0)) { \ MiReleasePageFileSpace ((PPFN)->OriginalPte); \ (PPFN)->OriginalPte.u.Soft.PageFileHigh = 0; \ } \ }

Definition at line 2152 of file axp64/mialpha.h.

#define MI_CHECK_PAGE_ALIGNMENT PAGE,
COLOR   ) 
 

Definition at line 984 of file axp64/mialpha.h.

#define MI_CONVERT_PHYSICAL_BUS_TO_PFN Pa   )     ((PFN_NUMBER)((Pa).QuadPart >> ((CCHAR)PAGE_SHIFT)))
 

Definition at line 2235 of file axp64/mialpha.h.

#define MI_CONVERT_PHYSICAL_TO_PFN Va   ) 
 

Value:

(((ULONG_PTR)(Va) < KSEG0_BASE) ? \ ((PFN_NUMBER)(((ULONG_PTR)(Va) - KSEG43_BASE) >> PAGE_SHIFT)) : \ ((PFN_NUMBER)(((ULONG_PTR)(Va) - KSEG0_BASE) >> PAGE_SHIFT)))

Definition at line 2209 of file axp64/mialpha.h.

#define MI_DETERMINE_OWNER PPTE   )     ((PMMPTE)(PPTE) <= MiHighestUserPte)
 

Definition at line 1298 of file axp64/mialpha.h.

#define MI_DISABLE_CACHING PTE   ) 
 

Definition at line 884 of file axp64/mialpha.h.

#define MI_ENABLE_CACHING PTE   ) 
 

Definition at line 858 of file axp64/mialpha.h.

#define MI_FLUSH_ENTIRE_SESSION_TB Invalid,
AllProcessors   )     KeFlushEntireTb (Invalid, AllProcessors);
 

Definition at line 2793 of file axp64/mialpha.h.

#define MI_FLUSH_SINGLE_SESSION_TB Virtual,
Invalid,
AllProcessors,
PtePointer,
PteValue,
PreviousPte   ) 
 

Value:

PreviousPte.u.Flush = *PtePointer; \ *PtePointer = PteValue; \ KeFlushEntireTb (TRUE, TRUE);

Definition at line 2764 of file axp64/mialpha.h.

#define MI_GET_ACCESSED_IN_PTE PPTE   )     0
 

Definition at line 1343 of file axp64/mialpha.h.

#define MI_GET_COLOR_FROM_SECONDARY SECONDARY_COLOR   )     (0)
 

Definition at line 1178 of file axp64/mialpha.h.

#define MI_GET_MODIFIED_PAGE_ANY_COLOR PAGE,
COLOR   ) 
 

Value:

{ \ if( MmTotalPagesForPagingFile == 0 ){ \ PAGE = MM_EMPTY_LIST; \ } else { \ while( MmModifiedPageListByColor[COLOR].Flink == MM_EMPTY_LIST ){ \ COLOR = MI_GET_NEXT_COLOR(COLOR); \ } \ PAGE = MmModifiedPageListByColor[COLOR].Flink; \ } \ }

Definition at line 1237 of file axp64/mialpha.h.

#define MI_GET_MODIFIED_PAGE_BY_COLOR PAGE,
COLOR   )     PAGE = MmModifiedPageListByColor[COLOR].Flink
 

Definition at line 1206 of file axp64/mialpha.h.

#define MI_GET_NEXT_COLOR COLOR   )     ((COLOR+1) & MM_COLOR_MASK)
 

Definition at line 1152 of file axp64/mialpha.h.

#define MI_GET_OWNER_IN_PTE PPTE   )     ((PPTE)->u.Hard.UserReadAccess)
 

Definition at line 1389 of file axp64/mialpha.h.

#define MI_GET_PAGE_COLOR_FROM_PTE PTEADDRESS   )     ((ULONG)((MmSystemPageColor++) & MmSecondaryColorMask))
 

Definition at line 1030 of file axp64/mialpha.h.

#define MI_GET_PAGE_COLOR_FROM_SESSION _SessionSpace   )     ((ULONG)((_SessionSpace->Color++) & MmSecondaryColorMask))
 

Definition at line 1079 of file axp64/mialpha.h.

#define MI_GET_PAGE_COLOR_FROM_VA ADDRESS   )     ((ULONG)((MmSystemPageColor++) & MmSecondaryColorMask))
 

Definition at line 1054 of file axp64/mialpha.h.

#define MI_GET_PAGE_FRAME_FROM_PTE PTE   )     ((PFN_NUMBER)(PTE)->u.Hard.PageFrameNumber)
 

Definition at line 2338 of file axp64/mialpha.h.

#define MI_GET_PAGE_FRAME_FROM_TRANSITION_PTE PTE   )     ((PFN_NUMBER)(PTE)->u.Trans.PageFrameNumber)
 

Definition at line 2339 of file axp64/mialpha.h.

#define MI_GET_PREVIOUS_COLOR COLOR   )     ((COLOR-1) & MM_COLOR_MASK)
 

Definition at line 1174 of file axp64/mialpha.h.

#define MI_GET_PROTECTION_FROM_SOFT_PTE PTE   )     ((ULONG)(PTE)->u.Soft.Protection)
 

Definition at line 2340 of file axp64/mialpha.h.

#define MI_GET_PROTECTION_FROM_TRANSITION_PTE PTE   )     ((ULONG)(PTE)->u.Trans.Protection)
 

Definition at line 2341 of file axp64/mialpha.h.

#define MI_GET_SECONDARY_COLOR PAGE,
PFN   )     ((ULONG)(PAGE & MmSecondaryColorMask))
 

Definition at line 1176 of file axp64/mialpha.h.

#define MI_GET_WORKING_SET_FROM_PTE PTE   )     (ULONG)(PTE)->u.Hard.SoftwareWsIndex
 

Definition at line 698 of file axp64/mialpha.h.

#define MI_INITIALIZE_HYPERSPACE_MAP HYPER_PAGE   ) 
 

Definition at line 1007 of file axp64/mialpha.h.

#define MI_IS_CACHING_DISABLED PPTE   )     FALSE
 

Definition at line 909 of file axp64/mialpha.h.

#define MI_IS_HYPER_SPACE_ADDRESS VA   )     ((PVOID)(VA) >= (PVOID)HYPER_SPACE && (PVOID)(VA) <= (PVOID)HYPER_SPACE_END)
 

Definition at line 2566 of file axp64/mialpha.h.

#define MI_IS_KERNEL_PAGE_TABLE_ADDRESS VA   )     ((PVOID)(VA) >= (PVOID)MiGetPteAddress(MmSystemRangeStart) && (PVOID)(VA) <= (PVOID)PDE_TOP)
 

Definition at line 2516 of file axp64/mialpha.h.

#define MI_IS_PAGE_DIRECTORY_ADDRESS VA   )     ((PVOID)(VA) >= (PVOID)PDE_UBASE && (PVOID)(VA) <= (PVOID)PDE_TOP)
 

Definition at line 2541 of file axp64/mialpha.h.

#define MI_IS_PAGE_TABLE_ADDRESS VA   )     ((PVOID)(VA) >= (PVOID)PTE_BASE && (PVOID)(VA) <= (PVOID)PDE_TOP)
 

Definition at line 2492 of file axp64/mialpha.h.

#define MI_IS_PFN_DELETED PPFN   )     ((((ULONG_PTR)(PPFN)->PteAddress) >> 63) == 0)
 

Definition at line 956 of file axp64/mialpha.h.

#define MI_IS_PHYSICAL_ADDRESS Va   ) 
 

Value:

((((ULONG_PTR)(Va) >= KSEG43_BASE) && ((ULONG_PTR)(Va) < KSEG43_LIMIT)) || \ (((ULONG_PTR)(Va) >= KSEG0_BASE) && ((ULONG_PTR)(Va) < KSEG2_BASE)))

Definition at line 2184 of file axp64/mialpha.h.

#define MI_IS_PROCESS_SPACE_ADDRESS VA   ) 
 

Value:

(((PVOID)(VA) <= (PVOID)MM_HIGHEST_USER_ADDRESS) || \ ((PVOID)(VA) >= (PVOID)PTE_BASE && (PVOID)(VA) <= (PVOID)HYPER_SPACE_END))

Definition at line 2592 of file axp64/mialpha.h.

#define MI_IS_PTE_DIRTY PTE   )     ((PTE).u.Hard.FaultOnWrite != MM_PTE_CLEAN)
 

Definition at line 786 of file axp64/mialpha.h.

#define MI_IS_PTE_PROTOTYPE PTE   )     ((PTE) > (PMMPTE)PDE_TOP)
 

Definition at line 2616 of file axp64/mialpha.h.

#define MI_IS_SYSTEM_CACHE_ADDRESS VA   ) 
 

Value:

(((PVOID)(VA) >= (PVOID)MmSystemCacheStart && \ (PVOID)(VA) <= (PVOID)MmSystemCacheEnd))

Definition at line 2640 of file axp64/mialpha.h.

#define MI_MAKE_PROTECT_WRITE_COPY PTE   ) 
 

Value:

if ((PTE).u.Long & 0x20) { \ ((PTE).u.Long |= 0x8); \ }

Definition at line 2049 of file axp64/mialpha.h.

#define MI_MAKE_TRANSITION_PTE OUTPTE,
PAGE,
PROTECT,
PPTE   ) 
 

Value:

(OUTPTE).u.Long = 0; \ (OUTPTE).u.Trans.PageFrameNumber = PAGE; \ (OUTPTE).u.Trans.Transition = 1; \ (OUTPTE).u.Trans.Protection = PROTECT;

Definition at line 603 of file axp64/mialpha.h.

#define MI_MAKE_TRANSITION_PTE_VALID OUTPTE,
PPTE   ) 
 

Value:

{ \ (OUTPTE).u.Long = MmProtectToPteMask[(PPTE)->u.Trans.Protection] | MM_PTE_VALID_MASK; \ (OUTPTE).u.Hard.PageFrameNumber = (PPTE)->u.Hard.PageFrameNumber; \ if (MI_DETERMINE_OWNER(PPTE)) { \ (OUTPTE).u.Long |= MM_PTE_OWNER_MASK; \ } \ if (((PMMPTE)PPTE) >= MiGetPteAddress(MM_SYSTEM_SPACE_START)) { \ (OUTPTE).u.Hard.Global = 1; \ } \ }

Definition at line 632 of file axp64/mialpha.h.

#define MI_MAKE_VALID_PTE OUTPTE,
FRAME,
PMASK,
PPTE   ) 
 

Value:

{ \ (OUTPTE).u.Long = MmProtectToPteMask[PMASK] | MM_PTE_VALID_MASK; \ (OUTPTE).u.Hard.PageFrameNumber = (FRAME); \ if (MI_DETERMINE_OWNER(PPTE)) { \ (OUTPTE).u.Long |= MM_PTE_OWNER_MASK; \ } \ if (((PMMPTE)PPTE) >= MiGetPteAddress(MM_SYSTEM_SPACE_START)) { \ (OUTPTE).u.Hard.Global = 1; \ } \ }

Definition at line 532 of file axp64/mialpha.h.

#define MI_MAKE_VALID_PTE_TRANSITION OUTPTE,
PROTECT   ) 
 

Value:

(OUTPTE).u.Soft.Transition = 1; \ (OUTPTE).u.Soft.Valid = 0; \ (OUTPTE).u.Soft.Prototype = 0; \ (OUTPTE).u.Soft.Protection = PROTECT;

Definition at line 567 of file axp64/mialpha.h.

#define MI_MAKE_VALID_PTE_WRITE_COPY PPTE   ) 
 

Value:

if ((PPTE)->u.Hard.Write == 1) { \ (PPTE)->u.Hard.CopyOnWrite = 1; \ (PPTE)->u.Hard.FaultOnWrite = MM_PTE_CLEAN;\ }

Definition at line 1271 of file axp64/mialpha.h.

#define MI_MAKING_MULTIPLE_PTES_INVALID SYSTEM_WIDE   ) 
 

Definition at line 2027 of file axp64/mialpha.h.

#define MI_MAKING_VALID_PTE_INVALID SYSTEM_WIDE   ) 
 

Definition at line 2004 of file axp64/mialpha.h.

#define MI_MAXIMUM_PTE_WORKING_SET_INDEX   (1 << _HARDWARE_PTE_WORKING_SET_BITS)
 

Definition at line 437 of file axp64/mialpha.h.

#define MI_NO_FAULT_FOUND TEMP,
PPTE,
VA,
PFNHELD   ) 
 

Value:

if (StoreInstruction && ((PPTE)->u.Hard.FaultOnWrite == MM_PTE_CLEAN)) { \ MiSetDirtyBit((VA),(PPTE), (PFNHELD)); \ } else { \ KiFlushSingleTb(1, VA); \ }

Definition at line 2117 of file axp64/mialpha.h.

#define MI_PAGE_COLOR_PTE_PROCESS PTE,
COLOR   )     ((ULONG)((*(COLOR))++) & MmSecondaryColorMask)
 

Definition at line 1104 of file axp64/mialpha.h.

#define MI_PAGE_COLOR_VA_PROCESS ADDRESS,
COLOR   )     ((ULONG)((*(COLOR))++) & MmSecondaryColorMask)
 

Definition at line 1129 of file axp64/mialpha.h.

#define MI_PTE_BASE_FOR_LOWEST_KERNEL_ADDRESS   (MiGetPteAddress (PTE_BASE))
 

Definition at line 139 of file axp64/mialpha.h.

#define MI_PTE_LOOKUP_NEEDED   ((ULONG64)0xffffffff)
 

Definition at line 2257 of file axp64/mialpha.h.

#define MI_SET_ACCESSED_IN_PTE PPTE,
ACCESSED   ) 
 

Definition at line 1321 of file axp64/mialpha.h.

#define MI_SET_GLOBAL_BIT_IF_SYSTEM OUTPTE,
PPTE   ) 
 

Definition at line 812 of file axp64/mialpha.h.

#define MI_SET_GLOBAL_STATE PTE,
STATE   )     (PTE).u.Hard.Global = STATE;
 

Definition at line 835 of file axp64/mialpha.h.

#define MI_SET_OWNER_IN_PTE PPTE,
OWNER   )     ((PPTE)->u.Hard.UserReadAccess = (PPTE)->u.Hard.UserWriteAccess = OWNER)
 

Definition at line 1366 of file axp64/mialpha.h.

#define MI_SET_PAGE_DIRTY PPTE,
VA,
PFNHELD   ) 
 

Value:

if ((PPTE)->u.Hard.FaultOnWrite == MM_PTE_CLEAN) { \ MiSetDirtyBit ((VA),(PPTE),(PFNHELD)); \ }

Definition at line 2082 of file axp64/mialpha.h.

#define MI_SET_PAGING_FILE_INFO OUTPTE,
PPTE,
FILEINFO,
OFFSET   ) 
 

Value:

(OUTPTE).u.Long = (PPTE).u.Long; \ (OUTPTE).u.Long &= CLEAR_FOR_PAGE_FILE; \ (OUTPTE).u.Long |= ((((FILEINFO) & 0xF) << 28) | \ (((ULONG64)(OFFSET) & 0xFFFFFFFF) << 32));

Definition at line 1428 of file axp64/mialpha.h.

#define MI_SET_PFN_DELETED PPFN   )     (((ULONG_PTR)(PPFN)->PteAddress) = ((((ULONG_PTR)(PPFN)->PteAddress) << 1) >> 1))
 

Definition at line 932 of file axp64/mialpha.h.

#define MI_SET_PTE_CLEAN PTE   )     (PTE).u.Hard.FaultOnWrite = MM_PTE_CLEAN
 

Definition at line 764 of file axp64/mialpha.h.

#define MI_SET_PTE_DIRTY PTE   )     (PTE).u.Hard.FaultOnWrite = MM_PTE_DIRTY
 

Definition at line 742 of file axp64/mialpha.h.

#define MI_SET_PTE_IN_WORKING_SET PTE,
WSINDEX   ) 
 

Value:

{ \ MMPTE _TempPte; \ _TempPte = *(PTE); \ _TempPte.u.Hard.SoftwareWsIndex = (WSINDEX); \ ASSERT (_TempPte.u.Long != 0); \ *(PTE) = _TempPte; \ }

Definition at line 670 of file axp64/mialpha.h.

#define MI_SET_PTE_WRITE_COMBINE PTE   ) 
 

Definition at line 720 of file axp64/mialpha.h.

#define MI_WRITE_INVALID_PTE _PointerPte,
_PteContents   )     (*(_PointerPte) = (_PteContents))
 

Definition at line 2411 of file axp64/mialpha.h.

#define MI_WRITE_VALID_PTE _PointerPte,
_PteContents   )     (*(_PointerPte) = (_PteContents))
 

Definition at line 2384 of file axp64/mialpha.h.

#define MI_WRITE_VALID_PTE_NEW_PROTECTION _PointerPte,
_PteContents   )     (*(_PointerPte) = (_PteContents))
 

Definition at line 2438 of file axp64/mialpha.h.

#define MiFillMemoryPte Destination,
Length,
Pattern   )     RtlFillMemoryUlonglong((Destination), (Length), (Pattern))
 

Definition at line 2468 of file axp64/mialpha.h.

#define MiGetPdeAddress va   )     MiGetPteAddress(MiGetPteAddress(va))
 

Definition at line 1615 of file axp64/mialpha.h.

#define MiGetPdeAddress64 va   )     MiGetPteAddress(MiGetPteAddress(va))
 

Definition at line 1618 of file axp64/mialpha.h.

#define MiGetPdeOffset va   )     ((ULONG)(((ULONG_PTR)(va) >> PDI2_SHIFT) & PDI_MASK))
 

Definition at line 1693 of file axp64/mialpha.h.

#define MiGetPpeAddress va   )     ((PMMPTE)PDE_TBASE + MiGetPpeOffset(va))
 

Definition at line 1590 of file axp64/mialpha.h.

#define MiGetPpeOffset va   )     ((ULONG)(((ULONG_PTR)(va) >> PDI1_SHIFT) & PDI_MASK))
 

Definition at line 1670 of file axp64/mialpha.h.

#define MiGetPpePdeOffset va   )     ((ULONG)((ULONG_PTR)(va) >> PDI2_SHIFT))
 

Definition at line 1719 of file axp64/mialpha.h.

#define MiGetPteAddress va   )     ((PMMPTE)(((((ULONG_PTR)(va) & MASK_43) >> PTI_SHIFT) << 3) + PTE_BASE))
 

Definition at line 1642 of file axp64/mialpha.h.

#define MiGetPteAddress64 va   )     ((PMMPTE)(((((ULONG_PTR)(va) & MASK_43) >> PTI_SHIFT) << 3) + PTE_BASE))
 

Definition at line 1645 of file axp64/mialpha.h.

#define MiGetPteOffset va   )     ((ULONG)(((ULONG_PTR)(va) >> PTI_SHIFT) & PDI_MASK))
 

Definition at line 1742 of file axp64/mialpha.h.

#define MiGetSubsectionAddress lpte   )     ((PSUBSECTION)((lpte)->u.Subsect.SubsectionAddress))
 

Definition at line 1539 of file axp64/mialpha.h.

#define MiGetSubsectionAddressForPte VA   )     ((ULONG_PTR)VA << 16)
 

Definition at line 1566 of file axp64/mialpha.h.

#define MiGetVirtualAddressMappedByPde Pde   )     MiGetVirtualAddressMappedByPte(MiGetVirtualAddressMappedByPte(Pde))
 

Definition at line 1789 of file axp64/mialpha.h.

#define MiGetVirtualAddressMappedByPpe PPE   )     MiGetVirtualAddressMappedByPte(MiGetVirtualAddressMappedByPde(PPE))
 

Definition at line 1765 of file axp64/mialpha.h.

#define MiGetVirtualAddressMappedByPte Pte   )     ((PVOID)((LONG_PTR)(((LONG_PTR)(Pte) - PTE_BASE) << (PAGE_SHIFT + VA_SHIFT - 3)) >> VA_SHIFT))
 

Definition at line 1813 of file axp64/mialpha.h.

#define MiGetVirtualAddressMappedByPte64 Pte   )     ((PVOID)((LONG_PTR)(((LONG_PTR)(Pte) - PTE_BASE64) << (PAGE_SHIFT + VA_SHIFT - 3)) >> VA_SHIFT))
 

Definition at line 1816 of file axp64/mialpha.h.

#define MiGetVirtualPageNumberMappedByPte64 Pte   )     ((PVOID)(((ULONG_PTR)(Pte) - PTE_BASE64) >> 3))
 

Definition at line 1819 of file axp64/mialpha.h.

#define MiIsPteOnPdeBoundary PTE   )     (((ULONG_PTR)(PTE) & (PAGE_SIZE - 1)) == 0)
 

Definition at line 1915 of file axp64/mialpha.h.

#define MiIsPteOnPpeBoundary PTE   )     (((ULONG_PTR)(PTE) & (MM_VA_MAPPED_BY_PDE - 1)) == 0)
 

Definition at line 1891 of file axp64/mialpha.h.

#define MiIsVirtualAddressOnPdeBoundary VA   )     (((ULONG_PTR)(VA) & PAGE_DIRECTORY2_MASK) == 0)
 

Definition at line 1867 of file axp64/mialpha.h.

#define MiIsVirtualAddressOnPpeBoundary VA   )     (((ULONG_PTR)(VA) & PAGE_DIRECTORY1_MASK) == 0)
 

Definition at line 1843 of file axp64/mialpha.h.

#define MiProtoAddressForKernelPte proto_va   )     MiProtoAddressForPte(proto_va)
 

Definition at line 1515 of file axp64/mialpha.h.

#define MiProtoAddressForPte proto_va   )     (((ULONG_PTR)proto_va << 16) | MM_PTE_PROTOTYPE_MASK)
 

Definition at line 1485 of file axp64/mialpha.h.

#define MiPteToProto lpte   )     ((PMMPTE)((lpte)->u.Proto.ProtoAddress))
 

Definition at line 1456 of file axp64/mialpha.h.

#define MM_COLOR_ALIGNMENT   (0)
 

Definition at line 343 of file axp64/mialpha.h.

#define MM_COLOR_MASK   (0)
 

Definition at line 337 of file axp64/mialpha.h.

#define MM_COLOR_MASK_VIRTUAL   (0)
 

Definition at line 349 of file axp64/mialpha.h.

#define MM_DEFAULT_SYSTEM_PTES   11000
 

Definition at line 211 of file axp64/mialpha.h.

#define MM_DEMAND_ZERO_WRITE_PTE   (MM_READWRITE << MM_PROTECT_FIELD_SHIFT)
 

Definition at line 455 of file axp64/mialpha.h.

#define MM_EMPTY_LIST   (-1)
 

Definition at line 136 of file axp64/mialpha.h.

#define MM_EMPTY_PTE_LIST   0xFFFFFFFFUI64
 

Definition at line 137 of file axp64/mialpha.h.

#define MM_KERNEL_DEMAND_ZERO_PTE   (MM_READWRITE << MM_PROTECT_FIELD_SHIFT)
 

Definition at line 461 of file axp64/mialpha.h.

#define MM_KERNEL_NOACCESS_PTE   (MM_NOACCESS << MM_PROTECT_FIELD_SHIFT)
 

Definition at line 467 of file axp64/mialpha.h.

#define MM_KSEG0_BASE   KSEG0_BASE
 

Definition at line 145 of file axp64/mialpha.h.

#define MM_LOWEST_NONPAGED_SYSTEM_START   ((PVOID)0xFFFFFF2800000000)
 

Definition at line 197 of file axp64/mialpha.h.

#define MM_MAX_ADDITIONAL_NONPAGED_POOL   (((SIZE_T)128 * 1024 * 1024 * 1024) - 16)
 

Definition at line 225 of file axp64/mialpha.h.

#define MM_MAX_DEFAULT_NONPAGED_POOL   ((SIZE_T)8 * 1024 * 1024 * 1024)
 

Definition at line 237 of file axp64/mialpha.h.

#define MM_MAX_INITIAL_NONPAGED_POOL   (96 * 1024 * 1024)
 

Definition at line 219 of file axp64/mialpha.h.

#define MM_MAX_PAGED_POOL   ((SIZE_T)128 * 1024 * 1024 * 1024)
 

Definition at line 231 of file axp64/mialpha.h.

#define MM_MAXIMUM_NUMBER_OF_COLORS   1
 

Definition at line 325 of file axp64/mialpha.h.

#define MM_MAXIMUM_SYSTEM_CACHE_SIZE   ((MM_SYSTEM_CACHE_END - MM_SYSTEM_CACHE_START) >> PAGE_SHIFT)
 

Definition at line 176 of file axp64/mialpha.h.

#define MM_MAXIMUM_SYSTEM_PTES   (16*1024*1024)
 

Definition at line 210 of file axp64/mialpha.h.

#define MM_MAXIMUM_WORKING_SET   ((((ULONG_PTR)4 * 1024 * 1024 * 1024 * 1024) - (64 * 1024 * 1024)) >> PAGE_SHIFT)
 

Definition at line 390 of file axp64/mialpha.h.

#define MM_MAXIMUM_ZERO_BITS   53
 

Definition at line 168 of file axp64/mialpha.h.

#define MM_MINIMUM_SYSTEM_PTES   5000
 

Definition at line 209 of file axp64/mialpha.h.

#define MM_NONPAGED_POOL_END   ((PVOID)(0xFFFFFF6800000000 - (16 * PAGE_SIZE)))
 

Definition at line 199 of file axp64/mialpha.h.

#define MM_NUMBER_OF_COLORS   (1)
 

Definition at line 331 of file axp64/mialpha.h.

#define MM_PAGED_POOL_START   ((PVOID)0xFFFFFF0800000000)
 

Definition at line 195 of file axp64/mialpha.h.

#define MM_PAGES_IN_KSEG0   (ULONG)(((KSEG2_BASE - KSEG0_BASE) >> PAGE_SHIFT))
 

Definition at line 165 of file axp64/mialpha.h.

#define MM_PROTECT_FIELD_SHIFT   3
 

Definition at line 431 of file axp64/mialpha.h.

#define MM_PROTO_PTE_ALIGNMENT   ((ULONG)MM_MAXIMUM_NUMBER_OF_COLORS * (ULONG)PAGE_SIZE)
 

Definition at line 287 of file axp64/mialpha.h.

#define MM_PTE_CACHE   0x0
 

Definition at line 429 of file axp64/mialpha.h.

#define MM_PTE_CLEAN   1
 

Definition at line 473 of file axp64/mialpha.h.

#define MM_PTE_COPY_ON_WRITE_MASK   0x20000
 

Definition at line 411 of file axp64/mialpha.h.

#define MM_PTE_DIRTY   0
 

Definition at line 474 of file axp64/mialpha.h.

#define MM_PTE_DIRTY_MASK   0x4
 

Definition at line 407 of file axp64/mialpha.h.

#define MM_PTE_EXECUTE   0x4
 

Definition at line 423 of file axp64/mialpha.h.

#define MM_PTE_EXECUTE_READ   0x4
 

Definition at line 424 of file axp64/mialpha.h.

#define MM_PTE_EXECUTE_READWRITE   (MM_PTE_WRITE_MASK)
 

Definition at line 425 of file axp64/mialpha.h.

#define MM_PTE_EXECUTE_WRITECOPY   (MM_PTE_WRITE_MASK | MM_PTE_COPY_ON_WRITE_MASK)
 

Definition at line 426 of file axp64/mialpha.h.

#define MM_PTE_GLOBAL_MASK   0x10
 

Definition at line 409 of file axp64/mialpha.h.

#define MM_PTE_GUARD   0x0
 

Definition at line 428 of file axp64/mialpha.h.

#define MM_PTE_NOACCESS   0x0
 

Definition at line 419 of file axp64/mialpha.h.

#define MM_PTE_NOCACHE   0x0
 

Definition at line 427 of file axp64/mialpha.h.

#define MM_PTE_OWNER_MASK   0x2200
 

Definition at line 412 of file axp64/mialpha.h.

#define MM_PTE_PROTOTYPE_MASK   0x2
 

Definition at line 406 of file axp64/mialpha.h.

#define MM_PTE_READONLY   0x4
 

Definition at line 420 of file axp64/mialpha.h.

#define MM_PTE_READWRITE   (MM_PTE_WRITE_MASK)
 

Definition at line 421 of file axp64/mialpha.h.

#define MM_PTE_TRANSITION_MASK   0x4
 

Definition at line 408 of file axp64/mialpha.h.

#define MM_PTE_VALID_MASK   0x1105
 

Definition at line 405 of file axp64/mialpha.h.

#define MM_PTE_WRITE_MASK   0x10000
 

Definition at line 410 of file axp64/mialpha.h.

#define MM_PTE_WRITECOPY   (MM_PTE_WRITE_MASK | MM_PTE_COPY_ON_WRITE_MASK)
 

Definition at line 422 of file axp64/mialpha.h.

#define MM_SECONDARY_COLORS_DEFAULT   ((1024 * 1024) >> PAGE_SHIFT)
 

Definition at line 355 of file axp64/mialpha.h.

#define MM_SECONDARY_COLORS_MAX   (2048)
 

Definition at line 359 of file axp64/mialpha.h.

#define MM_SECONDARY_COLORS_MIN   (2)
 

Definition at line 357 of file axp64/mialpha.h.

#define MM_SESSION_SPACE_DEFAULT   0xFFFFFE0400000000UI64
 

Definition at line 185 of file axp64/mialpha.h.

#define MM_STACK_ALIGNMENT   0x0
 

Definition at line 480 of file axp64/mialpha.h.

#define MM_STACK_OFFSET   0x0
 

Definition at line 481 of file axp64/mialpha.h.

#define MM_SYSTEM_CACHE_END   0xFFFFFF0800000000UI64
 

Definition at line 174 of file axp64/mialpha.h.

#define MM_SYSTEM_CACHE_START   0xFFFFFE0800000000UI64
 

Definition at line 172 of file axp64/mialpha.h.

#define MM_SYSTEM_CACHE_WORKING_SET   0xFFFFFE0600000000UI64
 

Definition at line 179 of file axp64/mialpha.h.

#define MM_SYSTEM_SPACE_END   0xFFFFFFFFFFFFFFFFUI64
 

Definition at line 203 of file axp64/mialpha.h.

#define MM_SYSTEM_SPACE_START   0xFFFFFE0600000000UI64
 

Definition at line 170 of file axp64/mialpha.h.

#define MM_SYSTEM_VIEW_SIZE   (48 * 1024 * 1024)
 

Definition at line 191 of file axp64/mialpha.h.

#define MM_SYSTEM_VIEW_SIZE_IF_HYDRA   MM_SYSTEM_VIEW_SIZE
 

Definition at line 193 of file axp64/mialpha.h.

#define MM_SYSTEM_VIEW_START   MM_SESSION_SPACE_DEFAULT
 

Definition at line 187 of file axp64/mialpha.h.

#define MM_SYSTEM_VIEW_START_IF_HYDRA   (KI_USER_SHARED_DATA - MM_SYSTEM_VIEW_SIZE)
 

Definition at line 189 of file axp64/mialpha.h.

#define MM_USER_ADDRESS_RANGE_LIMIT   0xFFFFFFFFFFFFFFFF
 

Definition at line 167 of file axp64/mialpha.h.

#define MM_USER_PAGE_TABLE_PAGES   1024
 

Definition at line 499 of file axp64/mialpha.h.

#define MM_VA_MAPPED_BY_PDE   (0x800000)
 

Definition at line 313 of file axp64/mialpha.h.

#define MM_VA_MAPPED_BY_PPE   (0x200000000UI64)
 

Definition at line 301 of file axp64/mialpha.h.

#define MM_VIRTUAL_PAGE_FILLER   (13 - 12)
 

Definition at line 283 of file axp64/mialpha.h.

#define MM_VIRTUAL_PAGE_SIZE   (43 - 13)
 

Definition at line 284 of file axp64/mialpha.h.

#define MM_WORKING_SET_END   0xFFFFFE0400000000UI64
 

Definition at line 395 of file axp64/mialpha.h.

#define MM_ZERO_KERNEL_PTE   0
 

Definition at line 449 of file axp64/mialpha.h.

#define MM_ZERO_PTE   0
 

Definition at line 443 of file axp64/mialpha.h.

#define NON_PAGED_SYSTEM_END   ((PVOID)0xFFFFFFFFFFFFFFF0)
 

Definition at line 201 of file axp64/mialpha.h.

#define NUMBER_OF_MAPPING_PTES   639
 

Definition at line 379 of file axp64/mialpha.h.

#define PAGE_DIRECTORY1_MASK   0x1FFFFFFFFUI64
 

Definition at line 310 of file axp64/mialpha.h.

#define PAGE_DIRECTORY2_MASK   0x7FFFFFUI64
 

Definition at line 311 of file axp64/mialpha.h.

Referenced by MiInitMachineDependent().

#define PAGE_PARENT_MASK   0x1FFFFFFFFUI64
 

Definition at line 299 of file axp64/mialpha.h.

#define PDE_KTBASE   PDE_TBASE
 

Definition at line 157 of file axp64/mialpha.h.

Referenced by MiBuildPagedPool(), MiInitMachineDependent(), and MmInitSystem().

#define PDE_PER_PAGE   1024
 

Definition at line 487 of file axp64/mialpha.h.

#define PDE_TOP   0xFFFFFE01FFFFFFFFUI64
 

Definition at line 163 of file axp64/mialpha.h.

#define PHYSICAL_ADDRESS_BITS   (48)
 

Definition at line 323 of file axp64/mialpha.h.

#define PTE_PER_PAGE   1024
 

Definition at line 488 of file axp64/mialpha.h.

#define PTE_PER_PAGE_BITS   11
 

Definition at line 489 of file axp64/mialpha.h.

#define PTE_SHIFT   (3)
 

Definition at line 317 of file axp64/mialpha.h.

#define WORKING_SET_LIST   ((PVOID)((ULONG_PTR)ZEROING_PAGE_PTE + PAGE_SIZE))
 

Definition at line 388 of file axp64/mialpha.h.

#define ZEROING_PAGE_PTE   ((PMMPTE)((ULONG_PTR)IMAGE_MAPPING_PTE + PAGE_SIZE))
 

Definition at line 386 of file axp64/mialpha.h.


Typedef Documentation

typedef struct _MMCOLOR_TABLES MMCOLOR_TABLES
 

typedef struct _MMPRIMARY_COLOR_TABLES MMPRIMARY_COLOR_TABLES
 

typedef struct _MMPTE MMPTE
 

typedef struct _MMPTE_LIST MMPTE_LIST
 

typedef struct _MMPTE_PROTOTYPE MMPTE_PROTOTYPE
 

typedef struct _MMPTE_SOFTWARE MMPTE_SOFTWARE
 

typedef struct _MMPTE_SUBSECTION MMPTE_SUBSECTION
 

typedef struct _MMPTE_TRANSITION MMPTE_TRANSITION
 

typedef struct _MMCOLOR_TABLES * PMMCOLOR_TABLES
 

typedef struct _MMPRIMARY_COLOR_TABLES * PMMPRIMARY_COLOR_TABLES
 

typedef struct _MMPTE * PMMPTE
 


Variable Documentation

PMMCOLOR_TABLES MmFreePagesByColor[2]
 

Definition at line 2253 of file axp64/mialpha.h.

ULONG MmSecondaryColorMask
 

Definition at line 365 of file axp64/mialpha.h.

ULONG MmTotalPagesForPagingFile
 

Definition at line 2255 of file axp64/mialpha.h.


Generated on Sat May 15 19:44:42 2004 for test by doxygen 1.3.7