Програмна грешка

от Уикипедия, свободната енциклопедия
Направо към: навигация, търсене

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

Видове програмни грешки[редактиране | edit source]

Има няколко вида програмни грешки - грешки при компилацията, грешки при изпълнението и бъгове. Всички те са предизвикани по вина на създателите на съответната програма, но понякога са следствие от факта, че някоя друга програма не работи както трябва.

Грешка при компилацията[редактиране | edit source]

Грешка при компилацията (compile error) представлява проблем, който възниква по време на превеждането на програмата от вид разбираем за човека във вид разбираем за компютъра. Такава грешка се дължи на неспазването на правилата на съответния език за програмиране.

Грешка при изпълнението[редактиране | edit source]

Грешка при изпълнението (английски - runtime error) представлява проблем, който е предизвикан от това, че програма се опитва да направи нещо забранено. Грешките при изпълнението водят до незабавното прекратяване на изпълнението на програмата.

Съществуват три вида грешки при изпълнение:

  • достъпване на забранена памет (segmentation fault)
  • невъзможност на процесора да изпълни определена операция - например опит за деление на 0 (division by zero)
  • недостиг на място в определено пространство от паметта (buffer overflow)

Бъг[редактиране | edit source]

Първият компютърен „бъг“, запазен в компютърен дневник

Бъг (на английски: bug - буболечка) в компютърния жаргон се разбира грешка по време на изпълнението на програмата. По същество бъгът представлява неочаквано поведение на програмата в определена ситуация. Повечето производители на софтуер се грижат за оправянето на подобни грешки. Понякога те предлагат специализирани системи, в които потребителите могат да съобщят за наличието на даден бъг. Процесът на отстраняване на грешките се нарича дебъгване.

Историята на термина се свързва с името на Грейс Хопър, американска програмистка, пионер в информатиката и контраадмирал. По време на работата с компютъра Mark II в Харвардския университет през 1947 г., нейни сътрудници открили молец в едно от релетата, който пречел на правилната му работа. Грейс Хопър нарекла операцията по отстраняване "debugging" (обезбуболечаване). Макар че авторството на термина бъг не е изцяло на Хопър, тя го прави популярен.[1] Останките на онзи молец могат да се видят в компютърния дневник на групата, който се пази в Смитсоновия институт, в Националния музей по американска история във Вашингтон [2]

Вижте също[редактиране | edit source]

Източници[редактиране | edit source]

  1. ((en)) Taylor, Alexander L., III. The Wizard Inside the Machine. // TIME. 1984-04-16. Посетен на 2007-02-17.
  2. ((en))  Log Book With Computer Bug. // National Museum of American History. Посетен на 2008-03-27.