|
|
Компьютеры - Therac-25 - Исправления01 июля 2011
Оглавление: 1. Therac-25 2. Особенности конструкции 3. Несчастные случаи 4. Замеченные ошибки 5. Исправления
- Ошибки дозиметрии считаются фатальными, и после них система перезагружается.
- Добавлена программная ветвь, мгновенно перезапускающая систему, и независимая аппаратная цепь, которая делает то же.
- Исправлены все найденные ошибки; добавлена перестраховка.
- Непонятные сообщения об ошибках заменены осмысленными.
- Положение диска дополнительно считывается потенциометром и передаётся на пульт управления.
- Изменение положения диска и других частей аппарата теперь возможно только тогда, когда оператор удерживает специальную педаль.
- В режиме рентгеновской терапии отклоняющие магниты для электронной терапии устанавливаются в такую конфигурацию, что отклоняют пучок электронов на 270°.
Причины
Причины аварии были такие:
- Излишняя надежда на программное обеспечение, из-за чего не было предусмотрено механических блокираторов.
- Отсутствие перестраховки, из-за чего программа выводила не то, что есть на самом деле, и выполняла не то, что было введено.
- Самонадеянность AECL. Реальная работа началась только тогда, когда были переоблучены несколько человек. Например, в Гамильтоне причиной неисправности считали микропереключатели, хотя инженеры не нашли неисправности и не смогли повторить ошибку.
- Небезопасная манера программирования. В частности, в программном обеспечении было много «трюкачества», и программные модули практически не тестировались поодиночке. Следует заметить, что всё ПО было написано на ассемблере, хотя в данном случае более мудрым решением было бы использовать язык высокого уровня.
- Повторное использование программного кода с Therac-6 и Therac-20. В Therac-6 вообще не было рентгеновской терапии, в Therac-20 применялся механический блокиратор. Безопасность это черта всей системы, а не одного только программного обеспечения. Зачастую безопаснее переписать ПО и получить простую и прозрачную систему, чем использовать имеющийся код.
- Излишняя «дружественность» пользовательского интерфейса. Разработчики пытались сделать машину настолько простой в использовании, насколько можно. Вообще-то, пользовательский интерфейс оставлял желать лучшего. Но всё-таки лучше заставить пользователя вводить информацию второй раз, чем надеяться, что он проверит все введённые значения.
Просмотров: 4172
|