Всю жизнь считал, что чисто аппаратные ресурсы, вроде линий (lanes) PCIe устройствам, распределяются еще на начальном этапе работы BIOS, а ОС может назначать лишь адреса/прерывания, с которыми она непосредственно работает. Но недавно в этом усомнился.
У меня в ноутбуке уже пару лет периодически случаются
зависания второго SSDАвтор: Евгений Музыченко
Дата: 16.11.22
, который стоит в разъеме PCIe1 (и BIOS, и винда почему-то всегда видят SSD в порядке PCIe2, PCIe1). После установки в PCIe1 SSD другой модели и замены переходника-разветвителя зависания продолжаются, так что проблема коренится где-то на пути между хабом и разъемом переходника.
Несколько раз замечал, что один или оба SSD, вместо стандартной конфигурации x4 по чтению/записи, вставали в x2 (второй чаще, первый всего один-два раза). Это навело на мысль, что могут быть нарушения прохождения сигналов в линиях данных PCIe, которые назначаются NVMe SSD.
Недавно попробовал поменять SSD местами, чтобы в перспективе работать только с более объемным 970 EVO, оставив его в разъеме PCIe2, а мелкий SM951 в разъеме PCI1 использовать лишь для временного хранения, или вообще убрать.
Пока возился с переносом системного раздела и загрузкой винды с нового места, несколько раз наблюдал зависание 970 EVO уже в разъеме PCIe2, а SM951 в разъеме PCIe1 продолжал нормально работать. То есть, ситуация поменялась на обратную.
Единственное, что изменилось после перестановки SSD — это загружаемая система. Обычно я работаю в Win 7, и SSD в разъеме PCIe1 виснет тоже под нею, а работы с перемещением/настройкой раздела я делал в Win 10 PE, которую загружал с HDD.
Пытаюсь найти объяснение этому феномену, но не могу.
Одно из предположений — под Win 10 PE создается другое соответствие логических и физических линий PCIe для работы с NVMe SSD, нежели под Win 7. Для чего это могло бы потребоваться, и как такое может проихсходить уже после начала работы с устройствами, я не совсем представляю, но и представления о работе PCIe у меня весьма поверхностные.
Еще есть предположение, что драйверы PCIe/NVMe в Win 10 PE выбирают немного другие режимы для SSD, отчего аппаратные нарушения (например, затухание/интерференция сигналов на линиях) чаще возникают на другой стороне. Но это тоже в порядке бреда.
Может ли внутренняя конфигурация хаба перестраиваться на этапе загрузки/инициализации ОС?
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Еще есть предположение, что драйверы PCIe/NVMe в Win 10 PE выбирают немного другие режимы для SSD, отчего аппаратные нарушения (например, затухание/интерференция сигналов на линиях) чаще возникают на другой стороне. Но это тоже в порядке бреда.
А там не может быть такого, что два устройства оказались на одной линии запроса прерывания, прерывание пришло одновременно от обоих, глючный драйвер, которому прерывание досталось первым, поблагодарил контроллер от имени обоих. Соответственно, второму прерывание не досталось?
Здравствуйте, Pzz, Вы писали:
Pzz>А там не может быть такого, что два устройства оказались на одной линии запроса прерывания, прерывание пришло одновременно от обоих, глючный драйвер, которому прерывание досталось первым, поблагодарил контроллер от имени обоих. Соответственно, второму прерывание не досталось?
На протяжении двух лет, в разных сочетаниях?