/dev/버스/USB/*/*Alpine Linux에 연결된 모든 USB 장치를 나열합니다. 예를 들어 전화번호는 다음과 같을 수 있습니다./dev/버스/usb/001/009. 전화가 다시 연결되면/dev/버스/usb/001/010, 즉 증가합니다.
내 질문은 1001 연결 후에는 어떻게 됩니까?
/dev/bus/usb/001/009
010
...
100
...
500
...
999
???
그럴까요????1000으로 가나요? 새 폴더를 만들까?003/dev/bus/usb/?
출력을 조작하는 것입니다.USB 장치그리고LSSB. 내 경우에는 Vendor 및 ProdID를 얻는 것이 드문 일이 아닙니다.
USB 케이블을 1000번 꽂고 뽑고 싶지 않아요!
답변1
제가 제대로 읽었다면https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/tree/drivers/usb/core/hub.c#n2030(라는 함수의 코드 choose_devnum
), 그보다 훨씬 일찍, 실제로 값 127에서 래핑된 다음 1로 반환될 수 있습니다.
/* Try to allocate the next devnum beginning at
* bus->devnum_next. */
devnum = find_next_zero_bit(bus->devmap.devicemap, 128,
bus->devnum_next);
if (devnum >= 128)
devnum = find_next_zero_bit(bus->devmap.devicemap,
128, 1);
bus->devnum_next = (devnum >= 127 ? 1 : devnum + 1);
나중에 속성은 128보다 작은 경우에만 bus->devnum
실제로 설정됩니다 .devnum