В Windows есть еще один вариант - конечно. Диспетчер устройств показывает все это, не совсем удобным способом, но это точно.
Скажем, вы хотите знать, какой диск подключен к какому контроллеру.
Выберите один из дисков в диспетчере устройств, щелкните правой кнопкой мыши, чтобы открыть окно свойств, и выберите вкладку «Сведения». Отсюда можно получить необходимую информацию. Поскольку диск подключен к контроллеру, у этого диска есть родитель, а этот родитель - ваш контроллер. В случае, если на контроллере размещено несколько дисков, другой диск является его Siblings. Чтобы узнать, к какому порту контроллера подключен диск, прочитайте свойство «Путь к экземпляру устройства».
Альтернативой является запуск в свойствах контроллера и получение информации для контроллеров «Дети». В зависимости от того, какие устройства действительно подключены, может быть указан один или несколько «детей». Каждый «Ребенок» представляет диск. В этом случае значение для контроллера «child» равно «Device Instance Path» диска.
Для получения закодированных названий производителей и устройств используйте сайт: http://www.pcidatabase.com/
Я не знаю о поставщике USB и списке устройств, кроме: http://listing.driveragent.com/usb/
С помощью этой техники я смог нарисовать карту дисков и контроллеров с сервера с 16 дисками и 4 контроллерами. Лучше всего карта соответствовала фактическим внутренним компонентам, и мы смогли точно определить и извлечь этот диск с минимальным временем простоя.
Надеюсь, это может кому-то помочь.