Go Back   Armenian Knowledge Base > General Discussions > Fun

Reply
 
Thread Tools

TOP 10 of Bugs
Old 16.11.2005, 07:34   #1
Moderator
 
Gates's Avatar
 
Join Date: 02 2002
Location: Armenia
Age: 44
Posts: 5,226
Rep Power: 6
Thumbs up TOP 10 of Bugs

Самая первый компьютерный баг в истории был обнаружен в 1945 г., когда инженеры нашли в корпусе компьютера Harvard Mark II мотылька. Этот мотылек закорачивал контакты — и компьютер сбоил. Инженеры сделали запись в журнале событий "Первый случай обнаружения бага" (по-английски "bug" означает "насекомое"). С тех пор компьютерные сбои принято называть багами.

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

28 июля 1962 г. Космический аппарат Mariner I стартовал по направлению к Венере. Из-за поломки антенны корабль потерял связь с земными службами управлениями и перешел на собственную систему пилотирования. Но эта система содержала обидный маленький баг. В результате аппарат полетел совсем не в ту сторону и его пришлось подорвать над Атлантическим океаном. Последующее расследование установило, что в процессе программирования системы навигации была совершена маленькая опечатка — при вводе одной из формул был пропущен один символ.

1982 г. Авария на Транссибирском трубопроводе. Оперативники ЦРУ внедрили баг (отчет в формате PDF) в канадское программное обеспечение, управлявшее газовыми трубопроводами. Советская разведка получила это ПО как объект промышленного шпионажа и внедрила на Транссибирском трубопроводе. Результатом стал самый большой неядерный взрыв в истории человечества.

1985–87 гг. Несколько человек получили смертельную дозу облучения во время сеансов радиационной терапии с медицинским ускорителем Therac-25. Основанная на предыдущей версии ускорителя, "улучшенная" модель Therac-25 могла генерировать два вида излучения: слабое электронное бета-излучение и нормальное рентгеновское излучение. Еще одно "улучшение" состояло в том, что вместо электромеханической защиты пациента в устройстве была реализована программная защита, якобы более надежная. Обе новые функции были некорректно реализованы неопытным программистом, результатом чего стали как минимум пять смертей и огромное количество несмертельных случаев переоблучения.

1988 г. Переполнение буфера в Berkeley Unix. Первый в мире компьютерный червь (так называемый червь Морриса) заразил от 2.000 до 6.000 компьютеров менее чем за сутки, эксплуатируя уязвимость в реализации функции gets(). В ОС Berkeley Unix эта функция ввода/вывода не имела ограничения на максимальную длину.

1988–96 гг. Генератор случайных чисел Kerberos в течение нескольких лет широко использовался в различных системах шифрования. Предполагалось, что программа должна выбирать ключ случайным образом из многих миллиардов чисел, но генератор случайных чисел выбирал из гораздо меньшего набора численностью примерно в миллион. Как результат, в течение восьми лет любой пользователь мог без труда проникнуть в компьютерную систему, которая использовала модуль Kerberos.

15 января 1990 г. Падение телефонной сети AT&T. Ошибка в новой версии прошивки междугородних коммутаторов привела к тому, что коммутатор перезагружался, если получал специфический сигнал от соседнего коммутатора. Но беда в том, что этот сигнал генерировался в тот момент, когда коммутатор восстанавливал свою работу после сбоя. В один прекрасный день, когда какой-то коммутатор в Нью-Йорке перезагрузился, он подал тот самый злополучный сигнал — и началось. Вскоре 114 соседних коммутаторов непрерывно перезагружались каждые 6 секунд, а 60 тыс. человек остались без междугородней связи на 9 часов, пока инженеры не установили на коммутаторы предыдущую версию прошивки.

1993 г. Широко разрекламированный процессор Intel Pentium неправильно производил деление с плавающей запятой, ошибаясь на 0,006%. Хотя эта проблема реально коснулась немногих пользователей, но стала настоящим кошмаром для имиджа Intel. Поначалу фирма согласилась менять процессор только для тех пользователей, которые могли доказать, что им в вычислениях нужна подобная точность, но затем согласилась поменять процессор всем желающим. Этот баг стоил Intel около $475 млн.

