Интернет магазин китайских планшетных компьютеров



Компьютеры - Therac-25 - Исправления

01 июля 2011


Оглавление:
1. Therac-25
2. Особенности конструкции
3. Несчастные случаи
4. Замеченные ошибки
5. Исправления



  1. Ошибки дозиметрии считаются фатальными, и после них система перезагружается.
  2. Добавлена программная ветвь, мгновенно перезапускающая систему, и независимая аппаратная цепь, которая делает то же.
  3. Исправлены все найденные ошибки; добавлена перестраховка.
  4. Непонятные сообщения об ошибках заменены осмысленными.
  5. Положение диска дополнительно считывается потенциометром и передаётся на пульт управления.
  6. Изменение положения диска и других частей аппарата теперь возможно только тогда, когда оператор удерживает специальную педаль.
  7. В режиме рентгеновской терапии отклоняющие магниты для электронной терапии устанавливаются в такую конфигурацию, что отклоняют пучок электронов на 270°.

Причины

Причины аварии были такие:

  • Излишняя надежда на программное обеспечение, из-за чего не было предусмотрено механических блокираторов.
  • Отсутствие перестраховки, из-за чего программа выводила не то, что есть на самом деле, и выполняла не то, что было введено.
  • Самонадеянность AECL. Реальная работа началась только тогда, когда были переоблучены несколько человек. Например, в Гамильтоне причиной неисправности считали микропереключатели, хотя инженеры не нашли неисправности и не смогли повторить ошибку.
  • Небезопасная манера программирования. В частности, в программном обеспечении было много «трюкачества», и программные модули практически не тестировались поодиночке. Следует заметить, что всё ПО было написано на ассемблере, хотя в данном случае более мудрым решением было бы использовать язык высокого уровня.
  • Повторное использование программного кода с Therac-6 и Therac-20. В Therac-6 вообще не было рентгеновской терапии, в Therac-20 применялся механический блокиратор. Безопасность — это черта всей системы, а не одного только программного обеспечения. Зачастую безопаснее переписать ПО и получить простую и прозрачную систему, чем использовать имеющийся код.
  • Излишняя «дружественность» пользовательского интерфейса. Разработчики пытались сделать машину настолько простой в использовании, насколько можно. Вообще-то, пользовательский интерфейс оставлял желать лучшего. Но всё-таки лучше заставить пользователя вводить информацию второй раз, чем надеяться, что он проверит все введённые значения.


Просмотров: 2291


<<< Mars Polar Lander
Авария ракеты-носителя Ариан 5 (4 июня 1996) >>>