다양한 운영 체제에서 USB 전송의 최대 크기

기술 자료 번역 기술 자료 번역
기술 자료: 832430 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

요약

이 문서에서는 다양한 Microsoft Windows 운영 체제에서 USB 전송의 최대 크기에 대해 설명합니다.

Microsoft Windows 2000

Microsoft Windows 2000에서 USB 전송의 최대 크기는 USB 장치용으로 로드되는 장치 드라이버에서 결정됩니다. USB 전송의 최대 크기는 다음 방법 중 하나로 결정됩니다.
  • 장치 드라이버에서 URB_FUNCTION_SELECT_CONFIGURATION 함수를 통해 장치의 구성을 선택하는 경우
  • 장치 드라이버에서 URB_FUNCTION_SELECT_INTERFACE 함수를 통해 장치의 대체 인터페이스를 선택하는 경우
대부분의 경우 Windows 2000에서의 USB 전송에는 클라이언트 드라이버에서 정의되는 제한을 제외하고는 하드 코드된 크기 제한이 없습니다.

Microsoft Windows XP 및 Microsoft Windows Server 2003

Microsoft Windows XP와 Microsoft Windows Server 2003에서 USB 전송의 최대 크기는 USB 호스트 컨트롤러의 미니포트 드라이버나 USB 포트 드라이버(Usbport.sys)에서 결정됩니다. USB 전송의 최대 크기는 장치의 클라이언트 드라이버에서 정의되지 않습니다. USB 전송의 최대 크기보다 많이 사용하는 경우 전송 요청이 실패하거나 블루 스크린에 중지 오류가 나타날 수 있습니다.

Windows XP와 Windows Server 2003에서 Bulk Endpoint에 대한 전송의 최대 크기가 4KB보다 작거나 같으면 포트 드라이버에서 트랜잭션을 여러 전송으로 나눕니다. 이에 따라 이론적으로는 이러한 Endpoint에 대한 USB 전송의 최대 크기가 무제한이 됩니다. 그러나 Microsoft에서 매우 큰 전송을 테스트하지 않았으므로 매우 큰 전송은 권장되지 않습니다.

참고 Windows XP와 Windows Server 2003에서 USB 전송의 최대 크기는 현재 클라이언트 드라이버에 전파되지 않습니다. 이 동작은 이후의 Windows 버전에서 변경될 수 있습니다.

추가 정보

USB 전송의 최대 크기

Windows 2000

표 축소표 확대
전송 종류MaximumTransferSize보고되는 오류
Control Endpoint 04KBUSBD_STATUS_INVALID_PARAMETER
Control(기타 Endpoint)64KB결정되지 않음
Interrupt결정되지 않음없음
UHCI Bulk결정되지 않음없음
OHCI Bulk결정되지 않음(참고 참조)없음
Windows 2000에서의 전송에 대한 다음 사항에 유의하십시오.
  • 전체 속도 Isochronous Endpoint에서 URB(USB 요청 블록)당 255개 패킷 제한보다 많이 사용하는 경우 다음과 같은 오류 메시지가 나타날 수 있습니다.
    USBD_STATUS_INVALID_PARAMETER
  • 드라이버를 작성할 때 큰 전송을 사용하는 경우의 성능 및 리소스 절충점을 파악해야 합니다.
  • OHCI(Open Host Controller Interface) 드라이버에서 노출되는 리소스 제한 때문에 매우 큰 대량 전송이나 인터럽트 전송은 권장되지 않습니다.
  • 기본 Control Endpoint에서의 요청은 이전 드라이버 버전과의 호환성을 위해 4KB로 제한됩니다. USB 사양에서는 다른 제어 전송을 64KB로 제한합니다. 그러나 USB 드라이버 스택에서 Control Endpoint가 아닌 Endpoint에 대한 특정 제한은 없습니다. Control Endpoint가 아닌 Endpoint에서 64KB보다 큰 전송을 지정하는 경우의 결과는 정의되어 있지 않습니다.
  • URB_FUNCTION_SELECT_CONFIGURATION 함수를 사용하여 전송의 최대 크기를 설정할 때 Windows 2000에서 Composite 장치의 최대 전송 크기는 4KB입니다. 이 제한을 해결하려면 드라이버에서 URB_FUNCTION_SELECT_INTERFACE 함수를 사용해야 합니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    200977 PRB: USB Composite 장치에 대한 MaximumTransferSize를 설정할 수 없다

Windows XP 및 Windows Server 2003

다음 표는 실제 제한이 아니라 이론적 제한을 나타냅니다.

참고 매우 큰 전송은 권장되지 않습니다.
표 축소표 확대
전송 종류MaximumTransferSize보고되는 오류
Control Endpoint 04KBUSBD_STATUS_INVALID_PARAMETER
Control(기타 Endpoint)64KB오류 검사 0xFE
Interrupt무제한없음
UHCI Bulk무제한없음
OHCI Bulk256K오류 검사 0xFE
EHCI Bulk3344K 오류 검사 0xFE
최대 속도 Isochronous Endpoint는 URB당 255개 패킷으로 제한되고, 고속 Isochronous Endpoint는 URB당 1024개 패킷으로 제한됩니다. 이러한 제한보다 많이 사용하는 경우 다음과 같은 USBD 오류가 발생합니다.
USBD_STATUS_INVALID_PARAMETER




Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

속성

기술 자료: 832430 - 마지막 검토: 2008년 1월 29일 화요일 - 수정: 2.2
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Server
키워드:?
kbinfo KB832430

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com