1995–96 гг. Пинг смерти. Отсутствие проверки на ошибки при обработке IP-пакетов позволяла порушить практически любую операционную систему, отправив ей через интернет специальный пакет ("пинг").

4 июня 1996 г. Новая ракета-носитель Ariane 5, результат многолетней работы европейских ученых, гордость стран Евросоюза, взорвалась через 40 секунд после своего первого старта. Только научное оборудование на борту ракеты стоило около $500 млн, не говоря о множестве побочных финансовых последствий. Система автоподрыва ракеты сработала после остановки обоих процессоров в результате цепочки ошибок. Началом этой цепочки послужило переполнение буфера, поскольку система навигации подала недопустимо большое значение параметра горизонтальной скорости. Дело в том, что система управления Ariane 5 переделывалась из Ariane 4, а там такого большого значения не могло быть теоретически. В целях снижения нагрузки на рабочий компьютер инженеры сняли защиту от ошибок переполнения буфера в этом программном модуле, поскольку были уверены, что такого значения горизонтальной скорости не может быть в принципе — и просчитались.

Ноябрь 2000 г. Национальный институт рака, Панама. Здесь произошла целая серия инцидентов, вызванная тем, что ПО для планирования радиационной терапии производства американской компании Multidata Systems International неправильно рассчитывало дозы облучения для пациентов. Программа позволяла врачу нарисовать на компьютерном экране расположение защитных металлических щитов, которые защищают тело от радиации. Но программа позволяла манипулировать только четырьмя щитами, тогда как врачи хотели задействовать пять. Они нашли способ "обхитрить" программу, если нарисовать все пять щитов в виде единого блока с дыркой посередине. Единственное, чего они не знали, что программа рассчитывает разные дозы радиации в зависимости от того, как нарисована дырка. Если рисовать ее особым образом, то устройство выдавало двойную дозу радиации. Как минимум восемь человек погибли, а еще 20 получили переоблучение. Врачи, которые должны были вручную перепроверять расчеты программы, были осуждены за убийство.

Все эти примеры, а особенно последний, еще раз показывают, что никогда нельзя в полной мере доверять компьютерам. Ведь программы для компьютеров создают люди, а людям свойственно ошибаться

Old 17.11.2005, 00:37   #2
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Rep Power: 4
Default

Проблему с пнем помню - у меня как раз первый компьютер с пентиумом исправленной модели был - 1994г. P100MHz.
Впрочем, у Intel в каждом поколении не без урода.

Old 17.11.2005, 09:35   #3
Дошкольник
 
Join Date: 05 2004
Location: Armenia
Age: 43
Posts: 63
Rep Power: 0
Default

Quote:
Все эти примеры, а особенно последний, еще раз показывают, что никогда нельзя в полной мере доверять компьютерам. Ведь программы для компьютеров создают люди, а людям свойственно ошибаться
Вот когда я, нелюбимый иными QAE ощущаю гордость за свое существование))))))))))))

Old 17.11.2005, 15:13   #4
инсценирующи
 
[ Xelgen ]'s Avatar
 
Join Date: 07 2002
Location: Fireplace of Ecotopia
Age: 38
Posts: 4,327
Rep Power: 5
Default

Quote:
1995–96 гг. Пинг смерти. Отсутствие проверки на ошибки при обработке IP-пакетов позволяла порушить практически любую операционную систему( ), отправив ей через интернет специальный пакет ("пинг").
Win95/95OSR2/98 First Edition помню, но вот с практически любой ОС они помоему перегнули..

Old 17.11.2005, 15:20   #5
инсценирующи
 
[ Xelgen ]'s Avatar
 
Join Date: 07 2002
Location: Fireplace of Ecotopia
Age: 38
Posts: 4,327
Rep Power: 5
Default

Еще ходили легенды о перезапустившемся бортовом компутере F-16 Falcon во время полета над Мертвым Морем. На сей раз програмисты то ли не расчитали что высота над уровнем моря, может быть и отрицательной величиной, то ли произошло деление на ноль.

Old 17.11.2005, 15:27   #6
Banned
 
Bionika's Avatar
 
