January 15th, 2017

Глюки винды.

Из серии "нарочно не придумаешь".

Месяца два назад попросили меня сделать копию DVD-диска. Сделал. Все нормально. Два дня назад те же люди попросили сделать копию другого диска. Вставляю диск в привод и ... опаньки... начинает воспроизводится запись того диска, который я делал два месяца назад. Ну, думаю, дело то житейское, могли и ошибиться и дали еще раз тот же диск. Особой проблемы вроде нет, подожду, когда принесут нужный диск.

Ну а сегодня я решил посмотреть свежекупленный свой диск. Да, да, во времена торрентов я иногда и диски покупаю. Вставляю диск в привод и ... опаньки... В этом случае житейская версия явно не прокатывала. Начал копать откуда что лезет... Выяснилось, что после копирования предыдущего диска все данные с него удалены не были, а зашхерились где-то во глубинах винды и по каким-то извивам логики, после каждого запуска привода на воспроизведение, вылезали из своей пещеры и начинали воспроизводиться вместо диска из привода. От так вот. Пришлось сей тихий мирный уголок зачищать от накопившейся излишней информации.

З.Ы. Вот не зря мы в свое время сформулировали дополнение к законам Мерфи: "Компьютер прекрасно помнит все ненужное, а нужное забывает сразу и навсегда".

Автоматика супротив человека.

После авиакатастрофы в Сочи с самолетом Ту-154Б-2 МО у конспиролухов пир духа. По-моему, единственные не высказанные гипотезы - влияние Нибуру, столкновение с НЛО и деятельность рептилоидов. Все остальное уже было. И вот среди всей этой галиматьи была высказана казалось бы здравая мысль - а почему бы на автоматику не возложить функцию контроля действий пилотов, дабы они, неразумные, не самоубились?

Давайте посмотрим насколько эта мысль действительно здравая.

Во-первых, идея не новая. Достаточно давно на самолетах стоят системы предупреждающие о приближении к опасным режимам полета. Это и тряска штурвала при достижении предельных углов атаки и речевое информирование. Однако, практика показывает, что трясущийся штурвал можно пересилить, а речевой информатор игнорировать или просто отключить вместе с системой предупреждения. А связано это с тем, что пилот субъективно, в состоянии стресса, считает, что опасной ситуации нет, и автоматика дает ложный сигнал об опасности. Так, например, было с пилотами разбившегося в Индонезии во время показательного полета RRJ-100. Они считали, что никакой горы впереди нет и быть не может, а автоматика дает ошибочное предупреждение. Итог, к сожалению, известен.

Но это системы предупреждения. А если не предупреждать, а просто не позволять пилоту совершить то или иное действие приводящее к опасной ситуации? И это тоже и было и есть. В основном на самолетах с ЭДСУ, где нет жесткой связи органов управления (штурвалы, ручки и т.д.) с исполнительными механизмами (приводы рулей и прочее). Работает это примерно так. Пилот воздействует на орган управления. Бортовой компьютер, учитывая параметры полета, по некоему алгоритму вычисляет управляющее воздействие на соответствующий исполнительный механизм. И может получится обратная ситуация - пилот пытаясь вывести самолет из опасного положения выходит на предельные режимы, а автоматика не дает ему это сделать и ... Хорошо, если есть возможность перейти к прямому управлению, а если нет? Кстати, именно по причине наличия экипажа на борту "Аполлона-11" при первой посадке на Луну не произошла катастрофа. Бортовой компьютер честно вел посадочный модуль на склон кратера. Армстронг взял управление на себя и посадил модуль дальше на ровную поверхность.

И вот мы плавно переходим от во-первых, к во-вторых. И это алгоритм и его реализация. Автоматика то она ведь не сама по себе, в неё заложена реализация алгоритма. Алгоритм создается человеком, реализует его тоже человек. И на обоих этапах можно ошибиться. Программисты ошибаются ничуть не меньше, чем остальное человечество. Практически к любой программе прилагается лог-файл, содержащий список изменений, последовательно внесенных в различные версии программы. И большинство изменений это не добавление новых возможностей, а именно исправление ошибок. Уже далеко не один космический аппарат потерян из-за ошибки в программе управления. Да и в авиации ошибки в софте отнюдь не редкость. Например, широко известен сбой в компьютерах самолета F-22 при пересечении линии изменения дат. Или переворот в полете Ан-148, когда компьютер посчитал правильным сигнал от некорректно работавшего датчика, а сигналы с нормально работающих датчиков проигнорировал.

И это все несмотря на многочисленное тестирование, верификацию и прочие проверки на всех этапах - от разработки логики, до реализации конкретного программного кода. И тем не менее, ошибки внесенные на различных этапах порой выявляются через несколько лет эксплуатации системы, когда наконец-то несколько факторов складываются и выясняется, что именно на этот случай заложено совершенно не верное действие.

Вот как-то так. Все очень неоднозначно. И без автоматизации плохо, и с автоматизацией тоже не все хорошо. Должен быть некий компромисс, когда автоматика должна помешать пилотам самоубиться, но и с другой стороны не мешать им вывести самолет из сложного пространственного положения путем выхода на предельные и запредельные режимы.