미니포트 어댑터 상태 및 작업

관리하는 각 어댑터에 대해 NDIS 6.0 이상 미니포트 드라이버는 다음 작동 상태 집합을 지원해야 합니다.

중단
중지됨 상태는 모든 어댑터의 초기 상태입니다. 어댑터가 중지됨 상태인 경우 NDIS는 드라이버의 MiniportInitializeEx 함수를 호출하여 어댑터를 초기화할 수 있습니다.

종료
시스템 종료 상태에서는 시스템이 어댑터를 다시 사용하기 전에 시스템 종료 및 다시 시작이 발생해야 합니다.

초기화 중
초기화 상태에서 미니포트 드라이버는 어댑터를 초기화하는 데 필요한 모든 작업을 완료합니다.

일시 중지
일시 중지됨 상태에서 어댑터는 수신된 네트워크 데이터를 나타내거나 보내기 요청을 수락하지 않습니다.

다시 시작
다시 시작 상태에서 미니포트 드라이버는 어댑터에 대한 송신 및 수신 작업을 다시 시작하는 데 필요한 모든 작업을 완료합니다.

실행 중
실행 중 상태에서 미니포트 드라이버는 어댑터에 대한 송신 및 수신 처리를 수행합니다.

일시 중지
일시 중지 상태에서 미니포트 드라이버는 어댑터에 대한 송신 및 수신 작업을 중지하는 데 필요한 모든 작업을 완료합니다.

다음 표에서 제목은 어댑터 상태입니다. 주 이벤트는 첫 번째 열에 나열됩니다. 테이블의 나머지 항목은 이벤트가 상태 내에서 발생한 후 어댑터가 들어오는 다음 상태를 지정합니다. 빈 항목은 잘못된 이벤트/상태 조합을 나타냅니다.

이벤트 \ 상태 중단 종료 초기화 중 일시 중지됨 다시 시작 실행 중 일시 중지

MiniportInitializeEx

초기화 중

초기화가 완료되었습니다.

일시 중지됨

MiniportShutdownEx

종료

종료

종료

종료

MiniportHaltEx

중단

MiniportRestart

다시 시작

다시 시작이 완료되었습니다.

실행 중

MiniportPause

일시 중지

일시 중지가 완료되었습니다.

일시 중지됨

초기화 실패

중단

다시 시작 실패

일시 중지됨

보내기 및 받기 작업

실행 중

일시 중지

OID 요청

일시 중지됨

다시 시작

실행 중

일시 중지

참고 앞의 표에 나열된 이벤트는 NDIS 6.0 이상 어댑터의 기본 이벤트입니다.

참고 초기화 작업은 미니포트 어댑터 작동 상태에 영향을 주지 않습니다. 다시 설정 작업이 진행되는 동안 어댑터의 상태가 변경될 수 있습니다. 예를 들어 NDIS는 초기화 작업이 진행 중인 경우 드라이버의 일시 중지 처리기를 호출할 수 있습니다. 이 경우 드라이버는 각 작업에 대한 일반적인 요구 사항을 따르는 동안 모든 순서로 다시 설정 또는 일시 중지 작업을 완료할 수 있습니다. 재설정 작업의 경우 드라이버는 전송 요청 패킷에 실패하거나 큐에 대기 상태로 유지하고 나중에 완료할 수 있습니다. 그러나 전송 패킷이 보류 중인 동안에는 지나치게 많은 드라이버가 일시 중지 작업을 완료할 수 없다는 점에 유의해야 합니다.

기본 미니포트 드라이버 이벤트는 다음과 같이 정의됩니다.

MiniportInitializeEx
NDIS는 어댑터를 초기화하기 위해 드라이버의 MiniportInitializeEx 함수를 호출했습니다. 어댑터 초기화에 대한 자세한 내용은 미니포트 어댑터 초기화를 참조하세요.

초기화가 완료되었습니다.
MiniportInitializeEx가 성공적으로 반환되면 초기화 작업이 완료되고 어댑터가 일시 중지됨 상태입니다.

MiniportShutdownEx
NDIS는 어댑터를 종료하기 위해 드라이버의 MiniportShutdownEx 함수를 호출했습니다. 자세한 내용은 미니포트 어댑터 종료를 참조하세요.

MiniportHaltEx
NDIS는 어댑터를 중지하기 위해 드라이버의 MiniportHaltEx 함수를 호출했습니다. 자세한 내용은 미니포트 어댑터 중지를 참조하세요.

MiniportRestart
NDIS는 드라이버의 MiniportRestart 함수를 호출하여 일시 중지된 어댑터를 다시 시작합니다. 어댑터는 초기화 후 일시 중지됨 상태이므로 어댑터 초기화가 완료된 후 어댑터를 시작하는 데에도 이 이벤트가 필요합니다. 자세한 내용은 어댑터 시작을 참조하세요.

다시 시작이 완료되었습니다.
드라이버가 송신 및 수신 작업을 처리할 준비가 되면 다시 시작 작업이 완료되고 어댑터가 실행 중 상태입니다.

MiniportPause
NDIS는 어댑터를 일시 중지하기 위해 드라이버의 MiniportPause 함수를 호출했습니다. 자세한 내용은 어댑터 일시 중지를 참조하세요.

일시 중지가 완료되었습니다.
드라이버가 보내기 및 수신 작업을 중지하는 데 필요한 모든 작업을 완료한 후 일시 중지 작업이 완료되고 어댑터가 일시 중지됨 상태입니다.

참고 드라이버는 일시 중지 작업이 완료되기 전에 NDIS가 미해결 수신 표시를 모두 반환할 때까지 기다려야 합니다.

초기화 실패
NDIS가 드라이버의 MiniportInitializeEx 함수를 호출하고 초기화 시도가 실패하면 어댑터가 중지됨 상태로 돌아갑니다.

다시 시작 실패
NDIS가 드라이버의 MiniportRestart 함수를 호출하고 다시 시작 시도가 실패하면 어댑터는 일시 중지됨 상태로 유지됩니다.

보내기 및 받기 작업
드라이버는 실행 중 및 일시 중지 상태에서 송신 및 수신 작업을 처리해야 합니다. 보내기 및 받기 작업에 대한 자세한 내용은 Miniport 드라이버 보내기 및 받기 작업을 참조하세요.

OID 요청
드라이버는 실행 중, 다시 시작, 일시 중지 및 일시 중지 상태에서 OID 요청을 처리해야 합니다. OID 요청에 대한 자세한 내용은 어댑터에 대한 OID 요청을 참조하세요.

미니포트 어댑터 중지

미니포트 어댑터 초기화

미니포트 어댑터 종료

미니포트 드라이버 보내기 및 받기 작업

어댑터 일시 중지

어댑터 시작