Несколько дней назад, на форуме KolibriOS зарегистрировался англоязычный пользователь с ником mdickie, и пожаловался, что в его ноутбуке Dell Latitude C640 не работает мышь: board.kolibrios.org/viewtopic.php?f=4&t=2389. Так как недавно у нас появилась поддержка USB (в частности, USB-мышей), то наш основатель Mario_Z логично предположил, что mdickie использует какую-то старую версию, и посоветовал ему скачать последнюю ночную сборку и проверить на ней.
Предположение Mario_Z оказалось верным — в ночной сборке мышь заработала, но сломалось что-то другое:
It works with the latest build,
Thanks
EDIT: It freezes slower.
К сожалению, пользователь был немногословен (либо английский — не его родной язык), поэтому некоторое время мы выясняли, что же именно не так, задавая наводящие вопросы, пока картина не прояснилась:
I mean it needs a little more time to freeze the mouse.
Oh yes, the whole system freezes. The Keyboard and the clock aren't working.
Здесь уже я догадался, что причиной зависания, скорее всего, является драйвер SATA IDE, который в настоящий момент разрабатывает Mario_Z. На данный момент, в KolibriOS есть родной драйвер только для контроллера PATA, а поддержка контроллера SATA в режиме IDE осуществляется только через BIOS, что вносит 2 ограничения:
- Доступ к дискам через «костыль» BIOS очень медленный, поэтому фильм с такого диска в KolibriOS не посмотришь — будет идти рывками. Скорость копирования файлов тоже неприемлемая — можно пообедать, пока копируется большой файл.
- Некоторые диски без драйвера вообще никак не видны в системе.
Ввиду этого, на сегодняшний момент у нас пишутся 2 драйвера SATA (параллельно):
- Драйвер для контроллера SATA в режиме IDE от Mario_Z: board.kolibrios.org/viewtopic.php?f=1&t=2343
- Драйвер для контроллера SATA в режиме AHCI от Serge: board.kolibrios.org/viewtopic.php?f=31&t=2152
Оба драйвера имеют одну неприятную особенность — наглухо подвешивать систему в случае любой нештатной ситуации — и тогда требуются логи, чтобы увидеть конфигурацию дисков и попытаться узнать причину зависания. Именно это и произошло у mdickie, и поэтому я попросил его приложить логи. Естественно, при зависании всей системы скопировать логи прямо из KolibriOS в текстовый файл не получится, и в таких случаях мы просим сфотографировать лог с экрана монитора на смартфон или фотоаппарат, и выложить фото на нашем форуме. И здесь мы переходим ко второй части статьи.Читать полностью »