IOMMU_MAP_LOGICAL_RANGE_EX 콜백 함수(wdm.h)
실제 주소 공간을 IOMMU_DMA_DOMAIN 논리적 주소 공간에 매핑합니다.
구문
IOMMU_MAP_LOGICAL_RANGE_EX IommuMapLogicalRangeEx;
NTSTATUS IommuMapLogicalRangeEx(
[in] PIOMMU_DMA_DOMAIN Domain,
[in] ULONG Permissions,
[in] PIOMMU_MAP_PHYSICAL_ADDRESS PhysicalAddressToMap,
[in, optional] PIOMMU_DMA_LOGICAL_ADDRESS ExplicitLogicalAddress,
[in, optional] PIOMMU_DMA_LOGICAL_ADDRESS MinLogicalAddress,
[in, optional] PIOMMU_DMA_LOGICAL_ADDRESS MaxLogicalAddress,
[out] PIOMMU_DMA_LOGICAL_ADDRESS LogicalAddressOut
)
{...}
매개 변수
[in] Domain
매핑된 논리 주소가 속할 IOMMU_DMA_DOMAIN 대한 포인터입니다. 도메인은 DomainTypeTranslate 형식이어야 합니다. 도메인 유형에 대한 자세한 내용은 IOMMU_DMA_DOMAIN_TYPE.
[in] Permissions
매핑되는 범위에 대해 설정할 권한을 나타내는 비트 필드입니다. 사용 가능한 권한 비트는 비고를 참조하세요.
[in] PhysicalAddressToMap
도메인에 매핑될 IOMMU_MAP_PHYSICAL_ADDRESS .
[in, optional] ExplicitLogicalAddress
실제 주소를 매핑해야 하는 도메인 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드가 필요합니다. 명시적 논리 주소 할당을 지원하지 않는 등록된 논리 할당자를 사용하여 도메인을 만든 경우 이 필드는 NULL이어야 합니다.
[in, optional] MinLogicalAddress
물리적 주소를 매핑해야 하는 최소(포함) 허용 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드는 무시됩니다.
[in, optional] MaxLogicalAddress
실제 주소를 매핑해야 하는 최대(포함) 허용 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드는 무시됩니다.
[out] LogicalAddressOut
매핑에서 결과 논리 주소를 반환합니다.
반환 값
작업이 성공하면 STATUS_SUCCESS. 가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.
반환 코드 | 설명 |
---|---|
STATUS_INVALID_PARAMETER_1 | 제공된 도메인이 DomainTypeTranslate 형식이 아닙니다. |
STATUS_INVALID_PARAMETER_3 | 제공된 IOMMU_MAP_PHYSICAL_ADDRESS 페이지 정렬되고 크기가 PAGE_SIZE 배수인 실제 메모리를 나타내지 않습니다. |
STATUS_INVALID_PARAMETER_4 | 제공된 ExplicitLogicalAddress가 페이지 정렬되지 않았습니다. |
STATUS_INVALID_PARAMETER_MIX | 제공된 최소 및 최대 논리 주소를 충족할 수 없습니다. |
STATUS_IN_USE | ExplicitLogicalAddress는 이미 매핑되거나 부분적으로 매핑되어 있습니다. |
STATUS_NOT_SUPPORTED | 명시적 논리 주소 할당을 허용하지 않는 논리 할당자가 있는 도메인에 대해 ExplicitLogicalAddress가 제공되었습니다. 또는 논리 할당자가 없는 도메인에 대해 ExplicitLogicalAddress가 제공되지 않았습니다. |
자세한 내용은 NTSTATUS 값을 참조하세요.
설명
IOMMU_MAP_LOGICAL_RANGE_EX 만든 논리 주소의 매핑을 해제하려면 IOMMU_UNMAP_LOGICAL_RANGE 사용합니다. 현재 논리 주소 범위 맵 해제에 해당하는 Ex가 없습니다.
권한 필드는 매핑할 페이지에 대한 액세스 권한을 설명하는 비트 필드입니다.
비트는 다음과 같이 정의됩니다.
Bit 0 = Read Access
Bit 1 = Write Access
Bits 31-2 = Reserved (0)
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 서버 | Windows Server 2022 |
머리글 | wdm.h(Wdm.h 포함) |