Join Date: 07 2004
Location: UGEE
Age: 68
Posts: 1,784
Rep Power: 0
Default

Quote:
Originally Posted by [ Xelgen ]
Еще ходили легенды о перезапустившемся бортовом компутере F-16 Falcon во время полета над Мертвым Морем. На сей раз програмисты то ли не расчитали что высота над уровнем моря, может быть и отрицательной величиной, то ли произошло деление на ноль.

Old 17.11.2005, 16:12   #7
инсценирующи
 
[ Xelgen ]'s Avatar
 
Join Date: 07 2002
Location: Fireplace of Ecotopia
Age: 38
Posts: 4,327
Rep Power: 5
Default

Ладно, еще из этой серии

Буратине дали 3 яблока. 2 он съел. Сколько яблок осталось у буратины?
Думаете одно? Нифига (мы вот тоже так долго думали). Оказываеться, ответа на этот вопрос нету, ведь никто не знает сколько яблок у него было до этого.
Мораль - обнуляйте переменные.

Old 17.11.2005, 20:28   #8
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Rep Power: 4
Default

Quote:
Originally Posted by [ Xelgen ]
Еще ходили легенды о перезапустившемся бортовом компутере F-16 Falcon во время полета над Мертвым Морем. На сей раз програмисты то ли не расчитали что высота над уровнем моря, может быть и отрицательной величиной, то ли произошло деление на ноль.
У них программисты - женщины?


Quote:
Originally Posted by [ Xelgen ]
ответа на этот вопрос нету
Вы сами же писали: "ведь никто не знает".
Ответ есть - не знаю...

Old 18.11.2005, 10:14   #9
...overwined...
 
noone's Avatar
 
Join Date: 03 2003
Location: ...tortuga...
Posts: 3,429
Rep Power: 5
Default

Quote:
Originally Posted by [ Xelgen ]
Win95/95OSR2/98 First Edition помню, но вот с практически любой ОС они помоему перегнули..
год посмотри...

Old 18.11.2005, 15:26   #10
Честный Кот
 
Reckon_'s Avatar
 
Join Date: 04 2004
Location: Yerevan
Age: 48
Posts: 1,844
Rep Power: 5
Talking

Quote:
Originally Posted by knightmare
У них программисты - женщины?




Вы сами же писали: "ведь никто не знает".
Ответ есть - не знаю...
В этом конкретном случае я не знаю - женщины ли программисты, но случай нахождения насекомого в реле компьютера Марк-2 и изобретение слова "дебаггинг" принадлежит именно женщине Грейс Хоппер - гарвардскому математику, работавшему с машиной Марк-2.

Old 18.11.2005, 20:09   #11
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Rep Power: 4
Default

Ну кто еще кроме женщин полезет чистить аппаратуру, когда программа глючит!

Old 18.11.2005, 22:14   #12
инсценирующи
 
[ Xelgen ]'s Avatar
 
Join Date: 07 2002
Location: Fireplace of Ecotopia
Age: 38
Posts: 4,327
Rep Power: 5
Default

knightmare> сударь что за сексизм?
не знаю где как, но в процентном соотношении я знаю столько же (если не больше) бездарных программеров-мужчин сколько и бездарных программеров женщин.
Про Аду Байрон думаю сами знаете

Old 18.11.2005, 23:33   #13
Какое небо, *, Багдад!
 
knightmare's Avatar
 
Join Date: 10 2005
Location: Ереван
Posts: 1,682
Rep Power: 4
Default

Сексизм? Зачем в крайности?

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

Ну а Ада Байрон - чистый PR - решили назвать язык в честь нее, первая тут, первая там, написала первую программу, при этом успев оказаться дочерью Байрона и т.д.

Old 23.11.2005, 13:46   #14
Дошкольник
 
Join Date: 05 2004
Location: Armenia
Age: 43
Posts: 63
Rep Power: 0
Default

Quote:
Женщина-программист - очень милое явление - зачастую обладает обширными знаниеми, но без возможности эффективно их использовать (из моих наблюдений). Понимание полное, отдачи - никакой...
Такое порой услышишь о не менее милых созданий, зовутся - примитивы
Reply




Реклама:
реклама

All times are GMT. The time now is 04:32.
Top

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.