Программная ошибка

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

Большинство ошибок вызвано плохим программированием разработчика, но иногда они могут быть вызваны проблемами компилятора. При обнаружении ошибок люди отправляют разработчику отчеты об ошибках, чтобы рассказать о них и позволить им исправить их.

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

Некоторые ошибки безвредны, например, многие видеоигры неправильно позволяют объектам двигаться сквозь стены. Другие ошибки более серьезны, например, ошибка в навигационной системе, которая приводит к взрыву самолета.



Типы жучков

Переполнение буфера

Переполнение буфера происходит, когда программа записывает или считывает из области памяти, доступ к которой ей не разрешен.

Арифметическое переполнение

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

Бесконечный цикл

Бесконечный цикл происходит, когда программа попадает в цикл (серия инструкций, которая повторяется много раз), и выхода из цикла нет. Это может привести к зависанию программы.

Ошибки округления

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

Деление на ноль

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

Проблемы с вырезкой

В видеоиграх проблемы с обрезанием, также называемые проблемами обнаружения столкновений, возникают, когда объект проходит через барьер (например, стену, пол или потолок), через который он не должен был проходить. Это очень распространенная ошибка, встречающаяся во многих видеоиграх. Например, в игре Doom 2, когда раздавленный монстр воскрешается архи-злодеем. Проблемы с обрывом часто могут использоваться в качестве тактики экономии времени в ускоренных забегах, например, в Super Mario 64 можно пропустить подъем по винтовой лестнице в замке, прыгнув через потолок.

Ошибки в системе безопасности

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



Misbugs

Ошибка - это ошибка, которая была использована в качестве функции. Примером может служить ошибка в телефоне Android, которая позволяет пользователям получить root-доступ.



Ошибки аппаратного обеспечения

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



Вопросы и ответы

В: Что такое программная ошибка?


О: Программная ошибка - это проблема в коде компьютерной программы, которая приводит к ее неправильной работе.

В: Каковы последствия программной ошибки?


О: Программная ошибка может причинить неудобства пользователю и может привести к сбою или зависанию компьютера.

В: Все ли компьютерные программы имеют ошибки?


О: Да, большинство компьютерных программ имеют ошибки.

В: Что такое "глючная" программа?


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

В: Кто ответственен за большинство ошибок в компьютерных программах?


О: Большинство ошибок вызвано плохим программированием со стороны разработчика, но иногда они могут быть вызваны проблемами компилятора.

В: Что делают люди, обнаружив ошибку в компьютерной программе?


О: При обнаружении ошибок люди посылают отчеты об ошибках разработчику, чтобы сообщить ему об ошибке и дать возможность исправить ее.

В: Что люди имеют в виду, когда говорят, что в их компьютере есть ошибка?


О: Когда люди говорят, что их компьютер имеет ошибку, они обычно имеют в виду, что с ним что-то не так, что обычно вызвано компьютерным вирусом, который заразил их компьютер и заставляет его работать медленно или делать разные вещи.

AlegsaOnline.com - 2020 / 2023 - License CC3