Share via


NdisAllocateFromNPagedLookasideList 매크로(ndis.h)

NdisAllocateFromNPagedLookasideList 함수는 지정된 lookaside 목록 머리에서 첫 번째 항목을 제거합니다. lookaside 목록이 현재 비어 있으면 페이지가 없는 풀에서 항목이 할당됩니다.

구문

void NdisAllocateFromNPagedLookasideList(
   _L
);

매개 변수

_L

항목이 할당될 lookaside 목록의 헤드에 대한 포인터입니다. 호출자는 이미 를 사용하여 목록 헤드를 초기화했습니다. NdisInitializeNPagedLookasideList 함수입니다.

반환 값

없음

설명

lookaside 목록이 비어 있지 않으면 NdisAllocateFromNPagedLookasideList 는 목록에서 첫 번째 항목을 제거하고 해당 주소를 호출자에게 반환합니다. lookaside 목록이 비어 있으면 NdisAllocateFromNPagedLookasideList는 의 Allocate 매개 변수에 지정된 Allocate 함수를 호출합니다. NdisInitializeNPagedLookasideList 함수는 호출자가 목록 초기화에서 지정하거나(있는 경우) 호출자를 대신하여 항목을 할당합니다. NdisAllocateFromNPagedLookasideList는 호출자가 제공한 Allocate 함수가 있는 경우 또는 이 함수 자체가 페이지가 없는 항목을 할당할 수 없는 경우 NULL을 반환합니다.

페이지가 지정되지 않은 lookaside 목록에서 할당된 모든 항목은 고정 크기로, 드라이버가 원래 NdisInitializeNPagedLookasideList라고 할 때 지정되었습니다. 따라서 lookaside 목록은 동적 I/O 수요에 따라 상태를 유지 관리하는 고정 크기 블록을 할당해야 하는 드라이버에 특히 유용합니다. 예를 들어 연결 지향 NDIS 드라이버는 VC가 생성될 때 lookaside 목록에서 필요한 VC 컨텍스트 영역을 할당하고 이러한 각 항목을 lookaside 목록으로 다시 해제할 수 있습니다. NdisFreeToNPagedLookasideList 는 각 VC가 철거됨에 따라 작동합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista에서 NDIS 6.0 및 NDIS 5.1 드라이버(NdisAllocateFromNPagedLookasideList(NDIS 5.1) 참조)에 대해 지원됩니다. Windows XP에서 NDIS 5.1 드라이버(NdisAllocateFromNPagedLookasideList(NDIS 5.1) 참조)에 대해 지원됩니다.
대상 플랫폼 데스크톱
머리글 ndis.h(Ndis.h 포함)
IRQL <= DISPATCH_LEVEL
DDI 규정 준수 규칙 Irql_Miscellaneous_Function(ndis), NdisAllocateFromNPagedLookasideList(ndis), NdisAllocateFromNPagedLookasideList_InitFail(ndis)

추가 정보

NdisDeleteNPagedLookasideList NdisFreeToNPagedLookasideList NdisInitializeNPagedLookasideList