문제

저는 USB를 통한 이더넷(Linux, XP 및 Vista에서 호스팅)을 지원해야 하는 장치를 개발 중입니다.내가 아는 바로는 Vista와 Linux는 업계 표준 USB CDC를 지원합니다.그러나 고전적인 Windows 스타일에서 XP는 자체 원격 NDIS만 지원합니다.그래서 이제는 XP용 CDC 드라이버를 자체적으로 롤링하는 대신 RNDIS를 통해 수행할 생각입니다.

나는 XP조차도 NDIS에 꽤 버그가 있다는 오래된 문서를 읽었습니다(놀랐습니다!).XP의 RNDIS 드라이버에 대한 경험이 있는 사람이 있습니까?제품 개발에 안전한가요?어떤 통찰력이라도 대단히 감사하겠습니다.

도움이 되었습니까?

해결책 3

내 자신의 연구와 테스트를 수행한 결과 단일 NDIS 장치가 합리적으로 잘 작동했습니다.그러나 여러 NDIS 장치를 지원해야 한다면 운이 좋지 않습니다.내 시스템은 극도로 불안정해졌고 본질적으로 사용할 수 없게 되었습니다.이것은 매우 재현 가능했습니다.

나는 어떤 유형의 다중 장치 시나리오에서도 NDIS를 권장하지 않습니다.

다른 팁

우리는 직장에서 RNDIS를 사용합니다.그리고 나는 이것이 내 컴퓨터에 가끔씩(대략 한두 달에 한 번씩) 블루 스크린을 발생시키는 것을 발견했습니다.그러나 내 직장의 다른 사람들은 이런 일이 발생하지 않았으므로 내가 사용하는 특정 장치일 수 있습니다.

개발하기에 충분히 안정적이라고 생각하므로 한번 시도해 보세요.

여기서 문제는 Linux가 호스트 모드에서 RNDIS를 지원하지 않으며 MS RNDIS 라이센스 제한으로 인해 사용자 정의 드라이버를 개발할 수 없다는 것입니다.MAC도 같은 이유로(라이센스) RNDIS를 지원하지 않습니다.

따라서 다중 플랫폼 솔루션이 필요한 경우 CDC/ECM이라는 표준 접근 방식이 필요합니다.
시장에는 사용 가능한 CDC/ECM XP/VIsta 솔루션이 많이 있습니다. Google에서 해당 솔루션을 검색할 수 있습니다. 여기서는 솔루션을 광고하고 싶지 않습니다. :)

상용 솔루션을 찾고 있다면 Jungo는 Windows/Linux/Mac에서 작동하는 적절한 ECM 솔루션을 제공합니다.유일한 문제는 대량 생산 제품을 구매하려면 적지 않은 로열티 비용을 지불해야 한다는 것입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top